Analytics
Сейчас в сети: 416
Доступ к аккаунту GA, восстановление доступа, настройка уровней доступа и тд
Подсказки
star_border
Ответить

Не определяется cliend-id и не сохраняется в cookes

Студент ✭ ✭ ✭

Предположительно из-за ошибки в коде Google Analytics не определяется и не сохраняется  в куках client-id, который мы планируем передавать в свою CRM.

http://joxi.ru/12MD34Eh4DQYgm

 

Сlient-id отлавливаем на стороне клиента с помощью кода:

function gacid()
{
var match = document.cookie.match('(?:^|Подмигивающий\\s*_ga=([^;]*)');
var raw = (match) ? decodeURIComponent(match[1]) : null;
if (raw)
{
match = raw.match(/(\d+\.\d+)$/);
}
var gacid = (match) ? match[1] : null;
if (gacid)
{
return gacid;
}
}

 

Замечено, что иногда client-id может работать нормально,скажем на локальном хосте,а в сети на сервере нет, или вообще везде нормально работать,а потом снова нет.

С чем это может быть связано?

1 Ответ экспертаverified_user
1 УТВЕРЖДЕННОЕ РЕШЕНИЕ

Утвержденные решения
Лучший ответ.
Решение
Утвердил автор темы Владимир М
ноября 2016

Не определяется cliend-id и не сохраняется в cookes

Ведущий участник

проблема в асинхронности GTM.
Вам сторонние скрипты, которые используют данные из куки придется запускать по триггеру "Страница загружена", даже по готовности DOM кука не всегда оказывается готова. 
Другой способ - взять CID из кода трекера и использовать его, он готов сразу после создания счетчика.

Посмотрите у себя в тегах два варианта реализации.

 

 

Просмотреть решение в исходном сообщении

Не определяется cliend-id и не сохраняется в cookes

Ведущий участник

У нового посетителя сайта еще может не быть куки с client-id, если вы вызываете вашу функцию до срабатывания ga('create'...
Судя по всему, сам код GA у вас загружается после через GTM.
А по поводу блокировок ERR_CONNECTION_REFUSED - попробуйте отключить антивирус или ad-blocker, возможно дело в них

 

Не определяется cliend-id и не сохраняется в cookes

Студент ✭ ✭ ✭

1) Что бы не произошло,что функция сработала до ga('create'... еще раньше был создан код, который ждет 500 мс, пытается подождать пока загрузится весь код GA. Если такого не происходит,то повторяется снова.

function ga_load() {
if(typeof ga !== 'undefined')
{
console.log(' GA is good');
console.log(gacid());

}
else
{
console.log('no GA');
setTimeout(ga_load, 500);
}
};
ga_load();

 

2) Вариант с отключением не подходит,так как у себя мы можем его отключить,а как заставить отключить посетителей? Даже если и это сделаем,то пользователи плеваться будут и потеряем на конверсии.

 

3) Эксперимент показал, что client-id более или менее работает в Google Chrome, в других браузерах часто проблемы.

 

Остается,как я думаю вариант:

4) Проблема в том, что этот файл https://google-analytics.com/analytics.js
не всегда может подгрузиться,как показано на скриншоте http://joxi.ru/12MD34Eh4DQYgm. Он подтягивается с GTM->GA.

Вот как с этим побороться?

 

Не определяется cliend-id и не сохраняется в cookes

Ведущий участник

1. Можно конечно и так, но достаточно было задать очередность тегов, чтобы Ваш запускался после тега с pageview GA
2. Я имел в виду именно ту машину, на которой отлаживаете, конечно пользователи в своих браузерах могут ставить что угодно

3. Настройте передачу ошибок JS в GA, и посмотрите, какие ошибки появляются на других браузерах.
4. Это следствие пункта 2 и 3. 

Не определяется cliend-id и не сохраняется в cookes

Студент ✭ ✭ ✭

1. Указал приоритет активации тегов 5 http://joxi.ru/n2YkqBbHjqbXzr . Это пробовали и раньше. Это не помогло

2. Антивирус аваст отключен. http://joxi.ru/gmvq5Onux9q5Vr

3. Подскажите как это сделать. В принципе это может и не обязательно, так в Опера и Chrome стабильно появляется ошибка типа:

analytics.js (failed)   http://www.google-analytics.com/analytics.js 0 B 5.28 s  

Файл просто не подгружается.  Я думаю-тут соль проблемы. Почему может этот файл не подгружаться и за что он отвечает? Можно ли этот код напрямую вставить на страницу?

4. Я сомневаюсь, что это следствия 2 и 3, так как их отсекли,а проблема осталась.

 

 

 

Не определяется cliend-id и не сохраняется в cookes

Ведущий участник

1.Не приоритет, а порядок активации тегов.

3.http://www.simoahava.com/gtm-tips/track-javascript-errors-events/

Не могли бы прислать ссылку на отслеживаемую страницу и ссылку для отладки GTM?

 

Не определяется cliend-id и не сохраняется в cookes

Студент ✭ ✭ ✭

Можно вашу почту,откроем доступ вам.

 

Не определяется cliend-id и не сохраняется в cookes

Ведущий участник

chtodelat@esliklientov.net

 

Не определяется cliend-id и не сохраняется в cookes

Студент ✭ ✭ ✭

1.https://tagmanager.google.com/#/home.  Вам на почту пришел  доступ.
2.http://качественные-потолки.рф
Перед тегом </ body>  код,который пытается отловить client-id

Re: Не определяется cliend-id и не сохраняется в cookes

Ведущий участник

Сделал переменную, которая возвращает CID:


2016-10-25_20-58-01.png

Её можете использовать в дальнейшем для передачи в CRM Код в нижней части страницы заменил следующим тегом с обязательным выполнением перед ним тега аналитики, там же выводится в консоль CID и отладочная информация, аналогично вашей:

2016-10-25_20-58-50.png

Код, чтобы не дублировался вызов скрипта удалите свой из нижней части страницы, так же в коде страницы script.js два раза вызывается