kolek5520

Настройка ecommerce в google analytics

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

kolek5520    9

Сегодня нашел бесплатный модуль для настройки ecommerce в google analytics.

Установил через Ocmod, все заработало: транзакции передаются в analytics Номер, Наименование, модель, стоймость

Вот только со стоймость, какая то фигня: сделал заказ на 4400 р а он мне выдает 4 руб

<?xml version="1.0" encoding="utf-8"?>
<modification>
  <name>Integração com Google Analytics E-commerce.</name>
  <code>google-analytics-ecommerce</code>
  <version>1.0</version>
  <author>OpenCart Brasil</author>
  <link>http://www.opencartbrasil.com.br</link>
  <file path="catalog/model/checkout/order.php">
    <operation>
      <search>
	    <![CDATA[
	public function getOrder($order_id) {
		]]>
      </search>
      <add position="before">
        <![CDATA[
	public function getOrderGAC($order_id) {
		$order_query = $this->db->query("SELECT o.order_id, o.store_name, o.language_id, o.currency_code, o.currency_value, o.total FROM `" . DB_PREFIX . "order` o WHERE o.order_id = '" . (int)$order_id . "'");

		if ($order_query->num_rows) {
			$language_id = $order_query->row['language_id'];
			
			$order_product_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "order_product WHERE order_id = '" . (int)$order_id . "'");

			foreach ($order_product_query->rows as $product) {
				$option_data = '';

				$order_option_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "order_option WHERE order_id = '" . (int)$order_id . "' AND order_product_id = '" . (int)$product['order_product_id'] . "'");

				foreach ($order_option_query->rows as $option) {
					if ($option['type'] != 'file') {
						$option_data .= $option['name'] . ': ' . (utf8_strlen($option['value']) > 20 ? utf8_substr($option['value'], 0, 20) . '..' : $option['value']) . ' - ';
					}
				}

				$option_data = rtrim($option_data, ' - ');

				$category_data = '';

				$category_query = $this->db->query("SELECT cd.name FROM `" . DB_PREFIX . "product_to_category` pc INNER JOIN `" . DB_PREFIX . "category_description` cd ON pc.category_id = cd.category_id WHERE pc.product_id = '" . (int)$product['product_id'] . "' AND cd.language_id = '" . (int)$language_id . "'");

				$i = 0;
				foreach ($category_query->rows as $category) {
					$i++;
					if ($i <= 5) {
						$category_data .= $category['name'] . '/';
					}
				}

				$category_data = rtrim($category_data, '/');
				
				if ($option_data) {
					$name = utf8_substr($product['name'] . ' - ' . $option_data, 0, 80);
				} else {
					$name = utf8_substr($product['name'], 0, 80);
				}

				$products[] = array(
					'name'     => $name,
					'sku'      => $product['model'],
					'category' => $category_data,
					'price'    => $this->currency->format($product['price'] + ($this->config->get('config_tax') ? $product['tax'] : 0), false, $order_query->row['currency_value']),
					'quantity' => $product['quantity']
				);
			}

			return array(
				'order_id'      => $order_query->row['order_id'],
				'store_name'    => $order_query->row['store_name'],
				'products'      => $products,
				'total'         => $this->currency->format($order_query->row['total'], false, $order_query->row['currency_value']),
				'currency_code' => $order_query->row['currency_code']
			);
		} else {
			return false;
		}	
	}
		]]>
      </add>
    </operation>
  </file>

  <file path="catalog/controller/checkout/success.php">
    <operation>
      <search>
	    <![CDATA[
		if (isset($this->session->data['order_id'])) {
		]]>
      </search>
      <add position="before">
        <![CDATA[
		$data['gaTracking'] = '';

		if (isset($this->session->data['order_id'])) {
			$this->load->model('checkout/order');

			$orderInfo  = $this->model_checkout_order->getOrderGAC($this->session->data['order_id']);

			if ($orderInfo) {
				$data['gaTracking'] .= sprintf("ga('ecommerce:addTransaction', {'id': '%s', 'affiliation': '%s', 'revenue': '%s', 'currency': '%s'});",
													$orderInfo['order_id'],
													$orderInfo['store_name'],
													$orderInfo['total'],
													$orderInfo['currency_code']
													) . "\n";
				$data['gaTracking'] = rtrim($data['gaTracking'], '\n');
				foreach ($orderInfo['products'] as $product) {
					$data['gaTracking'] .= sprintf("ga('ecommerce:addItem', {'id': '%s', 'name': '%s', 'sku': '%s', 'category': '%s', 'price': '%s', 'quantity': '%s', 'currency': '%s'});",
														$orderInfo['order_id'],
														$product['name'],
														$product['sku'],
														$product['category'],
														$product['price'],
														$product['quantity'],
														$orderInfo['currency_code']
														) . "\n";
				}
			}
		}
		]]>
      </add>
    </operation>
  </file>

  <file path="catalog/view/theme/*/template/common/success.tpl">
    <operation>
      <search>
	    <![CDATA[
<?php echo $footer; ?>
		]]>
      </search>
      <add position="before">
        <![CDATA[
<?php
if(isset($gaTracking)) {
if($gaTracking) {
echo "<script>" . "\n";
echo "ga('require', 'ecommerce');" . "\n";
echo $gaTracking;
echo "ga('ecommerce:send');" . "\n";
echo "</script>" . "\n";
}
}
?>
		]]>
      </add>
    </operation>
  </file>
</modification>

 

Может, кто подскажет где могла закрасться ошибка?

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


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

Я не спец, но думаю проблема в валюте. Проверьте и убедитесь, что везде (в аналитике, админке) стоит только валюта "рубль".

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


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

Кстати, если подождать, то потом сумма норм подтягивается. У меня тоже сначало было меньше, но спустя время нормализовалось.

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


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

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

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

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

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

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

Войти

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

Войти


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

    • От wallnut
      Не индексируются страницы товаров, в Search Console, в просмотре страницы как Googlebot категории и все остальные страницы находятся, кроме страниц товаров, их он не находит
      В чем может быть проблема?
      Сайт: kraftsystem.com
    • От StasB
      У меня на сайте есть код яндекс метрики вот тут http://prntscr.com/gxt69t
      Нашел, что берется в heder.tpl он благодаря строке <?php echo $google_analytics; ?>
      вот скрин http://prntscr.com/gxt6rd 
      нашел что $google_analytics; тянется из контроллера вот эта строка http://prntscr.com/gxt7g9 
      Но не могу понять где сам этот код яндекс метрики и как его поменять можно?
      Подскажите пожалуйста.
    • От Dekap
      Доброго дня! Помогите пож-та.
      1) Основные категории сайта отображаются в органической поиске гугла с ошибкой https://gyazo.com/740a853e054d9222e88313c69ead32e6
      Те если найти сайт в органике скажем по запросу "костюм горка купить в минске" где то на 2- 3 стр (https://gyazo.com/247dbf384102e72df46eba9fb9f633e9) и кликнуть на ссылку, то откроется вот это https://gyazo.com/da9a47f98d631d2c559f3b5917f4ae07 Категория не найдена!
      Сайт в целом проиндексирован и яндексом и гуглом https://gyazo.com/32d8eb58b17747979b6d480d5b17fc51
      В яндексе все хорошо - сайт сидит в ТОП 10 по многим запросам и такой ошибки не наблюдается. adwords по этим же ссылкам отрабатывает как нужно.

      2) и еще вопрос - как избежать дублирование контента из-за дублирующих урлов. Например в карте сайта: 
      http://voengrad.by/index.php?route=information/sitemap ссылка такая http://voengrad.by/index.php?route=product/category&path=106_386 а в основном меню http://voengrad.by/index.php?route=product/category&path=106 (эту ссылку нужно сделать основной) Причем в каноникл прописаны и 1 и 2 стр. ---- опенкарт 2 x
    • От kin208

      700 RUB
      View File


      Логинза (Loginza) - авторизация через соц.сети (платный модуль)
      Авторизация через ВКонтакте, Одноклассники, Facebook и еще 15 сервисов
      Принцип действия:
      1. На сайте магазина (страница авторизации, первая страница оформления заказа, страница оформления Simple)
      посетитель нажимает на иконку соц.сети или сервиса и переходит на сайт Loginza.
      2. С сайта Логинзы пользователь переходит на свой аккаунт в выбранной соц.сети. Авторизуется там и разрешает передачу данных Логинзе.
      3. Пользователь переходит обратно на сайт, на ту страницу с которой он изначально переходил в соц.сеть.
      4. Если в настройках модуля не был включен добор данных, то пользователь сразу же регистрируется и авторизуется. Если же добор данных был включен, то пользователь видит модальное окно с формой куда нужно ввести недостающие данные (Имя, Фамилия, E-mail, Телефон, Компания, Почтовый индекс, Страна, Регион, Город, Адрес). После ввода данных пользователь закрывает модальное окно и переходит на ту же страницу уже авторизованным и зарегистрированным.
      5. Данные пользователя (для разных соц.сетей - разный набор данных) сохраняются в базе данных магазина. И администратор сайта может их просматривать в админке на странице заказа и странице покупателя.
      Loginza на данный момент поддерживает следующие соц.сети и сервисы: Google (gmail.com), Яндекс, OPENID@MAIL.RU, Mail.ru, ВКонтакте, FaceBook, Одноклассники, Живой Журнал (livejournal.com), Twitter, LinkedIn, Loginza, MyOpenid, WebMoney, Rambler, Flickr (flickr.com), LastFM (last.fm), VeriSign (verisign.com), AOL (aol.com), Steam (store.steampowered.com), OpenID
      Существует бесплатный модуль Логинзы.
      Смотрите по ссылке:
      http://opencartforum...B5%D1%82%D0%B8/
      Перечислю преимущества данного модуля по сравнению с бесплатным:
      1. Возможность просматривать данные пользователя в админке, которые предоставляются соц.сетями.
      Для разных соц.сетей разный набор данных. Сравнительную таблицу со списком данных
      Вы сможете увидеть на странице модуля в админке (можно посмотреть на демо-сайте). Это могут быть: ссылка на аккакунт, ФИО, e-mail, пол, юзерпик, дата рождения и другие.
      2. Возможность включить добор данных в модальном окне (Имя, Фамилия, E-mail, Телефон, Компания, Почтовый индекс, Страна, Регион, Город, Адрес)
      3. Возможность использовать модуль в режиме который разработчики Логинзы называют "Безопасный режим проверки token". В документации логинзы рекомендуется использовать этот режим.
      4. Совместимость с Simple
      5. Возможность редактировать список доступных для авторизации соц.сетей и сервисов. Смысл редактирования в том чтобы исключить сервисы которые дают мало данных. А так же исключить сервисы, которые не являются блогами (если Вы хотите читать блоги Ваших покупателей).
      6. Возможность выбирать формат отображения данных (крупные значки, мелки значки, кнопка). Возможность назначить соц.сеть по-умолчанию, которая будет предлагаться пользователю первым.
      7. Совместимость с версиями OpenCart от 1.5.0 до 2.1 включительно.
      8. Техническая поддержка. Если не заработает, то Вы сможете обратиться к разработчику (e-mail и скайп в файле README)
      PS:
      Модуль сделан так чтобы при установке пришлось обновлять как можно меньше существующих файлов.
      Поэтому вывод данных в админке сделан следующим образом:
      в файле /admin/controller/common/footer.php - сделана вставка, которая добавляет javascript в низу страницы. А уже этот javascript делает отображение данных на странице заказа, странице покупателя, странице списка заказов и странице списка покупателей.
      Приятной работы!
      ВНИМАНИЕ!
      Модуль Логинза работает на сайтах с SSL только если выбрать способ отображения - "Маленькие иконки".
      Кому это критично - рекомендую друой мой модуль:
      https://opencartforum.com/files/file/741-%D0%B0%D0%B2%D1%82%D0%BE%D1%80%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F-%D1%87%D0%B5%D1%80%D0%B5%D0%B7-%D0%B2%D0%BA%D0%BE%D0%BD%D1%82%D0%B0%D0%BA%D1%82%D0%B5-facebook-%D0%BE%D0%B4%D0%BD%D0%BE%D0%BA%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B8%D0%BA%D0%B8-twitte/
      --------------
      Демо-сайт:
      https://softpodkluch.ru/loginza2#link-tab-demo
      -------------
      Инструкция по установке:
      https://softpodkluch.ru/instruction-loginza2?version=3.1
      -------------
      Часто-задаваемые вопросы:
      https://softpodkluch.ru/loginza2#link-tab-faq
      Submitter kin208 Submitted 01/04/2013 Category Социальные сети Системные требования Сайт разработчика https://softpodkluch.ru/ Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart 2.3
      2.2
      2.1
      2.0
      1.5.6.4
      1.5.6.3
      1.5.6.2
      1.5.6.1
      1.5.6
      1.5.4.1
      1.5.3.1 ocStore 2.3
      2.2
      2.1
      1.5.5.1.2
      1.5.5.1.1
      1.5.5.1
      1.5.4.1.2
      1.5.4.1.1
      1.5.4.1
      1.5.3.1
      1.5.2.1
      1.5.1.3 OpenCart.Pro, ocShop Не проверялось  
    • От kin208
      Авторизация через ВКонтакте, Одноклассники, Facebook и еще 15 сервисов
      Принцип действия:
      1. На сайте магазина (страница авторизации, первая страница оформления заказа, страница оформления Simple)
      посетитель нажимает на иконку соц.сети или сервиса и переходит на сайт Loginza.
      2. С сайта Логинзы пользователь переходит на свой аккаунт в выбранной соц.сети. Авторизуется там и разрешает передачу данных Логинзе.
      3. Пользователь переходит обратно на сайт, на ту страницу с которой он изначально переходил в соц.сеть.
      4. Если в настройках модуля не был включен добор данных, то пользователь сразу же регистрируется и авторизуется. Если же добор данных был включен, то пользователь видит модальное окно с формой куда нужно ввести недостающие данные (Имя, Фамилия, E-mail, Телефон, Компания, Почтовый индекс, Страна, Регион, Город, Адрес). После ввода данных пользователь закрывает модальное окно и переходит на ту же страницу уже авторизованным и зарегистрированным.
      5. Данные пользователя (для разных соц.сетей - разный набор данных) сохраняются в базе данных магазина. И администратор сайта может их просматривать в админке на странице заказа и странице покупателя.
      Loginza на данный момент поддерживает следующие соц.сети и сервисы: Google (gmail.com), Яндекс, OPENID@MAIL.RU, Mail.ru, ВКонтакте, FaceBook, Одноклассники, Живой Журнал (livejournal.com), Twitter, LinkedIn, Loginza, MyOpenid, WebMoney, Rambler, Flickr (flickr.com), LastFM (last.fm), VeriSign (verisign.com), AOL (aol.com), Steam (store.steampowered.com), OpenID
      Существует бесплатный модуль Логинзы.
      Смотрите по ссылке:
      http://opencartforum...B5%D1%82%D0%B8/
      Перечислю преимущества данного модуля по сравнению с бесплатным:
      1. Возможность просматривать данные пользователя в админке, которые предоставляются соц.сетями.
      Для разных соц.сетей разный набор данных. Сравнительную таблицу со списком данных
      Вы сможете увидеть на странице модуля в админке (можно посмотреть на демо-сайте). Это могут быть: ссылка на аккакунт, ФИО, e-mail, пол, юзерпик, дата рождения и другие.
      2. Возможность включить добор данных в модальном окне (Имя, Фамилия, E-mail, Телефон, Компания, Почтовый индекс, Страна, Регион, Город, Адрес)
      3. Возможность использовать модуль в режиме который разработчики Логинзы называют "Безопасный режим проверки token". В документации логинзы рекомендуется использовать этот режим.
      4. Совместимость с Simple
      5. Возможность редактировать список доступных для авторизации соц.сетей и сервисов. Смысл редактирования в том чтобы исключить сервисы которые дают мало данных. А так же исключить сервисы, которые не являются блогами (если Вы хотите читать блоги Ваших покупателей).
      6. Возможность выбирать формат отображения данных (крупные значки, мелки значки, кнопка). Возможность назначить соц.сеть по-умолчанию, которая будет предлагаться пользователю первым.
      7. Совместимость с версиями OpenCart от 1.5.0 до 2.1 включительно.
      8. Техническая поддержка. Если не заработает, то Вы сможете обратиться к разработчику (e-mail и скайп в файле README)
      PS:
      Модуль сделан так чтобы при установке пришлось обновлять как можно меньше существующих файлов.
      Поэтому вывод данных в админке сделан следующим образом:
      в файле /admin/controller/common/footer.php - сделана вставка, которая добавляет javascript в низу страницы. А уже этот javascript делает отображение данных на странице заказа, странице покупателя, странице списка заказов и странице списка покупателей.
      Приятной работы!
      ВНИМАНИЕ!
      Модуль Логинза работает на сайтах с SSL только если выбрать способ отображения - "Маленькие иконки".
      Кому это критично - рекомендую друой мой модуль:
      https://opencartforum.com/files/file/741-%D0%B0%D0%B2%D1%82%D0%BE%D1%80%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F-%D1%87%D0%B5%D1%80%D0%B5%D0%B7-%D0%B2%D0%BA%D0%BE%D0%BD%D1%82%D0%B0%D0%BA%D1%82%D0%B5-facebook-%D0%BE%D0%B4%D0%BD%D0%BE%D0%BA%D0%BB%D0%B0%D1%81%D1%81%D0%BD%D0%B8%D0%BA%D0%B8-twitte/
      --------------
      Демо-сайт:
      https://softpodkluch.ru/loginza2#link-tab-demo
      -------------
      Инструкция по установке:
      https://softpodkluch.ru/instruction-loginza2?version=3.1
      -------------
      Часто-задаваемые вопросы:
      https://softpodkluch.ru/loginza2#link-tab-faq
  • Последние посетители   0 пользователей онлайн

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