So erhalten Sie Sitzungsvariablen in WordPress-Plugins

Lesezeit: 3 Minuten

Hallo, ich bin neu bei WordPress und habe ein Plugin erstellt, bei dem ich alle Sitzungsdaten drucken muss. Zuerst habe ich eine Datei im Plugin-Ordner erstellt und Code wie hinzugefügt

function myplugin_classname() {
    print_r($_SESSION);
}

Und ich habe ein Klickereignis für zwei Schaltflächen mit Klasse eingefügt tags wie

$('.tags').on('click',function(){
     $.post('my_page.php',{val:$(this).val()});
});

und in my_page.php habe ich like gehalten

$_SESSION['tag'] = $_POST['val'];

aber wenn es um das Drucken der Session-Variablen geht myplugin_classname (durch Aktualisieren der Seite) druckt es nicht neu zugewiesene Sitzungsvariable….Wie kann ich das lösen? Ich habe die Sitzung durch begonnen theme-my-login Anmeldung.

  • haben Sie session_start()? in deiner my_page.php

    – DevZer0

    15. Juli 2013 um 12:29 Uhr

  • Wenn ich session_start() setze, funktioniert es tatsächlich, aber wenn ich mich abmelde, zeigt es immer noch die Sitzungsvariable, die von dieser Seite initialisiert wurde

    – GautamD31

    15. Juli 2013 um 12:30 Uhr

  • Möglicherweise müssen Sie wp_logout optimieren, es setzt möglicherweise die Variablen zurück, anstatt eine session_destroy() auszuführen

    – DevZer0

    15. Juli 2013 um 12:31 Uhr

  • wo kann ich das [email protected]??

    – GautamD31

    15. Juli 2013 um 12:31 Uhr

  • Kann sein Problem mit Theme-My-Login-Plugin sein..??

    – GautamD31

    15. Juli 2013 um 12:32 Uhr

Benutzer-Avatar
Datta Parad

Sie müssen hinzufügen <?php session_start(); ?> am Anfang von my_page.php

Danach können Sie zum Zerstören der Sitzung die Aktion wp_logout in WordPress verwenden. Code ist wie folgt

<?php function custom_unset_session() {
   // your code 
   unset($_SESSION['tag']);
} 
add_action('wp_logout', 'custom_unset_session');
?>

  • Wenn ich session_start() setze, funktioniert es tatsächlich, aber wenn ich mich abmelde, zeigt es immer noch die Sitzungsvariable, die von dieser Seite initialisiert wurde

    – GautamD31

    15. Juli 2013 um 12:32 Uhr

  • dann setzen Sie die Sitzungsvariable zum Zeitpunkt der Abmeldung zurück. Sie können den folgenden Code verwenden und diesen Code in Ihre Theme-Functions.php-Datei einfügen. <?php function custom_unset_session() { // your code unset($_SESSION['tag']); } add_action('wp_logout', 'custom_unset_session'); ?>

    – Datta Parad

    15. Juli 2013 um 12:34 Uhr


  • Dann, wie man die Sitzung aufhebt..??unset($_SESSION)..??

    – GautamD31

    15. Juli 2013 um 12:37 Uhr

  • mit dem folgenden Code <?php function custom_unset_session() { // your code unset($_SESSION['tag']); } add_action('wp_logout', 'custom_unset_session'); ?>

    – Datta Parad

    15. Juli 2013 um 12:38 Uhr

  • ….Das ist großartig …. bitte aktualisieren Sie Ihre Ans mit dem obigen Kommentar, wenn andere das Gleiche wollen, erhalten sie Vorteile

    – GautamD31

    15. Juli 2013 um 12:48 Uhr

Benutzer-Avatar
Nanhe Kumar

// On your plugin  functions.php
function register_session() {
    if (!session_id())
        session_start();
}

add_action('init', 'register_session');

function your_function() {
    //Here you can unset your session variabl
}

add_action('wp_logout', 'your_function');
//Now you can use
$_SESSION['tag'] = $_POST['val'];

  • Wenn ich session_start() setze, funktioniert es tatsächlich, aber wenn ich mich abmelde, zeigt es immer noch die Sitzungsvariable, die von dieser Seite initialisiert wurde

    – GautamD31

    15. Juli 2013 um 12:30 Uhr

  • Jetzt können Sie sehen, dass ich eine Funktion zum Abmelden hinzugefügt habe

    – Nanhe Kumar

    15. Juli 2013 um 12:38 Uhr

Diese beiden Artikel sind auch hilfreich:

http://www.frank-verhoeven.com/using-session-in-wordpress/

http://devondev.com/2012/02/03/using-the-php-session-in-wordpress/

1352020cookie-checkSo erhalten Sie Sitzungsvariablen in WordPress-Plugins

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy