Электронная коммерция для Яндекс.Метрики в Virtuemart

Опубликовано: 9 Ноябрь, 2018
Обновлено: 10 Ноябрь, 2018
Категория: Сервисы
Комментариев: 27

Яндекс Метрика позволяет собирать расширенные данные, относящиеся к электронной торговле. С их помощью можно более детально проанализировать поведение пользователей на сайте.

Фиксируются следующие действия:

  • просмотр карточки товара
  • добавление/удаление товара из корзины
  • покупка товара

Интегрировать электронную коммерцию для Метрики на сайт можно с помощью готовых плагинов. Это быстрый, но платный вариант. Цель статьи - показать как можно самостоятельно добавить отслеживание всех действий (кроме удаления товара из корзины).

Более подробно прочитать о работе технологии можно в документации от Яндекса.

Подключение счетчика Яндекс Метрики

Если Метрика на сайте уже подключена, то проверьте чтобы в коде был параметр

Если его нет, то нужно изменить настройки счетчика и заменить его код на сайте.

Код метрики должен быть подключен на всех страницах сайта. Если шаблон сайте сделан на фреймворке, то почти наверняка код можно добавить в настройках шаблона в админке. Код должен быть добавлен перед закрывающим тегом body.

Просмотр карточки товара

Для фиксации просмотра товара в шаблон /components/com_virtuemart/views/productdetails/tmpl/default.php в самый конец нужно добавить следующий код

Здесь и далее будут указаны стандартные пути до шаблонов. На вашем сайте данные шаблоны могут быть переопределены в папке /templates/имя_шаблона/html/com_virtuemart/. Если файл переопределен, то правки нужно вносить именно в переопределенный файл.

Чтобы правки сохранились после обновления virtuemart, все отредактированные шаблоны нужно переопределить в папке /templates/имя_шаблона/html/com_virtuemart/.

Добавление товара в корзину

Метод ниже подойдет, если при добавлении в корзину показывается всплывающее окно с информацией о товаре.

В конец файла /components/com_virtuemart/views/cart/tmpl/padded.php добавьте

Покупка товара

Для отслеживания покупки в шаблон /components/com_virtuemart/views/cart/tmpl/orderdone.php с благодарностью о заказе нужно добавить код

Просмотр отчета в Метрике

Данные в Метрике появляются не сразу, а в течение 3-5 минут. Просмотреть всю статистику можно в списке всех отчетов.

Сам отчет выглядит следующим образом

Если по прошествии 5 минут данные в Метрике не появились или возникли какие-то другие вопросы, то пишите в комментах, постараюсь со всем помочь.

