Выполнить код Google Analytics eCommers после заказа AJAXом
Добрый день! Нужна ваша помощь по реализации стандартного API GA.
-----------------
Задача: Нужно отследить покупку заказа товара.
-----------------
Методы: Использую стандартное API от GA. В документации сказано, что код Google нужно разместить на странице , которая оповещает об удачной покупке. Но у меня заказ производится через AJAX. И выводится сообщение что заказ оформлен в асинхронном режиме.
Как мне через AJAX отследить покупку?
-----------------
Как я реализовую?
файл: analyticsGoogle.js ( подключаю в header)
function addTransaction(order,allPrice)
{
_gaq.push(['_addTrans',
order, // Внутренний уникальный идентификационный номер заказа
"",// Дополнительный партнер или аффилированный склад
allPrice,// Общая сумма в долларах для транзакции
"", // Сумма налога для транзакции
"",// Сумма отгрузки для транзакции
"", // Город, связанный с транзакцией
"", // Область или регион
"Россия" // Страна
]);
console.log('It work!');
}
function addOrder(order, name, price, kolvo, category)
{
_gaq.push(['_addItem',
order, // Ваш внутренний уникальный идентификационный номер заказа (должен быть таким же, как для строки транзакции)
"", // Код складской единицы для продукта
name, // Название или описание продукта
category, // Категория продукта или разновидности
price,// Цена за единицу продукта
kolvo // Заказанное количество
]);
console.log('It work!');
}
// end GA Commercy
Функция отправки из файла: addOne.js (подключаю ниже)
/*
* Функция отправка формы AJAX
*/
function SendPost()
{
var i = 0; // счетчик полей
jQuery.each(jQuery('#ordering-mw input'), function(index,value) // снова перибераем input'ы
{
if(jQuery(value).val().length > 0) i = i+1; // считаем только заполненные
});
if(i>6) // 6 input полей в форме включая hidden
{
jQuery.ajax({
type: 'POST',
url: '/addone/addOne.php', // скрипт который обрабатывает все серверные запросы
data: { // параметры для $_POST
'name' : jQuery("#ordering-name").val(),
'phone' : jQuery("#ordering-phone").val(),
'email' : jQuery("#ordering-email").val(),
'product' : jQuery("#pID").val(),
'price' : jQuery("#price").val(),
'id' : jQuery("#id").val(),
'url' : jQuery("#url").val(),
},
response : 'text', // возвращаем ответ текстом
beforeSend : function() // перед отправкой
{
jQuery('#rslt').html('<img src="/addone/images/loading-one.gif" border="0">');
},
header: { // заголовок браузеру
'Content-Type' : 'application/x-www-form-urlencoded; charset=utf-8',
'Referer' : location.href
},
success : function(data) // возвращает ok, если все ок
{
addTransaction(jQuery("#id").val(), jQuery("#price").val()); // Вызываю методы добавления транзакции
addOrder(jQuery("#id").val(), jQuery("#ordering-name").val(), jQuery("#price").val(), 1, 'Заказано в один клик'); // метод добавления инфы о товаре
if(data == "wrongmail") jQuery('#rslt').html('<span style="color: #f00;">Не верный формат e-mail! Повторите отправку.</span>');
else if(data == "emptymail") jQuery('#rslt').html('<span style="color: #f00;">Не верный формат e-mail! Повторите отправку.</span>');
else if(data == "spam") jQuery('#rslt').html('<span style="color: #f00;">Подождите несколько секунд, чтобы заказать повторно</span>');
else jQuery('#rslt').html('<span style="color: #068403;">Заказ отправлен успешно, с Вами свяжется наш оператор.</span>');
}
});
}
else
{
jQuery('#rslt').html('<span style="color: #f00;">Необходимо заполнить все поля</span>');
}
}
Кусок HTML со страницы формы заказа:
<!-- Модальное окно для заказа в один клик -->
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-23801028-1']); // объявляю ID для GA
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
<div style="display: none;" id="oneClick" class="jqmWindow formOne jqmID1">
<div id="ordering-mw">
<div><a class="jqmClose" id="close-icon" href="#"></a></div>
<div class="clear"></div>
<h2>Заказ в один клик!</h2>
<p>Оформление заказа</p>
<div style="text-align: center;" id="rslt" class="rslt"></div>
<form action="#">
<input type="hidden" value="" name="productID" id="pID">
<input type="hidden" value="" name="price" id="price">
<input type="hidden" value="" name="id" id="id">
<input type="hidden" value="" name="url" id="url">
...
.....
......
<input type="button" value="Отправить" onclick="SendPost();">
Форма работает, но статистика не доходит
![Sad](images/smilies/sad.gif)
Помогите пожалуйста!