Хорошо, давайте начнем
Я включил небольшой скрипт в свой шаблон «head» на всех страницах
<script type="text/javascript">
(function(i,s,o,g,r,a,m){i["GoogleAnalyticsObject"]=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,"script","https://www.google-analytics.com/analytics.js","ga");
ga("create", "' . $this->getTrackId() . '", "auto");
ga("require", "ec");
ga("send", "pageview");
</script>
и другие скрипты:
для просмотра сведений о продукте
<script type="text/javascript">
ga("ec:addProduct", { // Provide product details in a productFieldObject.
"id":"' . $post_id . '", // Product ID (string).
"name":"' . $title . '", // Product name (string).
"category":"' . $categories . '" // Product category (string).
});
ga("ec:setAction","click", { // click action.
"list":"' . $categories . '" // Product list (string).
});
ga("send", "pageview");
</script>
<script type="text/javascript">
ga("ec:addProduct", {
"id": "' . $post_id . '",
"name": "' . $title . '",
"category": "' . $categories . '"});
ga("ec:setAction", "detail");
ga("send", "pageview");
</script>
для покупки
<script type="text/javascript">
ga("ec:addProduct", {
"id": "'.$product_id_arr.'",
"name": "'.$name.'",
"variant": "'.$variant.'",
"price": "'.$subtotal.'",
"quantity": "'.$qty.'"});
ga("ec:setAction", "purchase", {
"id": "'.$trans.'"});
ga("send", "pageview");
</script>
и другие классические функции analytics.js
каждый код включает ga («отправить», «просмотр страницы»); линии, но из-за этого статистика просмотров страниц увеличивается в несколько раз и является некорректной. Без этой строки такие данные, как «покупка», перестают отправляться. Что я делаю?
Мне нужно, чтобы количество просмотров страниц было правильным, в то время как другие данные также должны быть отправлены, какие есть варианты?
Поскольку у вас есть «отправить» просмотр всех страниц в заголовке, вы можете сделать следующее: использовать «события» что касается прочего. Это предполагает, что информация о товаре и его покупка — это события, происходящие на одной странице.
Например, вместо отправки просмотра страницы с описанием товара, вы можете отправить событие:
ga('send', 'event', 'product', 'view-detail', 'PRODID000111');
для покупки:
ga('send', 'event', 'product', 'purchase', 'PRODID000111');
шаблон
ga('send', 'event', {EVENT CATEGORY}, {EVENT ACTION}, {EVENT LABEL});
Других решений пока нет …