https://views.biz/
С нами с 06.10.08
Сообщения: 1560
Рейтинг: 1601
|
Добавлено: 21/01/13 в 19:15 |
В связи с тем, что гугл аналитикс довольно странно подсчитывает источник трафика, возникла необходимость подправить ситуацию.
Примеры:
Пользователь заходит на сайт из закладок. В куке utmz источником трафика будет указан direct.
Затем этот же пользователь заходит на сайт по ссылке с другого сайта. Логично было бы, если бы в источнике трафика был реферер, но в источнике трафа все равно останется директ.
Если же этот же пользователь теперь зайдет на сайт из поисковой системы, то в куке источником трафика будет organic, т.е, траф с поисковика.
Далее этот же пользователь заходит на этот же сайт с реферером, но в куке источником трафика все равно остается поисковик.
Меня совсем не устраивает такой подход к определению источника трафика.
Может кто-то занимался этим вопросом? Нужно, что бы каждый раз в куку заносились корректные данные об источнике трафа.
Нешел один вариант решения тут
Но как-то этот скрипт глючно работает. Вот код:
Код: [развернуть] | <script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-xxxxxxx']);
_gaq.push(['_initData']);
function readcookie(name) { // функция чтения куки
var re = new RegExp("(?:^| )" + name + "=([^;]*)", "i");
var matches = document.cookie.match(re);
return matches && matches.length == 2 ? matches[1] : "";
};
if (document.referrer.match(/^http[s]?:\/\/(www\.|)domen\.ru/)) {} // переход со страницы нашего сайта - ничего не делаем
else
{
if (document.referrer=='')
{ // нет источника посещения
if (document.cookie.indexOf('__utmz=')) { // проверка существования куки __utmz
var utmz = readcookie('__utmz'); // читаем значение куки
var utmz2 = utmz.replace (/\utmcsr.*/, 'utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)'); // переписываем (даже в случае идентичности)
document.cookie = '__utmz=' + utmz2+'; path=/; domain=.domen.ru'; // обновляем
}
}
else
{
var re2= new RegExp("^http[s]?:\/\/(www\.|)([^\/]*)\/([^\?]*)", "i");
var domenar = document.referrer.match(re2);
var domen=RegExp.$2; var linkref=RegExp.$3;
if (domen.match(/^yandex\./) || domen.match(/^google\./) || domen.match(/^bing\./) || domen.match(/^search\./) || domen.match(/^rambler\./) || domen.match(/^yahoo\./) || domen.match(/^msn\./) || domen.match(/^ask\./) || domen.match(/^aol\./)) {}
else
{
if (document.cookie.indexOf('__utmz=')) {
var utmz = readcookie('__utmz');
var utmz2 = utmz.replace (/\utmcsr.*/, 'utmcsr='+domen+'|utmccn=(referral)|utmcmd=referral|utmcct=/'+linkref+'') ;
document.cookie = '__utmz=' + utmz2+'; path=/; domain=.domen.ru';
}
}
}
}
_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> |
Реферер корректно не перезаписывается. В чем может быть ошибка?
|
|
|
|
С нами с 09.03.09
Сообщения: 6053
Рейтинг: 3538
|
Добавлено: 22/01/13 в 09:29 |
San_Tehnik писал: | Пользователь заходит на сайт из закладок. В куке utmz источником трафика будет указан direct.
Затем этот же пользователь заходит на сайт по ссылке с другого сайта. Логично было бы, если бы в источнике трафика был реферер, но в источнике трафа все равно останется директ. |
Куки ГА обновляются один раз за сессию. Длительность сессии по умолчанию 30 минут. Можно сделать поменьше (если тебе это действительно нужно):
https://developers.google.com/analytics/devguides/collection/gajs/me
kieTimeout
|
|
|
|
https://views.biz/
С нами с 06.10.08
Сообщения: 1560
Рейтинг: 1601
|
Добавлено: 22/01/13 в 12:45 |
Разобрался, в данном случае обновляются каждый раз, но utmz не обновляется, когда органик или директ изменяется на реферальный источник. В этом случае обновляется только по истечению сессии. Что меня, в принципе, устраивает.
|
|
|
|
Текстовая реклама в форме ответа Заголовок и до четырех строчек текста Длина текста до 350 символов Купить рекламу в этом месте! |