Перейти к содержанию

Рекомендуемые сообщения

Всем доброго дня.
Совсем недавно задавал вопросы по поводу настройки Google tag manager и отправки в analytics необходимой информации,(создавал в платных услугах)
Желающих помочь было (только 1 человек)
4 ночи за компьютером -  и пол дела сделано)
Теперь не могу вывести название главной категории товара для отправки в analytics
В категории - вывел категорию
В карточке товара  вывел категорию но только получилось вывести полный путь категорий  от начальной до последней ( категория=категория1)

  • Сейчас не могу вывести категорию товара на страницу успешного заказа.
  • Нужно вывести только сумму товаров для отправки - 
  • Не могу вывести код купона который применяли

Помогите кто чем может
Направьте пожалуйста по правильному пути?

Код страницы успешного заказа прилагается-
 

<?php echo $header; ?>


<div class="container">
  <ul class="breadcrumb">
    <?php foreach ($breadcrumbs as $breadcrumb) { ?>
    <li><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a></li>
    <?php } ?>
  </ul>
  <div class="row"><?php echo $column_left; ?>
    <?php if ($column_left && $column_right) { ?>
    <?php $class = 'col-sm-6'; ?>
    <?php } elseif ($column_left || $column_right) { ?>
    <?php $class = 'col-sm-9'; ?>
    <?php } else { ?>
    <?php $class = 'col-sm-12'; ?>
    <?php } ?>
    <div id="content" class="<?php echo $class; ?>"><?php echo $content_top; ?>
      <h1><?php echo $heading_title; ?></h1>
      <?php echo $text_message; ?>

