WordPress-Sitzungsverwaltung
Ich habe eine Website mit WordPress und ich möchte mich Huckepack auf seinen Sitzungen. Aber ich bin nicht zu finden, irgendwelche plugins, oder auch Dokumentation. Irgendwelche Vorschläge oder Hinweise, bevor ich die hacken?
Anmerkung: ich Frage nach, ob und wie WP verwendet standard-PHP-sessions selbst nicht gewusst wie: hinzufügen von PHP-sessions z.B. mit session_start(). Anscheinend ist jeder Staat, der WP verwaltet wird erreicht, indem andere Mittel. Also, wenn ich verwenden möchten, PHP sessions ich muss hinzufügen, und pflegen Sie es mich ganz, mit Techniken, wie Sie im thread.
Vielen Dank an alle!
InformationsquelleAutor der Frage dkretz | 2009-09-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Haben Sie gesehen?
http://www.thinkingoutloud.co.za/content/20091012/php_wordpress_and_session
WordPress nicht angezeigt wird, rufen Sie
session_start()
will, weil es zu Staatenlosenund wenn
register_globals
definiert ist, wird es automatisch zerstört Ihre$_SESSION
InformationsquelleAutor der Antwort Steve
Es ist eine sehr schlechte Idee, Sie zu ändern WP Core - Dateien für die Fähigkeit zur Nutzung von sessions. Der beste Weg, die ich gefunden habe, ist der Aufruf der
session_start()
ausinit
Aktion Haken.Können Sie platzieren Sie es in
functions.php
Datei von Ihrem Thema.Ausführlichen Artikel finden Sie hier: http://www.kanasolution.com/2011/01/session-variable-in-wordpress/
InformationsquelleAutor der Antwort Andrey Rudenko
Erwägen Sie die Verwendung WordPress Transient API
Werte gespeichert, die Transient-API sind für alle Benutzer sichtbar, nicht nur für den aktuellen Benutzer, je nach den eindeutigen Bezeichner verwendet, um die transiente, konnte Sie weisen Sie jedem Benutzer eine eindeutige Kennung im wesentlichen verursacht eine transiente Verhalten sich sehr ähnlich wie eine Sitzung.
Weitere überlegungen:
Je nach setup, mit dem Objekt-cache, etc., Transienten können
nicht immer gespeichert werden in der DB (z.B. memcached), mit Hilfe der Transienten für
Sitzungen könnte bedeuten, dass die Daten erhalten können sperrig und füllen Speicher
schnell (in der Verwendung von memcached).
Es scheint auch, dass WP nicht die automatische garbage collection für
Transienten:
https://wordpress.stackexchange.com/questions/6602/are-transients-garbage-collected
InformationsquelleAutor der Antwort farinspace
Für das, was ich tun müssen, ist die beste Antwort, die beinhaltet:
Meine cookies sind, wie folgt:
Verwendung von PHP, ich kann die Schleife über die cookies, analysieren die
key=>value
Paare. Diese cookies lassen Sie mich wissen, dass[mshaffer]
hat ein cookie gespeichert auf wordpress, und auch authentifiziert wird, alslogged_in
. Der Ablauf der cookie ist1255298821
.In sub2ich kann eine Abfrage an die Datenbank von wordpress und ergreifen Sie die Benutzer-info:
SELECT * FROM `wp_users` WHERE user_login = 'mshaffer' ...
greifen user_iduser_email aus dieser AbfrageSELECT * FROM `wp_usermeta` WHERE user_id = '$user_id' ...
greifen viele andere Daten aus der wpMit dieser info, kann ich add to my sub2 session-variable /cookie und tun, was ich will mit den Daten. Ich kann identifizieren, wenn ich eingeloggt bin, und meinen Benutzernamen ... die lassen Sie mich schnappen Sie sich viele verschiedene Daten. Ich kann jetzt mit WordPress-Authentifizierung in meinem sub2.domain.com und leiten Sie entsprechend an.
monte
{x:
InformationsquelleAutor der Antwort mshaffer
WordPress scheint nicht zu verwenden, keine Sitzungen.
Der beste Weg, um darüber zu gehen ist die Verwendung des action-hooks, die es bietet.
InformationsquelleAutor der Antwort Anraiki
Haben Sie überprüft, die Lösung hier dies kann für hier, und sein auf einfache Weise
http://thedigilife.com/wordpress-how-to-set-session-custom-variable-while-login/
InformationsquelleAutor der Antwort Chirag Kalani
Haken eine Funktion mit
session_start()
aufwp_loaded
scheint zu funktionieren in diesem Fall.InformationsquelleAutor der Antwort vmassuchetto
Fügen Sie diesen code in wp-config.php in Erster Zeile:
Fügen Sie diesen code in theme-s header.php in Erster Zeile:
Dann wird es halten alle session-Variablen.
InformationsquelleAutor der Antwort meddyman
Wenn Sie wollen, verwenden Sie Ihre eigenen session-Werte, WordPress unterstützt es.
Sie müssen fügen Sie folgende Zeilen am Anfang der
wp-config.php
Dann fügen Sie die folgende Zeile an der Spitze der
header.php
InformationsquelleAutor der Antwort Alvin