2013-07-15 14 views
5

हाय iam नया पाने के लिए कैसे और मैं जिस पर मैं सभी सत्र data.First मैं प्लगइन फ़ोल्डर में एक फ़ाइल बनाई औरवर्डप्रेस plugins में सत्र चर वर्डप्रेस को

function myplugin_classname() { 
    print_r($_SESSION); 
} 
की तरह कोड को शामिल किया है मुद्रित करने के लिए जरूरत है एक प्लगइन बनाया है

और मैं

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

तरह वर्ग tags के साथ दो बटन के लिए एक क्लिक करें घटना डाल दिया और my_page.php में मैं

$_SESSION['tag'] = $_POST['val']; 
01 की तरह रखा

लेकिन जब myplugin_classname (पृष्ठ को रीफ्रेश करके) सत्र सत्रों को प्रिंट करने की बात आती है तो यह नए असाइन किए गए सत्र चर प्रिंट करता है .... इसे कैसे हल करें .. ?? मैंने theme-my-login लॉगिन के माध्यम से सत्र शुरू किया है।

+0

आप की क्या ज़रूरत है 'session_start()'? आपके 'my_page.php' – DevZer0

+0

असल में यदि मैं session_start() डालता हूं तो यह काम करेगा लेकिन अगर मैंने लॉग आउट किया है तो यह उस सत्र से शुरू होने वाले सत्र चर को दिखाता है जो आपको – Gautam3164

+0

से प्रारंभ किया गया है, आपको wp_logout को ट्वीक करने की आवश्यकता हो सकती है, यह संभवतः चर को अनसेट कर सकती है session_destroy() – DevZer0

उत्तर

3

आप सत्र नष्ट करने के लिए आप वर्डप्रेस में कार्रवाई wp_logout उपयोग कर सकते हैं my_page.php

की शुरुआत में <?php session_start(); ?> जोड़ने के लिए उसके बाद की जरूरत है। कोड के रूप में

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

के लिए फ़ंक्शन जोड़ा है असल में अगर मैं session_start() डालता हूं तो यह काम करेगा लेकिन अगर मैंने लॉग आउट किया है तो यह उस सत्र से शुरू होता है जो उस पृष्ठ से शुरू होता है – Gautam3164

+0

फिर सत्र को अनसेट करें लॉगआउट के समय परिवर्तनीय। आप निम्न कोड का उपयोग कर सकते हैं और इस कोड को थीम functions.php फ़ाइल में जोड़ सकते हैं। ' ' –

+0

फिर सत्र को कैसे सेट करें .. ?? अनसेट ($ _ सत्र) .. ?? – Gautam3164

2
// 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']; 
+0

असल में अगर मैं session_start() डालता हूं तो यह काम करेगा लेकिन अगर मैंने लॉग आउट किया है तो यह अभी भी दिखाता है सत्र परिवर्तक जो उस पृष्ठ से शुरू हुआ – Gautam3164

+0

अब आप देख सकते हैं कि मैंने लॉगआउट –