У меня действительно странная проблема … Я пытаюсь установить cookie, и он отлично работает во всех браузерах, кроме Safari, как для настольных компьютеров, так и для iOS Safari.
Странно то, что я вижу, что он установлен, потому что в инспекторе Safari он показывает cookie, как и должен.
Когда я пытаюсь получить доступ к cookie с помощью $_COOKIE["wpcode"]
это не показывает это, но в других браузерах это делает …
Идем дальше, делаем print_r($_COOKIE)
не отображает ЛЮБЫЕ файлы cookie, хотя в моей панели файлов cookie есть набор файлов cookie.
Я использую Safari 8, но проблема возникает во всех версиях Safari, которые я тестировал (6.2+)
Я использую WPEngine в качестве хоста, и я также использую WordPress.
Код, который я использую для установки моего cookie-файла (но я пробовал его всеми возможными способами, которые я нашел):
setcookie("wpcode", md5("true"), time()+60*60*24*7,"/", "", false);
Я пытаюсь получить доступ к cookie, как:
$_COOKIE["wpcode"] != md5("true")
Хотя я пробовал все как:
isset($_COOKIE["wpcode"])
Это, очевидно, проблема с Safari, я просмотрел каждую страницу в Google на предмет похожих проблем безрезультатно …
Спасибо!
Извините за опоздание на вечеринку, но я сам столкнулся с этим вопросом. Оказывается, что агрессивное кэширование WP Engine делает получение файлов cookie через php трудным / невозможным.
WP Engine — файлы cookie и сессии PHP
Похоже, мне нужно использовать .js. Надеюсь, несмотря на мои опоздания, этот ответ дает вам некоторое завершение.
Других решений пока нет …