तो निम्नलिखित परिदृश्य है।
मैं डेटाबेस से लॉग को साफ करने के लिए एक क्रिया जोड़ता हूं:
add_action( 'myplugin_clean_logs', array( 'MyPlugin_Logs', 'clean_logs' ) );
अब मैं इस क्रिया को समय-समय पर चलाना चाहता हूं:
wp_schedule_event( current_time( 'timestamp' ), 'daily', 'myplugin_clean_logs' );
और इसे मैन्युअल रूप से निष्पादित करें:
do_action( 'myplugin_clean_logs' );
विधि MyPlugin_Logs::clean_logs
प्रभावित पंक्तियों की गिनती लौटाती है या गलत अगर कुछ दूसरी दिशा में चला गया।
अब मैं उन पंक्तियों की संख्या प्रदर्शित करना चाहता हूं जिन्हें हटा दिया गया है। मैं कुछ इस तरह की कल्पना करेगा:
$affected_rows = do_action( 'myplugin_clean_logs' );
echo $affected_rows . ' entries have been deleted.';
लेकिन जैसा कि do_action
कोई मूल्य नहीं लौटाएगा, मुझे नहीं पता कि वापसी मूल्य कैसे प्राप्त करें।
क्या मुझे मैन्युअल रन पर सीधे विधि निष्पादित करनी चाहिए, लेकिन शेड्यूल ईवेंट पर कार्रवाई का उपयोग करें?