К содержанию

Отправляем данные заказа в Google Analytics (PHP)

Добрый день.

Чаще всего данные в GA отправляются через JS. По опыту это не лучший вариант и ну совсем не удобный.
Поэтому, при поступлении новой заявки решено было сделать через Measurement Protocol. Полезная информация есть, например, здесь (за что ребятам спасибо).

Набросал простой класс и снабдил его подробными комментариями, думаю кому-то пригодиться.
Использовать можно где угодно: в своём сниппите или в плагине на событие «msOnCreateOrder».

Пример использования:
if(include_once($modx->getOption('core_path').'/ga.class.php')) {
        $GA = new GA($modx,$orderID);
        $GA->action();
}

Код: ga.class.php

Важно: у меня этот класс гораздо шире (особенности проекта), это усечённый вариант и я его особо не тестировал, но должен работать нормально.

UPD: Посмотрел на более свежую голову: исправил 1 ошибку + немного оптимизировал код. По ссылке — обновлённый файл.
Алексей Шумаев
Алексей Шумаев
31 августа 2017, 08:55
modx.pro
5 663
Поблагодарить автора Отправить деньги
Реклама

Комментарии: 15

Павел Гвоздь
Павел Гвоздь Эксперт
31 августа 2017, 12:23
Круто! И все же может лучше на гитхаб разместить класс?)
    Алексей Шумаев
    Алексей Шумаев Проверенный
    31 августа 2017, 12:32
    Надо бы )
    Самому смешно, но руки не доходят отладить гит.
    Кстати, можно же вообще компонент собрать и выложить бесплатно в макет.
    Может у кого есть время?
      Павел Гвоздь
      Павел Гвоздь Эксперт
      31 августа 2017, 12:35
      Займусь, если дадите добро.
        Алексей Шумаев
        Алексей Шумаев Проверенный
        31 августа 2017, 12:36
        Разумеется: добро.
          Павел Гвоздь
          Павел Гвоздь Эксперт
          31 августа 2017, 12:36
          Ок. В ближайшие дни будет пакет.
            Алексей Шумаев
            Алексей Шумаев Проверенный
            31 августа 2017, 12:45
            Отлично!
            Ну а кто-то, кому нечто особое нужно, заюзает класс дополнив его…
Воеводский Михаил
Воеводский Михаил Проверенный
31 августа 2017, 12:31
Или даже собрать небольшой свободный компонент.
    Алексей Шумаев
    Алексей Шумаев Проверенный
    31 августа 2017, 12:33
    Пока писал ответ на предыдущий коммент, появилось это предложение )
    Пётр Молчанов
    Пётр Молчанов Старожил
    11 сентября 2017, 11:23
    А я наоборот ушел от отправки данных с помощью php в сторону js. При js гугл сам подхватывает нужные данные текущей сессии пользователя и, что самое важное, текущий 100% корректный гугл-id пользователя
      Алексей Шумаев
      Алексей Шумаев Проверенный
      11 сентября 2017, 11:32
      Такой задачи не ставили, не могу сказать, насколько это важно.
      Если будут данные, отпишусь.
        Пётр Молчанов
        Пётр Молчанов Старожил
        11 сентября 2017, 11:43
        Ну как же, а отслеживание рекламных активностей (по источнику перехода, по utm-меткам), привлеченные средства по этим же активностям, пути пользователя до заказа, кол-во дней с первого посещения до заказа и т.п. Всё, что нужно для эффективного маркетинга
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    15