मुझे आश्चर्य है कि अगर कोई मेरी समस्या पर मुझे सलाह दे सकता है। डिबगिंग उद्देश्यों के लिए मेरे प्लगइन स्टोर का हिस्सा फाइलों को लॉग करता है। मैंने अपने व्यवस्थापक पृष्ठ में jquery और wp_localise_script का उपयोग करके उन्हें सफलतापूर्वक (div # log) प्रदर्शित किया है। मेरे पास इन लॉग को हटाने के लिए एक बटन है, लेकिन मैं अनिश्चित हूं कि इसे कैसे संसाधित किया जाए। मुझे लगता है कि अजाक्स यहाँ काम में आ सकता है लेकिन निश्चित नहीं है कि कहाँ से शुरू करें।
यहाँ मेरे कोड के प्रासंगिक भाग हैं:
admin_enqueue_scripts (क्रिया)
$args = array(get_option('wow_tweets_log'));//log files fetched from wp_options table
wp_enqueue_script('wow_tweet');//registered earlier on with jQuery dependency
wp_localize_script('wow_tweet', 'wow_vars', $args);
व्यवस्थापक पृष्ठ
<tr><th scope="row"><strong>Debugging</strong></th><td>
<div id="debug" class="button-primary">Debug</div><!--debug button shows logs-->
<div id="hide_debug" class="button-secondary">Hide</div><!--debug button hides logs-->
<div id="clear_log" class="button-secondary">Empty Log</div><!--Press to delete logs-->
</td></tr>
<tr><th scope="row"></th><td><div id="log"><!--Logs show here--></div></td></tr>
जावास्क्रिप्ट
jQuery(document).ready(function() {
var debug_show = jQuery('#log').hide();//hides log by default
jQuery('#debug').click(function(){//on click shows logs files in div#log
for (var i = 0, l = wow_vars.length; i < l; i++) {
var data = wow_vars[i];
}
jQuery('#log').show().html(data);
});
jQuery('#hide_debug').click(function()
{
debug_show.hide();
});
});
लॉग को खाली करने की कार्रवाई
function clear_log(){
delete_option('wow_tweets_log');//am stuck on how to invoke this
/*die(); would go at the end if ajax used*/
}
add_action('clear_log','clear_log');
अब तक यह स्क्रिप्ट सभी लॉग फ़ाइलों को दिखाने के लिए काम कर रही है, अब मुझे #clear_log पर क्लिक करते समय सभी को हटाना होगा। मुझे पता है कि init पर एक do_action प्लग करना, पेज लोड होते ही उन्हें डिलीट कर देगा, जिससे मेरी जावास्क्रिप्ट बेकार हो जाएगी इसलिए मुझे लगता है कि एकमात्र विकल्प अजाक्स है! क्या मुझे wp_localize_script () में एक और संदर्भ जोड़ने की आवश्यकता है? किसी भी सहायता की सराहना की जाएगी।