Функция setcookie не работает с параметром '/', но работает без него
У меня возникла очень странная проблема. У меня есть этот код в файле functions.php. Я следовал инструкциям и поместил этот код в functions.php, который находится в папке моей темы: wp-content/themes/u-design/functions.php. Для справки, моя тема - u-design.
add_action('init', 'setmyCookie');
function setmyCookie(){
//if(!isset($_COOKIE['myCookie'])){
setcookie('myCookie', $_GET['test'], time() + 63072000, '/');
//}
}
Этот код должен получать значение из query string и помещать его в cookie, например:
www.mysite.com/?test=test
Однако это не работает. Но когда я изменяю код на:
add_action('init', 'setmyCookie');
function setmyCookie(){
//if(!isset($_COOKIE['myCookie'])){
setcookie('myCookie', $_GET['test'], time() + 63072000);
//}
}
Cookie устанавливается! Почему так происходит?
Сейчас, со вторым методом, хотя cookie и устанавливается, я не могу использовать его, так как $_COOKIE['test'] не возвращает значение из cookie. Судя по найденной информации, это происходит потому, что cookie устанавливается только для текущего пути. Чтобы использовать $_COOKIE['myCookie'], нужно установить cookie так, чтобы она была доступна для всего домена. Однако если я делаю это, как в первом методе, cookie вообще не устанавливается!
Кто-нибудь знает, почему это происходит и как это исправить? Спасибо.