<?php if (isset($order_id)) { ?>
<div id="print">
<div style="padding: 0px 0px 20px 0px;">
<?php echo $store_name; ?><br />
<?php echo $store_address; ?><br />
<?php echo $store_emal; ?><br />
<?php echo $store_tel; ?>
</div>
<table class="table table-bordered table-hover">
<thead>
<tr>
<td class="text-left" colspan="2"><?php echo $text_order_detail; ?></td>
</tr>
</thead>
<tbody>
<tr>
<td class="text-left" style="width: 50%;"><?php if ($invoice_no) { ?>
<b><?php echo $text_invoice_no; ?></b> <?php echo $invoice_no; ?><br />
<?php } ?>
<b><?php echo $text_order_id; ?></b> #<?php echo $order_id; ?><br />
<b><?php echo $text_date_added; ?></b> <?php echo $date_added; ?></td>
<td class="text-left"><?php if ($payment_method) { ?>
<b><?php echo $text_payment_method; ?></b> <?php echo $payment_method; ?><br />
<?php } ?>
<?php if ($shipping_method) { ?>
<b><?php echo $text_shipping_method; ?></b> <?php echo $shipping_method; ?>
<?php } ?></td>
</tr>
</tbody>
</table>
<table class="table table-bordered table-hover">
<thead>
<tr>
<td class="text-left" style="width: 50%;"><?php echo $text_payment_address; ?></td>
<?php if ($shipping_address) { ?>
<td class="text-left"><?php echo $text_shipping_address; ?></td>
<?php } ?>
</tr>
</thead>
<tbody>
<tr>
<td class="text-left"><?php echo $payment_address; ?></td>
<?php if ($shipping_address) { ?>
<td class="text-left"><?php echo $shipping_address; ?></td>
<?php } ?>
</tr>
</tbody>
</table>
<div class="table-responsive">
<table class="table table-bordered table-hover">
<thead>
<tr>
<td class="text-left"><?php echo $column_name; ?></td>
<td class="text-left"><?php echo $column_model; ?></td>
<td class="text-right"><?php echo $column_quantity; ?></td>
<td class="text-right"><?php echo $column_price; ?></td>
<td class="text-right"><?php echo $column_total; ?></td>
</tr>
</thead>
<tbody>
<?php foreach ($products as $product) { ?>
<tr>
<td class="text-left"><?php echo $product['name']; ?>
<?php foreach ($product['option'] as $option) { ?>
<br />
&nbsp;<small> - <?php echo $option['name']; ?>: <?php echo $option['value']; ?></small>
<?php } ?></td>
<td class="text-left"><?php echo $product['model']; ?></td>
<td class="text-right"><?php echo $product['quantity']; ?></td>
<td class="text-right"><?php echo $product['price']; ?></td>
<td class="text-right"><?php echo $product['total']; ?></td>
</tr>
<?php } ?>
<?php foreach ($vouchers as $voucher) { ?>
<tr>
<td class="text-left"><?php echo $voucher['description']; ?></td>
<td class="text-left"></td>
<td class="text-right">1</td>
<td class="text-right"><?php echo $voucher['amount']; ?></td>
<td class="text-right"><?php echo $voucher['amount']; ?></td>
</tr>
<?php } ?>
</tbody>
<tfoot>
<?php foreach ($totals as $total) { ?>
<tr>
<td colspan="3"></td>
<td class="text-right"><b><?php echo $total['title']; ?></b></td>
<td class="text-right"><?php echo $total['text']; ?></td>
</tr>
<?php } ?>
</tfoot>
</table>
</div>
<?php if ($comment) { ?>
<table class="table table-bordered table-hover">
<thead>
<tr>
<td class="text-left"><?php echo $text_comment; ?></td>
</tr>
</thead>
<tbody>
<tr>
<td class="text-left"><?php echo $comment; ?></td>
</tr>
</tbody>
</table>
<?php } ?>
<?php if ($histories) { ?>
<h3><?php echo $text_history; ?></h3>
<table class="table table-bordered table-hover">
<thead>
<tr>
<td class="text-left"><?php echo $column_date_added; ?></td>
<td class="text-left"><?php echo $column_status; ?></td>
<td class="text-left"><?php echo $column_comment; ?></td>
</tr>
</thead>
<tbody>
<?php foreach ($histories as $history) { ?>
<tr>
<td class="text-left"><?php echo $history['date_added']; ?></td>
<td class="text-left"><?php echo $history['status']; ?></td>
<td class="text-left"><?php echo $history['comment']; ?></td>
</tr>
<?php } ?>
</tbody>
</table>
  <!--Скрипт отправки данных в analytics-->
<?php if (isset($order_id)) { ?>      
<script>
window.dataLayer = window.dataLayer || [];
dataLayer.push({
'ecommerce': {
'currencyCode': 'RUB',
'purchase': {
'actionField': {
'id': '<?php echo $order_id; ?>',
'affiliation': '<?php echo $store_name; ?>',

'revenue': '<?php echo $total['text']; ?>', //Тут выводиться только общая сумма заказа

<?php foreach ($vouchers as $voucher) { ?>    //Тут думал что получиться но не получилось
'shipping': '<?php echo $voucher['amount']; ?>',
'coupon': '<?php echo $voucher['amount']; ?>'
<?php } ?>
},

'products': [<?php foreach ($products as $product) { ?>{  
'name': '<?php echo $product['name']; ?>',
'id': '<?php echo $product['product_id']; ?>',
'price': '<?php echo $product['price']; ?>',
'brand': '<?php echo $product['manufacturer']; ?>',
'category': ' ',
<?php foreach ($product['option'] as $option) { ?>
'variant': '<?php echo $option['value']; ?>',
<?php } ?>
'quantity': <?php echo $product['quantity']; ?>

},<?php } ?>
]

}
},
'event': 'gtm-ee-event',
'gtm-ee-event-category': 'Расширенная торговля',
'gtm-ee-event-action': 'Покупка',
'gtm-ee-event-non-interaction': 'False',
});
</script>
<?php } ?>
  <!--Скрипт отправки данных в analytics Конец-->
<?php } ?>
</div>
<?php } ?>

      
      <div class="buttons">
        <div class="pull-right"><a href="<?php echo $continue; ?>" class="btn btn-primary"><?php echo $button_continue; ?></a></div>
      </div>
      <?php echo $content_bottom; ?></div>
    <?php echo $column_right; ?></div>
</div>


			<?php if (isset($script_order)) { echo $script_order; } ?>
			<?php echo $footer; ?>
			

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вам нужно создать свою функцию в модели product, например getMainCategory($product_id)

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

public function getMainCategory($product_id) {
	$query = $this->db->query("SELECT DISTINCT * FROM " . DB_PREFIX . "product_to_category ptc LEFT JOIN " . DB_PREFIX . "category_description cd ON (ptc.category_id = cd.category_id) LEFT JOIN " . DB_PREFIX . "category_to_store c2s ON (ptc.category_id = c2s.category_id) WHERE ptc.product_id = '" . (int)$product_id . "' AND ptc.main_category = '1' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND c2s.store_id = '" . (int)$this->config->get('config_store_id') . "'");
	return $query->row;
}

что-нибудь вроде такого, где вместо * можно оставить только те данные, которые Вам нужны по главной категории и работать с полученным массивом. Если нужны какие-то доп поля кроме названия, вроде картинки- нужно в запрос подцепить еще и выборку из таблицы category, но для GA это не нужно.

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Похожий контент

    • От PandaRedteam
      1 200.00 руб
      Скачать/Купить дополнение


      Enchanced Ecommerce Google Analytics
      Зачем нужен этот модуль?
      Мы решили разработать нативную систему передачи показателей взаимодействия посетителей сайта в Google Analytics специально под CMS систему OpenCart и её форка – OcStore для упрощения внедрения аналитики продаж и способов их увеличения даже для ограниченного бюджета.
      Какие данные можно передавать в Google Analytics:
      Принадлежность товара к категории, откуда был совершен переход на страницу товара. Переход на продукт с внутренних рекламных блоков (Новинки, Хиты продаж, Рекомендованные товары, Поиск, Слайдер, Страницы производителей) Добавление или удаление конкретного товара из корзины. Данные о товаре: Имя; Производитель; SKU; Категория; Цена; Позиция (категория, рекомендованные, хиты продаж, новинки) Отслеживание переходов:
      С модулей (Новинки, Хиты продаж, Рекомендованные товары, Поиск, Слайдер, Страницы производителей) С категории Со страниц поиска Со страниц производителей С карточки товара (Сопутствующие продукты) Отслеживание добавления в корзину \ удаления из корзины
      С модулей (Новинки, Хиты продаж, Рекомендованные товары, Поиск, Слайдер, Страницы производителей) С категории Со страниц поиска Со страниц производителей С карточки товара (Сопутствующие продукты) Отслеживание оформления заказа через корзину \ заказа в 1 клик
      ID транзакции Доход Сумма налога Стоимость доставки Код купона (промокод) Код валюты Количество Модуль совместим с:
      OpenCart \ OcStore 2.0; 2.1; 2.2; 2.3;
      Также модуль полностью совместим с модулем Simple – быстрый заказ и регистрация
      Версия модуля для OpenCart 3.x – в процессе разработки.
      Как начать анализ эффективности продаж с нашим модулем:
      Завести аккаунт Google Analytics и получить код счетчика. Установить модуль через административную панель. Установить id счетчика Google Analytics в настройках магазина через админ панель. Произвести предварительную настройку в кабинете администратора на веб версии Google Analytics для получения данных Добавил PandaRedteam Добавлено 17.05.2018 Категория Модули Системные требования Сайт разработчика https://pandared.net Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart 2.3 ocStore 2.3 OpenCart.Pro, ocShop Opencart.pro 2.3  
    • От dekanew
      Всем привет!
      Нужна помощь в настройке Enhanced Ecommerce и Электронной коммерции Яндекс.
      На данный момент установлен GTM и настроены счётчики.
       
      Необходимо настроить параметры для передачи данных.
       
      У кого есть опыт, подскажите, пожалуйста, эффективное решение. Модули или ручная настройка.
       
      Готов рассмотреть платную помощь.
    • От ZibenUA
      450.00 руб
      Скачать/Купить дополнение


      Модуль оплаты eCommerce Connect
      Модуль добавляет возможность оплаты заказов через eCommerce Connect (https://ecommerce.upc.ua/)
      Установка модуля:
          Скопируйте содержимое папки upload через ftp в корень сайта
          Перейдите в раздел "Дополнения->Платежи" и включите модуль ECommerceConnect;

      Для добавления на сайт возможности оплаты заказов через eCommerce Connect необходимо заполнить "Заявка на регистрацию интернет-магазина" 
      (бланк брать в разделе Документация https://ecommerce.upc.ua/documentation.html) и отправить заполненную заявку по адресу ec@upc.ua.
      В случае успешной регистрации Вам будут предоставлены тестовые адрес шлюза, MerchantID, TerminalID, сертификат тестового шлюза, а также логин и пароль для входа в тестовый интерфейс торговца.
      Для начала работы с тестовым шлюзом нужно создать тестовый сертификат.
      Инструкция по созданию сертификата
      0. Заходим к каталог cert
      1. Правим файл config.dat
      2. запускаем run_me.bat с ключом MerchantId (7 цифр, возможно со временем станет 8)
      3. Получаем три файла (crt, pem, pub). Файл crt - это и есть сертификат торговца, который нужно отправить в техподдержку UPC.
      4. Файл pem - это и есть приватный ключ, который нужно вставить в админке модуля в поле Приватный ключ торговца
      5. В поле Сертификат шлюза нужно вставить сертификат тестового шлюза 
      Настройки модуля:
          MerchantID - Необходимо получить от техподдержки UPC при заключении договора (см. выше в инструкции)
          TerminalID - Необходимо получить от техподдержки UPC при заключении договора (см. выше в инструкции)
          URL шлюза ECommerce - Необходимо получить от техподдержки UPC при заключении договора (см. выше в инструкции)
          Приватный ключ торговца - вставляем содержимое pem-файла, полученного при создании сертификата (п.4)
          Сертификат шлюза - вставляем содержимое файла сертификата тестового шлюза
          Total - минимальная сумма заказа, при которой становится доступен этот метод оплаты
          Order Status - статус, который получит заказ в случае успешной оплаты (см. дополнительно про статусы в разделе Дополнительная информация)
      Еще одна настройка производится в интерфейсе торговца (адреса см. в разделе Дополнительная информация). Необходимо залогинится в интерфейс торговца, 
      зайти в раздел "Термінали", выбрать используемый номер терминала и в поле "Адреса URL для сповіщення торговця ( NOTIFY_URL )" прописать:
         https://mydomain.com/index.php?route=extension/payment/ecommerce_connect/notify
      (Замените mydomain.com на Ваш домен)
       
       
      Список поддерживаемых шаблонов:
          Проверено на четырех шаблонах (default, storeset, luxury и techstore) - работает. 
          В принципе использован стандартный шаблон оплаты, так что не должно конфликтовать и с другими шаблонами

      После настройки на тестовый шлюз и получения ответа от техподдержки UPC о том, что Ваш сертификат закачан в систему - производим тестовый заказ. 
      Для "оплаты" используем номера карточек, которые Вам будут также предоставлены техподдержкой UPC. Это тестовые номера карт, реальные деньги на них отсутствуют
      Убеждаемся что заказ оплатился (в админке OpenCart видим что заказу присвоился выбранный Вами статус). Также проверяем что в интерфейсе торговца в 
      разделе "Транзакції" появился этот заказ в статусе "000 / Транзакція завершена успішно"
      После этого техподдержка UPC подтвердит успешность прохождения транзакции и предоставит уже не тестовые, а реальные адрес шлюза, 
      MerchantID, TerminalID, сертификат шлюза, а также логин и пароль для входа в интерфейс торговца. И все настройки (создание сертификата и настройки модуля) 
      необходимо произвести еще раз. 
      Также от техподдержки прилитет еще и browser personal certificate - его устанавливаете на ПК, с которого будете заходить в Интерфейс торговца.
      На этом настройка модуля закончена.
       
      Дополнительная информация:
      1. На момент написания инструкции:
      адрес тестового интерфейса торговца был https://ecg.test.upc.ua/go/merchant/
      адрес тестового шлюза был https://ecg.test.upc.ua/ecgtest/enter
      адрес основного интерфейса торговца https://secure.upc.ua/go/merchant/
      адрес основного шлюза https://secure.upc.ua/go/enter
      2. Статус заказа после оплаты.
      Возможно я не совсем понял логику OpenCart, но среди доступных "из коробки" статусов заказа я не вижу статус "Оплачен". Хотя мне кажется 
      было бы разумным чтобы такой статус был. Если кто-то думает так же - в разделе Локализация -> Статусы заказов добавляем статус "Оплачен".
      Хотя можно использовать и любой другой удобный и понятный Вам статус заказа
      3. Оплата происходит в гривне - Данное ограничение действует для торговцев на уровне НБУ.
      Добавил ZibenUA Добавлено 23.05.2018 Категория Платежные системы Системные требования Сайт разработчика Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart 3.0
      2.3
      2.2
      2.1 ocStore 3.0
      2.3
      2.2
      2.1 OpenCart.Pro, ocShop  
    • От ZibenUA
      Модуль добавляет возможность оплаты заказов через eCommerce Connect (https://ecommerce.upc.ua/)
      Установка модуля:
          Скопируйте содержимое папки upload через ftp в корень сайта
          Перейдите в раздел "Дополнения->Платежи" и включите модуль ECommerceConnect;

      Для добавления на сайт возможности оплаты заказов через eCommerce Connect необходимо заполнить "Заявка на регистрацию интернет-магазина" 
      (бланк брать в разделе Документация https://ecommerce.upc.ua/documentation.html) и отправить заполненную заявку по адресу ec@upc.ua.
      В случае успешной регистрации Вам будут предоставлены тестовые адрес шлюза, MerchantID, TerminalID, сертификат тестового шлюза, а также логин и пароль для входа в тестовый интерфейс торговца.
      Для начала работы с тестовым шлюзом нужно создать тестовый сертификат.
      Инструкция по созданию сертификата
      0. Заходим к каталог cert
      1. Правим файл config.dat
      2. запускаем run_me.bat с ключом MerchantId (7 цифр, возможно со временем станет 8)
      3. Получаем три файла (crt, pem, pub). Файл crt - это и есть сертификат торговца, который нужно отправить в техподдержку UPC.
      4. Файл pem - это и есть приватный ключ, который нужно вставить в админке модуля в поле Приватный ключ торговца
      5. В поле Сертификат шлюза нужно вставить сертификат тестового шлюза 
      Настройки модуля:
          MerchantID - Необходимо получить от техподдержки UPC при заключении договора (см. выше в инструкции)
          TerminalID - Необходимо получить от техподдержки UPC при заключении договора (см. выше в инструкции)
          URL шлюза ECommerce - Необходимо получить от техподдержки UPC при заключении договора (см. выше в инструкции)
          Приватный ключ торговца - вставляем содержимое pem-файла, полученного при создании сертификата (п.4)
          Сертификат шлюза - вставляем содержимое файла сертификата тестового шлюза
          Total - минимальная сумма заказа, при которой становится доступен этот метод оплаты
          Order Status - статус, который получит заказ в случае успешной оплаты (см. дополнительно про статусы в разделе Дополнительная информация)
      Еще одна настройка производится в интерфейсе торговца (адреса см. в разделе Дополнительная информация). Необходимо залогинится в интерфейс торговца, 
      зайти в раздел "Термінали", выбрать используемый номер терминала и в поле "Адреса URL для сповіщення торговця ( NOTIFY_URL )" прописать:
         https://mydomain.com/index.php?route=extension/payment/ecommerce_connect/notify
      (Замените mydomain.com на Ваш домен)
       
       
      Список поддерживаемых шаблонов:
          Проверено на четырех шаблонах (default, storeset, luxury и techstore) - работает. 
          В принципе использован стандартный шаблон оплаты, так что не должно конфликтовать и с другими шаблонами

      После настройки на тестовый шлюз и получения ответа от техподдержки UPC о том, что Ваш сертификат закачан в систему - производим тестовый заказ. 
      Для "оплаты" используем номера карточек, которые Вам будут также предоставлены техподдержкой UPC. Это тестовые номера карт, реальные деньги на них отсутствуют
      Убеждаемся что заказ оплатился (в админке OpenCart видим что заказу присвоился выбранный Вами статус). Также проверяем что в интерфейсе торговца в 
      разделе "Транзакції" появился этот заказ в статусе "000 / Транзакція завершена успішно"
      После этого техподдержка UPC подтвердит успешность прохождения транзакции и предоставит уже не тестовые, а реальные адрес шлюза, 
      MerchantID, TerminalID, сертификат шлюза, а также логин и пароль для входа в интерфейс торговца. И все настройки (создание сертификата и настройки модуля) 
      необходимо произвести еще раз. 
      Также от техподдержки прилитет еще и browser personal certificate - его устанавливаете на ПК, с которого будете заходить в Интерфейс торговца.
      На этом настройка модуля закончена.
       
      Дополнительная информация:
      1. На момент написания инструкции:
      адрес тестового интерфейса торговца был https://ecg.test.upc.ua/go/merchant/
      адрес тестового шлюза был https://ecg.test.upc.ua/ecgtest/enter
      адрес основного интерфейса торговца https://secure.upc.ua/go/merchant/
      адрес основного шлюза https://secure.upc.ua/go/enter
      2. Статус заказа после оплаты.
      Возможно я не совсем понял логику OpenCart, но среди доступных "из коробки" статусов заказа я не вижу статус "Оплачен". Хотя мне кажется 
      было бы разумным чтобы такой статус был. Если кто-то думает так же - в разделе Локализация -> Статусы заказов добавляем статус "Оплачен".
      Хотя можно использовать и любой другой удобный и понятный Вам статус заказа
      3. Оплата происходит в гривне - Данное ограничение действует для торговцев на уровне НБУ.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.