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

Вопрос по метрике, цели.

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

Ребят подскажите пожалуйста, настриваю цели в метрике.

Нужно вставить код для JavaScript события ".reachGКoal" на кнопку купить.

Куда его нужно вставить в какой файл?

Заранее спасибо!

 

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


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

Спасибо, это видел. Этот метод скорей всего делался для OC 1.5 у меня 2.1

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


Ссылка на сообщение
Поделиться на другие сайты
8 часов назад, marionetto сказал:

Спасибо, это видел. Этот метод скорей всего делался для OC 1.5 у меня 2.1

Добавьте этот код в catalog/view/javascript/common.js

// Cart add remove functions
var cart = {
	'add': function(product_id, quantity) {
yaCounter123123132.reachGoal('идентификатор'); return true;
		$.ajax({
			url: 'index.php?route=checkout/cart/add',
...

 

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


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

я бы добавил в cart.add внутри json['success']

Чтобы цель срабатывала только при успешном добавлении в корзину

  • +1 1

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


Ссылка на сообщение
Поделиться на другие сайты
1 час назад, ibond сказал:

Добавьте этот код в catalog/view/javascript/common.js

Во спасибо!) Его без разницы куда добавлять? В самый низ я так понимаю надо вставить?

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


Ссылка на сообщение
Поделиться на другие сайты
1 минуту назад, marionetto сказал:

Во спасибо!) Его без разницы куда добавлять? В самый низ я так понимаю надо вставить?

нет, разница есть + thentru, точно подметил, если есть товары с опциями, то надо в success

// Cart add remove functions
var cart = {
	'add': function(product_id, quantity) {

		$.ajax({
			url: 'index.php?route=checkout/cart/add',
			type: 'post',
			data: 'product_id=' + product_id + '&quantity=' + (typeof(quantity) != 'undefined' ? quantity : 1),
			dataType: 'json',
			beforeSend: function() {
				$('#cart > button').button('loading');
			},
			complete: function() {
				$('#cart > button').button('reset');
			},
			success: function(json) {
				$('.alert, .text-danger').remove();

				if (json['redirect']) {
					location = json['redirect'];
				}

				if (json['success']) {

					$('#content').parent().before('<div class="alert alert-success"><i class="fa fa-check-circle"></i> ' + json['success'] + ' <button type="button" class="close" data-dismiss="alert">&times;</button></div>');

					// Need to set timeout otherwise it wont update the total
					setTimeout(function () {
						$('#cart > button').html('<span id="cart-total"><i class="fa fa-shopping-cart"></i> ' + json['total'] + '</span>');
					}, 100);

					$('html, body').animate({ scrollTop: 0 }, 'slow');

					$('#cart > ul').load('index.php?route=common/cart/info ul li');

yaCounter123123132.reachGoal('идентификатор'); return true;
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
				}
			},
	        error: function(xhr, ajaxOptions, thrownError) {
	            alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
	        }
		});
	},

 

  • +1 1

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


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

И для карточки товара еще надо в catalog/view/theme/*/template/product/product.tpl:

<script type="text/javascript"><!--
$('#button-cart').on('click', function() {
	$.ajax({
		url: 'index.php?route=checkout/cart/add',
		type: 'post',
		data: $('#product input[type=\'text\'], #product input[type=\'hidden\'], #product input[type=\'radio\']:checked, #product input[type=\'checkbox\']:checked, #product select, #product textarea'),
		dataType: 'json',
		beforeSend: function() {
			$('#button-cart').button('loading');
		},
		complete: function() {
			$('#button-cart').button('reset');
		},
		success: function(json) {
			$('.alert, .text-danger').remove();
			$('.form-group').removeClass('has-error');

			if (json['error']) {
				if (json['error']['option']) {
					for (i in json['error']['option']) {
						var element = $('#input-option' + i.replace('_', '-'));

						if (element.parent().hasClass('input-group')) {
							element.parent().after('<div class="text-danger">' + json['error']['option'][i] + '</div>');
						} else {
							element.after('<div class="text-danger">' + json['error']['option'][i] + '</div>');
						}
					}
				}

				if (json['error']['recurring']) {
					$('select[name=\'recurring_id\']').after('<div class="text-danger">' + json['error']['recurring'] + '</div>');
				}

				// Highlight any found errors
				$('.text-danger').parent().addClass('has-error');
			}

			if (json['success']) {
				$('.breadcrumb').after('<div class="alert alert-success">' + json['success'] + '<button type="button" class="close" data-dismiss="alert">×</button></div>');

				$('#cart > button').html('<span id="cart-total"><i class="fa fa-shopping-cart"></i> ' + json['total'] + '</span>');

				$('html, body').animate({ scrollTop: 0 }, 'slow');

				$('#cart > ul').load('index.php?route=common/cart/info ul li');

yaCounter123123132.reachGoal('идентификатор'); return true;
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
              
			}
		},

 

  • +1 1

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


Ссылка на сообщение
Поделиться на другие сайты
13 минут назад, ibond сказал:

нет, разница есть + thentru, точно подметил, если есть товары с опциями, то надо в success

Опций у меня нет, и вообще не планирую.

Я вставил, щас проверял но чет мне кажется не так вставил. Можешь глянуть если не сложно пожалуйста правильно ли воткнул код?

Скрытый текст

// Cart add remove functions
var cart = {
    'add': function(product_id, quantity) {
        $.ajax({
            url: 'index.php?route=checkout/cart/add',
            type: 'post',
            data: 'product_id=' + product_id + '&quantity=' + (typeof(quantity) != 'undefined' ? quantity : 1),
            dataType: 'json',
            beforeSend: function() {
                $('#cart > button').button('loading');
            },
            complete: function() {
                $('#cart > button').button('reset');
            },
            success: function(json) {
                $('.alert, .text-danger').remove();

                if (json['redirect']) {
                    location = json['redirect'];
                }

                if (json['success']) {
                    $('#content').parent().before('<div class="alert alert-success"><i class="fa fa-check-circle"></i> ' + json['success'] + ' <button type="button" class="close" data-dismiss="alert">&times;</button></div>');

                    // Need to set timeout otherwise it wont update the total
                    setTimeout(function () {
                        $('#cart > button').html('<span id="cart-total"><i class="fa fa-shopping-cart"></i> ' + json['total'] + '</span>');
                    }, 100);

                    $('html, body').animate({ scrollTop: 0 }, 'slow');

                    $('#cart > ul').load('index.php?route=common/cart/info ul li');
yaCounter38891545.reachGoal('zakaz'); return true;
                }
            },
            error: function(xhr, ajaxOptions, thrownError) {
                alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
            }
        });
    },

 

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


Ссылка на сообщение
Поделиться на другие сайты
12 минут назад, marionetto сказал:

Опций у меня нет, и вообще не планирую.

Я вставил, щас проверял но чет мне кажется не так вставил. Можешь глянуть если не сложно пожалуйста правильно ли воткнул код?

  Скрыть контент

yaCounter38891545.reachGoal('zakaz'); return true;

 

 

Надо найти в файле common.js место где начинается функция // Cart add remove functions и вставить в эту функцию код яндекса там где я указал, а не копировать и вставлять код :-D

https://monosnap.com/file/ZTVSOOm7u5Vl3NsFcFJ9pIEvOAQMs0

 

 

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


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

бл..... щас бошка взорвется!)) Сколько возьмешь с меня за это задание?? Я ни шарю ни черта!

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


Ссылка на сообщение
Поделиться на другие сайты
9 минут назад, ibond сказал:

Надо найти в файле common.js место где начинается функция // Cart add remove functions и вставить в эту функцию код яндекса там где я указал, а не копировать и вставлять код :-D

https://monosnap.com/file/ZTVSOOm7u5Vl3NsFcFJ9pIEvOAQMs0

Я вот точно так и сделал!!! Подожду посмотрю может заработает

Изменено пользователем marionetto

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


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

Чисто символически, 1 цент :)

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


Ссылка на сообщение
Поделиться на другие сайты
1 минуту назад, marionetto сказал:

Я вот точно так и сделал!!! Подожду посмотрю может заработает

Если так сделал, то все должно быть норм. Статистика обновляется на яндексе минут через 15. Нужно тестовую закупку сделать.

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


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

Один цент это не серьезно!)) Я проверю тогда по позже, если не заработает отпишусь тогда за помощью!

Спасибо от души!!! Успехов тебе!

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


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

Спасибо большое за совет. Очень помогло.

Цель - Добавление "В корзину" со страницы категории теперь отслеживается как надо!

А вот то же самое, но со страницы товара почему-то не работает.

Сделал в точности как вы написали, добавил код в тот же файл и то же место, только вставлял код для adwords: 

ga('send', 'event', 'knopka1', 'click1');

В чем может быть проблема?

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


Ссылка на сообщение
Поделиться на другие сайты
15 минут назад, Paint сказал:

В чем может быть проблема?

 

Тык сюда: Google Analytics E-commerce

 

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


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

Не уверен что этот модуль поможет решить все вопросы по целям гугл. Шаблон у меня не дефолт, многие действия кот. надо отслеживать не генерируют отдельных страниц, а те что генерируют настроить проблем не вызвало. По большому счету осталось настроить отслеживание действий "добавление в корзину с карточки товара", ещё "быстрый заказ (с категории и карт.товара" и "заказ звонка" кот реализованы через модули шаблона в виде всплывающих окон. Пока не получается.

Так же не знаю как правильно настроить цель - "заказ оформлен". На сайте установлен симпл и несколько модулей оплаты. Не смотря на то, что ведут они себя по разному, т.е. в одном после подтверждения заказа происходит переход на страницу Спасибо, а в других переход на сторонний сайт для онлайн оплаты, но в обоих случаях после Подтверждения заказа на e-mail админа приходит письмо об оформлении заказа. Как и где это событие можно поймать? 

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


Ссылка на сообщение
Поделиться на другие сайты
5 часов назад, Paint сказал:

Спасибо большое за совет. Очень помогло.

Цель - Добавление "В корзину" со страницы категории теперь отслеживается как надо!

А вот то же самое, но со страницы товара почему-то не работает.

Сделал в точности как вы написали, добавил код в тот же файл и то же место, только вставлял код для adwords: 

ga('send', 'event', 'knopka1', 'click1');

В чем может быть проблема?

Отвечу сам в чем проблема.

ibond, ещё раз спасибо. Все работает и в карточке товара. как говориться "Дело было не в бабине". Забыл после правки product.tpl обновить модификаторы. Столько времени потерял...

Не забывать обновлять модификаторы после правок!!!!!!!!!

Себе наверно на монитор это наклею, который раз уже забываю.

Одной проблемой с целями стало меньше, но остаётся ещё 3 (постом выше).

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


Ссылка на сообщение
Поделиться на другие сайты
18 часов назад, Paint сказал:

Не уверен что этот модуль поможет решить все вопросы по целям гугл. Шаблон у меня не дефолт, многие действия кот. надо отслеживать не генерируют отдельных страниц, а те что генерируют настроить проблем не вызвало. По большому счету осталось настроить отслеживание действий "добавление в корзину с карточки товара", ещё "быстрый заказ (с категории и карт.товара" и "заказ звонка" кот реализованы через модули шаблона в виде всплывающих окон. Пока не получается.

 

А Вы попробовали бы тот модификатор, у меня работает с нестандартным шаблоном и с симплой.

И никаких танцев с бубном.

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


Ссылка на сообщение
Поделиться на другие сайты
В 31.05.2017 в 17:54, ibond сказал:

 

А Вы попробовали бы тот модификатор, у меня работает с нестандартным шаблоном и с симплой.

И никаких танцев с бубном.

Не разбирался ещё с E-commerce в Google Analytics и не уверен, что мне это сейчас надо. Если я правильно понял, то E-commerce это инструмент для сбора данных о заказах, ну там чтобы прибыль от кампаний можно было анализировать.

Но мне пока достаточно будет оценки эффективности кампании и самого сайта по подсчёту конверсий таких целей как добавлено в корзину, заказ оформлен, заказ звонка, быстрый заказ, отправка формы обратной связи и нек. др. Все уже настроил, остались заказ звонка и быстрый заказ.

Я возможно чего-то не понял с этим E-commerce, но пока нет времени разбираться.

Спасибо за совет, возьму на заметку на будущее.

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


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

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

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

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

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

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

Войти

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

Войти

  • Последние посетители   0 пользователей онлайн

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

×

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

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