27 комментариев

    JediG

    Круто! Надо будет попробовать. Думал об этом, но показалось слишком сложным.

      JediG

      Вроде все сделал по согласно описанному выше. Через какое-то время заработало. Товар в Корзину кладут, а вот Заказов в отчетах так и нет. Вероятно, что-то не так с
      /components/com_virtuemart/views/cart/tmpl/orderdone.php
      Но что не так не пойму. Скрипт добавил вот сюда:
      .../mi55.ru/docs/templates/t3_bs3_blank/html/com_virtuemart/views/cart/tmpl/orderdone.php

      Может это не тот orderdone.php?

        JediG

        будто выше обрезало путь
        шаблон mobillife

          admin

          admin

          На странице после покупки не формируется нужный код, поэтому данные не передаются.
          Пришлите архив с отредактированным файлом orderdone.php и попробуйте дополнительно добавить код в файл /components/com_virtuemart/views/cart/tmpl/order_done.php.

            JediG

            Архив отправил. Рекомендованное дополнение эффекта не дало.

            admin

            admin

            На admin@virtuemart.su ничего не пришло. Пожалуйста, продублируйте.

            JediG

            После того как мы с вами заставил работать коммерцию у меня из Метрики пропала цель "Заказ". Я ее как-то привязывал к кнопке "Подтвердить заказ" в Корзине. Только вот заметил сейчас.

            JediG

            В общем в файле /components/com_virtuemart/views/cart/tmpl/order_done.php
            ранее у меня был вот такой скрипт:

            Он четко прописывал цель в метрике. Я попробовал его вернуть на место. Цель не пишется и коммерция похоже с ним тоже дуркует. Хотя может не в этом дело. Надо бы понаблюдать. Может мои похождения Метрика исключает из отчета.

            admin

            admin

            Точно не скажу в чем проблема, нужно потестировать на реальных заказах.

    yrygvay

    В ваших шаблонах уже интегрированно?

      yrygvay

      разобобрался, нет, добавил в шаблон. Спасибо большое Владимир.

      admin

      admin

      В шаблонах этого нет, нужно добавлять.

    Владимир

    Здравствуйте, сделал все как написано, поменял счетчик на сайте, подождал более 15 минут, но отчет так и не появился

      admin

      admin

      Здравствуйте!

      Проблема еще актуальна?

        Владимир

        Больше часа прошло и все стало хорошо, уже пользуюсь, но не работает влкадка заказы

          admin

          admin

          В конце страницы с заказами показывается таблица с количеством покупок?
          В отчете с популярными товарами показывается количество купленных?

      yrygvay

      попробуйте через браузере где не режется реклама, я сам ждал пол дня когда пробовал откывать с блокировщиками и небыло данных в метрике.

    Алексей

    Возможна ситуация, когда заказ будет сделан, но страница благодарности не выведена. Например, оплата через Робокассу (или аналогичные сервисы): заказ отправили, перешли в Робокассу, оплатили, но к нам не вернулись.
    Как думаете, как в таких случаях отследить отправить в Метрику сигнал о заказе?
    Клик по кнопке отправить заказ - пожалуй, не лучший вариант, т.к. могу кликать с невалидными введёнными данными.

      admin

      admin

      Если нужно сделать быстро, то можно использовать готовый плагин, который отслеживает все события.

      Я плагином не пользовался, но думаю, что он отслеживает стандартные события virtuemart, полный список можно посмотреть здесь.

        Алексей

        Спасибо за наводку! Обязательно рассмотрю.

    KeshaK

    Подскажите, плиз, правильно ли добавил в карточку товара скрипт в самый конец /.../public_html/templates/..../html/com_virtuemart/productdetails
    Вставил после последнего div, првильно?

    KeshaK

    Извиняюсь, обрезало перед window.dataLayer два закрывающих div-a

      admin

      admin

      В комментариях html код не всегда корректно обрабатывается.
      Если к отчетах информация о товарах появилась, значит код вставлен правильно.
      Также можно протестировать код на ошибки, открыв консоль браузера и выполнив команду

      После этого должен быть показ объект в формате json с товарами.

    KeshaK

    Добавил для отслеживания покупок товара код по инструкции выше в
    .../public_html/templates/..../html/com_virtuemart/cart/order_done.php

    После Подтверждения заказа на странице с Благодарностью за покупку вылетает ошибка
    syntax error, unexpected '<', expecting end of file

    order_done.php выглядит так

    Где тут ошибка? Подскажите, плиз.

    KeshaK

    Извиняюсь, перед window.dataLayer = window.dataLayer
    обрезало код.
    Код в точности как по Вашей инструкции.

      admin

      admin

      При вставке кода в orderdone попробуйте удалить первый открывающий тег

      если не поможет, то пришлите отредактированный файл, который вызывает ошибку.

    KeshaK

    Покупки, в Отчетах электронной коммерции естественно не отслеживаются из-за этой ошибки. Остальное работает.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*
Для вставки кода заключите его в теги [php] [/php]
*

С 15-18 июня admin в отпуске.

Ответы на все вопросы и ссылки на товары будут присланы 19 июня.

Спасибо за понимание и хороших выходных.

×