setcookie nu funcționează când este definit cu '/' dar funcționează fără - Soluție
Am o problemă foarte ciudată. Am acest cod în functions.php. Am urmat instrucțiunile și am plasat acest cod în functions.php care era disponibil în folderul temei mele în wp-content/themes/u-design/functions.php. Pentru referință, tema mea este u-design.
add_action('init', 'setmyCookie');
function setmyCookie(){
//if(!isset($_COOKIE['myCookie'])){
setcookie('myCookie', $_GET['test'], time() + 63072000, '/');
//}
}
Acest cod ar trebui să preia valoarea dintr-un query string și să o plaseze într-un cookie, de exemplu:
www.siteulmeu.ro/?test=test
Totuși, nu funcționează. Dar când schimb codul în:
add_action('init', 'setmyCookie');
function setmyCookie(){
//if(!isset($_COOKIE['myCookie'])){
setcookie('myCookie', $_GET['test'], time() + 63072000);
//}
}
Cookie-ul este setat! De ce se întâmplă asta?
În prezent, cu a doua metodă, deși cookie-ul este setat, nu îl pot folosi deoarece $_cookie['test'] nu returnează valoarea din cookie. Din câte am înțeles prin căutări, acest lucru se întâmplă pentru că cookie-ul este setat doar pentru calea curentă. Pentru a folosi $_cookie['myCookie'], trebuie să setezi cookie-ul astfel încât să fie disponibil pe întreg domeniul. Totuși, dacă fac asta, ca în prima metodă, cookie-ul nu este setat deloc!
Știe cineva de ce se întâmplă asta și cum să repar? Mulțumesc.
