Для приватного просмотра Firefox требуется 2 страницы для установки файлов cookie

Мой сайт WordPress (http://robfuquay.staging.wpengine.com/) настроен так, чтобы разрешать использование файлов cookie Google Analytics только после того, как пользователи дали свое согласие с помощью баннера, прикрепленного внизу окна. (Это делается с помощью этого плагина: https://wordpress.org/plugins/cookie-notice/)

Пока не получено согласие, у меня есть файл cookie ga-disable-UA-10877870-45 который установлен в true, При нажатии кнопки согласия добавляется другой файл cookie. cookie_notice_accepted и установить true, Однажды cookie_notice_accepted cookie установлен на true, ga-disable-UA-10877870-45 cookie установлен на false через функцию ниже:

add_action( 'init', 'set_ga_disable_cookie_according_to_cookie_notice' );

function set_ga_disable_cookie_according_to_cookie_notice() {
if ( function_exists( 'cn_cookies_accepted' ) && function_exists('get_ua')) {
if ( cn_cookies_accepted() ) {
setcookie( 'ga-disable-'.get_ua(), 'false', 0, "/" );
} else {
if(!isset($_COOKIE['ga-disable-'.get_ua()])) {
setCookie( 'ga-disable-'.get_ua(), 'true' );
}
}
}
}

Однажды ga-disable-UA-10877870-45 установлен на false, на следующей странице загрузите файлы cookie Google Analytics: _ga, _gat, а также gid, (После нажатия кнопки согласия страница автоматически перезагружается через настройки плагина Cookie Notice.)

У меня проблема с клиентом. Chrome, Safari и Opera (и все их частные браузеры) работают должным образом: принять уведомление, перезагрузить страницу, установить файлы cookie Google Analytics. Firefox также работает как положено, но При закрытом просмотре Firefox файлы cookie Google Analytics не устанавливаются до запроса дополнительной страницы. Это означает, что даже после автоматической перезагрузки страницы мне нужно обновить страницу еще раз. Это согласуется между обоими моими MacBook.

Я разрешаю файлы cookie и не блокирую отслеживание, так почему же приватный просмотр Firefox работает именно так?

1

Решение

@Jamie_D был прав в определении проблемы:

Согласно этой странице: «Файлы cookie, установленные в частных окнах, временно хранятся в памяти, отдельно от файлов cookie обычных окон, и удаляются в конце вашей личной сессии»

Из-за того, что файлы cookie не отображаются в инструментах разработчика, было решено ввести следующий JavaScript в консоль:

unescape(document.cookie.split('; '));

Источник: https://support.mozilla.org/en-US/questions/1031619#answer-672435

Ожидаемые куки были возвращены в том числе _ga, _gat, а также _gid,

Я дважды проверил, что Google Analytics извлекает правильные данные в реальном времени, и все выглядит хорошо.

Для ясности, приватный просмотр Firefox не требовал загрузки двух страниц для установки файлов cookie … Firefox просто не показывал, что они были установлены в инструментах разработки.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector