Таблица oc_marketing
Таблица oc_marketing используется для создания и управления маркетинговыми кампаниями в OpenCart. Она позволяет отслеживать эффективность рекламных акций, определять источники трафика и анализировать конверсию заказов по различным каналам привлечения клиентов.
Поля
| Поле | Тип данных | Описание |
|---|---|---|
marketing_id |
int |
Уникальный идентификатор маркетинговой кампании. Автоинкремент. |
name |
varchar(32) |
Название маркетинговой кампании (например, "Летняя распродажа", "Реклама в Google"). |
description |
text |
Описание кампании, её целей и особенностей. |
code |
varchar(64) |
Уникальный код кампании (UTM-метка). Этот код добавляется к URL для отслеживания переходов (например, ?utm_source=newsletter&utm_medium=email&utm_campaign=summer_sale).
|
clicks |
int |
Счетчик количества переходов по ссылке с кодом данной кампании. |
date_added |
datetime |
Дата и время создания записи о кампании. |
Как это работает
Администратор создает новую маркетинговую кампанию в админ-панели OpenCart (Маркетинг > Маркетинг). Система генерирует уникальный код (code) для отслеживания. Этот код используется в рекламных ссылках.
Когда пользователь переходит по ссылке с кодом кампании (например, https://example.com/?utm_campaign=summer_sale), система OpenCart ищет запись в таблице oc_marketing с соответствующим значением в поле code. При нахождении совпадения значение счетчика clicks увеличивается на 1.
Код кампании сохраняется в сессии пользователя. Если в течение этой сессии пользователь совершает заказ, значение marketing_id записывается в таблицу oc_order в поле marketing_id. Это позволяет связать заказ с конкретной маркетинговой кампанией и рассчитать её эффективность (конверсию).
В отчетах админ-панели (Отчеты > Маркетинг) можно увидеть общее количество переходов (clicks) по каждой кампании и количество заказов, которые были совершены после этих переходов. Это позволяет оценить ROI (возврат на инвестиции) для каждого рекламного канала.
Пример SQL-запроса
Получить статистику по всем кампаниям (количество кликов и количество заказов) можно следующим запросом:
SELECT
m.marketing_id,
m.name as campaign_name,
m.clicks,
COUNT(o.order_id) as orders_count
FROM oc_marketing m
LEFT JOIN oc_order o ON (m.marketing_id = o.marketing_id)
GROUP BY m.marketing_id
ORDER BY m.date_added DESC;
Смотрите также
-
таблицу
oc_order,
которая хранит полеmarketing_idдля связи с кампаниями -
таблицу
oc_customer,
которая хранит данные о клиентах -
таблицу
oc_customer_activity,
которая может содержать записи о переходах по кампаниям