Joomla
Данная инструкция предназначена для CMS Joomla версии 4.1.4, модуль магазина - JoomShopping версии 5.0.4. При написании инструкции использована тема Cassiopeia.
Процесс установки трекинг-кодов для других модификаций и тем CMS Joomla может отличаться.
Основной трекинг-код системы
Данный трекинг-код необходимо установить так, чтобы он срабатывал на всех страницах сайта.
Для этого необходимо отредактировать файл index.php, который располагается в папке:
ВАШ_САЙТ/templates/ВАШ_ШАБЛОН/
В указанном файле, перед закрывающимся тегом </head>, вставьте следующий код:
<script type="text/javascript">
   var rrPartnerId = "PartnerId";       
   var rrApi = {}; 
   var rrApiOnReady = rrApiOnReady || [];
   rrApi.addToBasket = rrApi.order = rrApi.categoryView = rrApi.view = 
           rrApi.recomMouseDown = rrApi.recomAddToCart = function() {};
   (function(d) {
       var ref = d.getElementsByTagName('script')[0];
       var apiJs, apiJsId = 'rrApi-jssdk';
       if (d.getElementById(apiJsId)) return;
       apiJs = d.createElement('script');
       apiJs.id = apiJsId;
       apiJs.async = true;
       apiJs.src = "//cdn.retailrocket.ru/content/javascript/tracking.js";
       ref.parentNode.insertBefore(apiJs, ref);
   }(document));
</script>где "PartnerId" – идентификатор партнера в системе Retail Rocket.
Пример:
 
Трекинг-код просмотра карточки товара
Данный трекинг-код необходимо установить на страницах всех товаров.
Для этого необходимо отредактировать файл product_default.php, который располагается в папке:
ВАШ_САЙТ/components/com_jshopping/templates/default/product/.
В указанном файле найдите следующие строки:
include(dirname(__FILE__)."/load.js.php");
?>И вставьте после них следующий код:
<script type="text/javascript">     
    (window["rrApiOnReady"] = window["rrApiOnReady"] || []).push(function() {         
        try{ 
            rrApi.view(<?php echo $product->product_id; ?>); } catch(e) {}     
        }) 
</script>Пример:
 
ПримечаниеЕсли на сайте реализованы всплывающие окна для быстрого просмотра товара, то трекер rrApi.view() необходимо дополнительно установить в шаблон для этого окна (принцип установки аналогичен).
Трекинг-код просмотра товарной категории
Данный трекинг-код необходимо установить на всех страницах товарных категорий и подкатегорий.
Для этого необходимо отредактировать файл category_default.php, который располагается в папке:
ВАШ_САЙТ/components/com_jshopping/templates/default/category/.
В указанном файле найдите следующие строки:
print $this->_tmp_category_html_start;
?>И вставьте после них следующий код:
<script type="text/javascript">     
    (window["rrApiOnReady"] = window["rrApiOnReady"] || []).push(function() {         
        try { 
            rrApi.categoryView(<?php echo $this->category->category_id; ?>); } catch(e) {}     
        }) 
</script>Пример:
 
Трекинг-код добавления товаров в корзину
Для каждого товара, на кнопках добавления товаров в корзину необходимо установить трекер добавления в корзину.
Чтобы установить трекинг-код добавления товара в корзину на странице товара, откройте файл product_default.php, который располагается в папке:
ВАШ_САЙТ/components/com_jshopping/templates/default/product/
В указанном файле найдите элемент <input> со следующим атрибутом:
value="<?php print JText::_('JSHOP_ADD_TO_CART')?>"(поиск по шаблону можно включить, нажав на клавиатуре сочетание Ctrl+F), его полный код должен выглядеть примерно так:
<input type="submit" class="btn btn-success button btn-buy" value="<?php print JText::_('JSHOP_ADD_TO_CART')?>" onclick="jQuery('#to').val('cart');">В этот элемент добавьте атрибут:
onmousedown="try { rrApi.addToBasket(<?php echo $product->product_id; ?>) } catch(e) {}"Пример:
 
Для установки трекинг-кода добавления товаров в корзину на кнопки “Купить”, которые находятся на страницах листинга категорий, необходимо отредактировать файл product.php, который находится в папке:
ВАШ_САЙТ/components/com_jshopping/templates/default/list_products/.
В указанном файле найдите элемент <a> с классами btn и button_buy и добавьте в него атрибут:
onmousedown="try { rrApi.addToBasket(<?php echo $product->product_id; ?>) } catch(e) {}"Пример:
 
Примечание
- Если на сайте реализованы всплывающие окна для быстрого просмотра товаров, в которых есть кнопка для добавления в корзину, то трекер rrApi.addToBasket() необходимо дополнительно установить на кнопку в шаблоне для этого окна (принцип установки аналогичен).
- В шаблонах могут быть условия отображения карточки товара (если доступен, недоступен). В примере трекер добавления в корзину добавлен на кнопку при условии, что товар доступен для покупки.
Трекинг-код совершения транзакции
На финальной странице оформления заказа (на которой пользователю сообщают о том, что заказ сформирован, благодарят за покупку) необходимо установить трекинг-код совершения транзакции.
Для установки трекинг-кода вам необходимо сперва отредактировать файл CheckoutController.php, который находится в папке:
ВАШ_САЙТ/components/com_jshopping/Controller/
В указанном файле найдите строку:
function finish(){И вставьте после неё код:
$rrCart = \JSFactory::getModel('cart', 'Site'); $rrCart->load(); 
Далее, в этом же файле, найдите строку:
$view->set('text', $text);И вставьте после неё код:
$view->set('products', $rrCart->products); $view->set('order_id', $order_id); 
После этого в файле finish.php:
ВАШ_САЙТ/components/com_jshopping/templates/default/checkout
Найдите строки:
defined('_JEXEC') or die;
?>И вставьте после них следующий код:
<script type="text/javascript">
    (window["rrApiOnReady"] = window["rrApiOnReady"] || []).push(function() {
        rrApi.order({
            transaction: <?php echo $this->order_id; ?>,
            items: [ 
                <?php foreach( $this->products as $item ) { ?> {
                    id: <?php echo $item['product_id']; ?>,
                    qnt: <?php echo $item['quantity']; ?>,
                    price: <?php echo $item['price']; ?>},
                <?php } ?>
            ]
        });
    })
</script>Пример:
 
ПримечаниеУсли на сайте реализована форма “быстрого” заказа или заказа “в 1 клик”, то трекер rrApi.order() необходимо дополнительно вызывать при совершении заказов через данную форму.
Трекер сбора email
Для установки трекинг-кода сбора email на странице оформления заказа в файлах
ВАШСАЙТ/components/com_jshopping/templates/default/checkout/adress.php
ВАШСАЙТ/components/com_jshopping/templates/default/user/register.php
Найдите элементы <input> с атрибутами name="email" и id="email" и добавьте к ним атрибут
onblur="rrApi.setEmail(this.value)"Пример:
 
Трекинг-код сбора email можно “привязывать” к любым формам сайта, в которых пользователь может оставить свою электронную почту. Для этого к html элементу формы (например, к элементу <input>) необходимо добавить атрибут:
onblur="rrApi.setEmail(this.value)"
ВажноПередавайте e-mail только тех пользователей, кто явно разрешил отправлять им письма.
Updated 2 months ago