о продвижении сайтов и улучшении конверсии

Артём В. Шкондин
(aka AiK)
оптимизатор
Skype: artyemvs

Отслеживаем транзакции в ShopXML спомощью Google Analytics

Для тех, кому лень искать мануалы :)

Транзакции в Гугле можно отследить двумя способами

1) По посещениям страницы Ok.html. Как настроить цель читать по ссылке

2) Информированием Гугля о том, что транзакция таки случилась. Вот об этом способе хочу рассказать чуть подробнее.

Во-первых, нужно сообщить гуглю, что сайт у нас коммерческий. Это делается в настройках профиля – E-Commerce Website  ставим гордое Yes.  Теперь нужно лезть в код файла /common/all_tail.php,  где очень удобное место для размещение кода аналитикс (можно размещать код и в начале страницы, но тогда при подтормаживании Гугль Аналитикс будет тормозить сайт, что не есть гуд).

Там у вас должен стоять такой код (дефолтный от аналитика):
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-777777-1");
pageTracker._trackPageview();
} catch(err) {}</script>

У меня же стоит такой:

<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-777777-1");
pageTracker._initData();
pageTracker._trackPageview();
<?if (isset($_REQUEST["result"])){$ordarray = split("\|",($_REQUEST["result"]));?>
pageTracker._addTrans(
"<?=$ordarray[0]?>",            // Order ID
"AiK Shop",                     // Affiliation
"<?=$ordarray[2]?>",            // Total
"0",                            // Tax
"<?=$ordarray[5]?>",            // Shipping
" ",                            // City
" ",                            // State
"USA"                           // Country
);
pageTracker._trackTrans();

<?}?>
} catch(err) {}</script>
Объясняю что делают выделенные строчки:

pageTracker._initData(); – инициализация кода аналитикса. Гооворят, что эта строчка устарела. Я же пользуюсь старым программерским правилом: работает – не трогай.

<?if (isset($_REQUEST["result"])){$ordarray = split(«\|»,($_REQUEST["result"]));?> - это уже кусок php кода. Суть такая: посетитель после осуществления транзакции попадает на URL вида OK_52156.html?result=52156|1|40.94|31.99|0|8.95|0|0|0|0

Вот кусок этой URL мы вытягиваем и складываем в массив $ordarray, который дальше используем в параметрах функции pageTracker._addTrans() , которая и сообщает гуглю все параметры транзакции. Комментарии в коде (после двух палок //  :) ) по-моему разжовывают их целиком и полностью.

После чего мы информируем Гугль, что мы тут не погулять вышли, а  хотим транзакцию лицезреть в отчёте при помощи строчки pageTracker._trackTrans()

Собственно и все премудрости, которые можно было самостоятельно извлечь из мануалов :)

6 Comments to Отслеживаем транзакции в ShopXML спомощью Google Analytics

  1. Roman
    11-02-2010 at 11:53 | Permalink

    Чтобы загруска скрипта аналитикса не тормозила сайт, можно перейти на асинхронный трекинг http://code.google.com/intl/ru/apis/analytics/docs/tracking/asyncTracking.html.

  2. Mega
    11-02-2010 at 17:22 | Permalink

    Артем, ну это же не серьезно! :) Так вы видите только общую сумму и все. Почему бы не распарсить $res в том же ok.php или через xml, и иметь полное представление от том, какие именно товары продались по конкретным кеям.