Ich versuche Cookies zu setzen, um wiederkehrende Benutzer zu einer bestimmten Seite auf meiner Wordpress-Site umzuleiten.
Ich hätte gerne einen Rat mit diesen beiden Dingen:
- Wo in den Wordpress-PHP-Dateien sollten Cookies überprüft werden, bevor Inhalte für die Weiterleitung geladen werden? Gibt es eine gute Datei, in der es mehr als andere geben sollte?
- Wie setze ich ein Cookie in Wordpress richtig?
setcookie('cookie_name', 'cookie_value', time()+4000);
scheint keine Cookies in meinem System zu speichern.
Antworten:
1 - Sie können nach Cookies suchen und Ihre Weiterleitung mithilfe von Hooks ausführen, die vor jeder Ausgabe aufgerufen werden, z. B. dem 'init'-Hook:
2 - Der beste Weg, Cookies zu setzen, ist die Verwendung des 'init'-Hakens wie folgt:
Dies ist konsistenter, wenn Sie ein Blog unter www.example.com/blog haben , sind die Coockies unter nicht verfügbar
Aktualisieren
quelle
setcookie()
COOKIEPATH
undCOOKIEDOMAIN
Konstanten , anstatt sie aus sich selbst herauszufinden, was ich gerade in bemerkt Andre R Kohls AntwortCOOKIE_DOMAIN
Sie sollten wahrscheinlich die Konstanten
COOIKEPATH
und verwendenCOOKIE_DOMAIN
, die seit WP 3.0 existierenquelle
Ah, mir wurde klar, dass ich das hier einhängen musste
init()
.LÖSUNG: Ich habe in functions.php eine Funktion erstellt, die das Cookie setzt und überprüft. Damit dies ordnungsgemäß funktioniert, rufen Sie nach dem Definieren der Funktion außerhalb der Funktion Folgendes auf:
quelle
So hat es funktioniert:
quelle