Настройка электронной коммерции Яндекс Метрики для WooCommerce
Настраиваю передачу данных электронной коммерции из WooCommerce в Яндекс Метрику — от показа товара в каталоге до оформленной покупки.
Учитываю AJAX-корзину, изменение количества товаров, вариации, кастомные карточки, нестандартный checkout и собственную JavaScript-логику магазина.
Настройка выполняется под фактическую механику сайта, а не сводится к установке готового плагина.
Весь путь покупателя — от каталога до заказа
Электронная коммерция позволяет передавать в Метрику не только факт покупки, но и взаимодействия пользователя с товарами на разных этапах воронки.
Показы товаров — Impressions
Передача показов товаров в каталоге, категориях, результатах поиска, подборках и других товарных списках.
Это позволяет видеть не только переходы, но и какие товары фактически попадали в поле взаимодействия пользователя.
Клики по товарам — Click
Отслеживание переходов из каталога, рекомендаций, подборок и других списков в карточку конкретного товара.
Просмотр товара — Detail
Передача просмотра карточки товара с необходимыми данными о товаре.
Для вариативных товаров логика может учитывать выбранную вариацию и актуальные данные, которые отображаются пользователю.
Добавление в корзину — Add
Фиксируется добавление товара в корзину, в том числе через AJAX без перезагрузки страницы.
Также можно корректно учитывать увеличение количества уже добавленного товара.
Удаление из корзины — Remove
Передаётся удаление товара из корзины и уменьшение количества товара.
Это особенно важно для кастомных AJAX-корзин, где URL страницы вообще не меняется.
Покупка — Purchase
После успешного оформления заказа передаются данные покупки и состав заказа.
Событие связывается с фактически созданным заказом, а не просто с нажатием кнопки оформления.
В Метрику попадают не просто события, а данные товаров
Для каждого действия формируется информация, необходимая для анализа товаров, корзины и заказов. Конкретный набор параметров зависит от структуры магазина.
Идентификатор и название
Передаются ID или SKU товара, название и другие данные, позволяющие однозначно сопоставить событие с товаром WooCommerce.
Цена и количество
Учитываются актуальная стоимость товара и количество, с которым пользователь взаимодействует.
Категория и бренд
При наличии соответствующих данных можно передавать категории, бренды и другие параметры каталога, полезные для дальнейшего анализа.
Вариации
Для вариативных товаров можно учитывать конкретный выбранный вариант, его цену, артикул и другие отличающиеся характеристики.
Данные заказа
Для покупки передаются идентификатор заказа, состав покупки, стоимость и другие необходимые параметры электронной коммерции.
Отслеживаю реальные действия, даже если страница не перезагружается
В современном WooCommerce значительная часть действий может происходить асинхронно. Поэтому одной привязки аналитики к загрузкам страниц недостаточно.
AJAX add to cart
Добавление товара передаётся после успешного изменения корзины, даже если пользователь остаётся на той же странице.
Изменение количества
Увеличение количества можно учитывать как добавление, а уменьшение — как удаление соответствующего количества товара.
Удаление товара
Учитываются удаления из обычной корзины, mini-cart и других кастомных интерфейсов.
Динамические вариации
Если цена, артикул или другие данные меняются после выбора вариации, в аналитику можно передавать именно актуальное состояние товара.
Нестандартные механики
Кастомные кнопки покупки, быстрый заказ, собственная корзина и другие интерфейсы можно подключить к электронной коммерции отдельно.
Настройка под логику конкретного WooCommerce-магазина
Сначала смотрю, как устроены каталог, карточка товара, корзина и checkout, и только после этого определяю, где и в какой момент должны передаваться данные электронной коммерции.
События WooCommerce
По возможности аналитика встраивается в существующие события WooCommerce и логику самого магазина: добавление товара, изменение корзины, выбор вариации, оформление и создание заказа.
Это надёжнее, чем определять действия пользователя только по кликам на конкретные кнопки или изменениям DOM, которые могут измениться после обновления интерфейса.
DataLayer
Для каждого действия формируется объект с данными электронной коммерции и передаётся в контейнер, который использует Яндекс Метрика.
PHP и JavaScript
Данные товаров, вариаций, корзины и заказов получаются из WooCommerce на стороне PHP, а действия пользователя отслеживаются непосредственно в интерфейсе магазина.
Такой подход позволяет использовать фактические данные WooCommerce и не дублировать бизнес-логику магазина отдельно в JavaScript.
Доработка шаблонов при необходимости
Не все данные, необходимые аналитике, всегда доступны на странице в готовом виде. В таком случае может потребоваться доработка шаблонов WooCommerce или существующей темы.
Например, можно вывести в HTML или JavaScript идентификаторы товаров и вариаций, категории, бренды, цены и другие параметры, необходимые для корректной передачи событий.
AJAX-сценарии
Если корзина, mini-cart, вариации или другие элементы работают без перезагрузки страницы, передача данных привязывается к фактическому завершению соответствующего действия.
Например, событие добавления отправляется после успешного добавления товара в корзину, а не просто после клика по кнопке.
Кастомные события магазина
Если магазин использует собственные AJAX-endpoint, нестандартную корзину, быстрый заказ, конфигуратор или другую пользовательскую механику, события электронной коммерции можно встроить непосредственно в эту логику.
Дополнительные цели
При необходимости отдельно настраиваются цели для важных действий, которые не относятся напрямую к стандартным событиям электронной коммерции: отправка формы, переход к оплате, использование отдельных функций сайта и другие действия.
Самописная или готовая тема
Работаю как с кастомными темами WordPress, так и с существующими WooCommerce-магазинами на готовых темах и конструкторах.
Главное — определить реальные события интерфейса, доступные данные и точки, в которых информация должна передаваться в Метрику.
После внедрения проверяю передачу событий
Настройка не заканчивается добавлением JavaScript-кода. Проверяю, что действия действительно попадают в электронную коммерцию Метрики с корректными данными.
Проверка DataLayer
Проверяю структуру передаваемых объектов, тип события и данные товаров.
Проверка сценариев
Прохожу основные пользовательские действия: каталог → карточка → корзина → изменение количества → удаление → оформление заказа.
Проверка AJAX
Отдельно проверяются события, которые происходят без перезагрузки страницы.
Проверка покупки
Проверяю передачу идентификатора заказа, товаров, количества и стоимости после успешного оформления заказа.
Если стандартной интеграции недостаточно
Особенно актуально для магазинов с AJAX-интерфейсами, собственной темой, изменённой корзиной или checkout, нестандартными вариациями и другой кастомной логикой WooCommerce.
События отсутствуют
Покупки есть, но в отчётах электронной коммерции данные отсутствуют или передаются только частично.
AJAX не учитывается
Пользователь работает с корзиной без перезагрузки, а аналитика не фиксирует добавления, удаления или изменение количества.
Магазин доработан
Стандартные WooCommerce-шаблоны изменены, добавлены собственные механики, и готовое решение аналитики больше не соответствует фактическому интерфейсу.
Аналитика может быть частью комплексной разработки WooCommerce
Электронную коммерцию можно настроить как отдельную задачу или в рамках разработки и развития интернет-магазина: вместе с кастомной корзиной, checkout, доставкой и другими бизнес-сценариями.
Создание интернет-магазина на WooCommerce