2012-01-19 6 views
8

के माध्यम से जोड़ा। प्लगइन (मैं कॉपी नहीं कर सकते/पेस्ट - वाणिज्यिक प्लगइन) तो जैसे ADD_ACTION को लाने का प्रयास:कैसे एक कार्रवाई को निकालने के लिए मैं एक कार्य है कि एक अलग functions.php फ़ाइल में एक प्लगइन रजिस्टर, लेकिन वाक्य रचना मुझे स्टंपिंग है दूर करने के लिए कोशिश कर रहा हूँ एक वर्ग

class Plugin_Class{ 

    function add_actions(){ 
    add_action('tag', array(&$this, 'function_to_remove'), 10); 
    } 

    function_to_remove(){ 
    global $wp; 
    // Code here 
    } 
} 

मैं ज्यादातर &$this के साथ भ्रमित कर रहा हूँ। मुझे पता है कि इस वर्ग के उदाहरण को संदर्भित करता है, लेकिन मेरे शोध पर आधारित यह इतना की तरह निकाल देना चाहिए:

Need help with remove_action()

मैं बस कैसे मेरी स्थिति के लिए वाक्यविन्यास साथ आने के लिए पता नहीं है। वैश्विक चर को परिभाषित क्यों करें? क्या मुझे अपने मामले में ऐसा करने की ज़रूरत है? मैं यह सोचते हैं रहा हूँ विजेट सरणी WP कोर कोड से आता है, लेकिन मैं कैसे मैं अपने मामले है, जो बहुत सरल प्रतीत हो रहा है में इस लागू करने की आवश्यकता पर संदेह में हूँ। क्षमा करें अगर यह सामान उपचारात्मक है।

अग्रिम में किसी भी मदद के लिए धन्यवाद।

+0

अधिक पढ़ना: http://wordpress.org/support/topic/remove_action-problem-when-function-is-within-class – Steve

+0

मैं कहता हूं कि यह कहां कहता है, "हमारे पास वैश्विक है"। तो मुझे कक्षा में एक वैश्विक परिभाषित करने की जरूरत है? – Steve

+1

मैं अब मिल वैश्विक जरूरतों चर है कि जब वर्ग instantiated था सौंपा गया था करने के लिए स्थापित किया जाना है। कोशिश कर रहा है लेकिन काम नहीं कर रहा है। http://wordpress.stackexchange.com/questions/36013/remove-action-or-remove-filter-with-external-classes – Steve

उत्तर

1

& $ यह एक प्रति के बजाय एक संदर्भ बनाता है। इस तरह जब आप उस चर को बाद में एक्सेस करते हैं, तो आप वास्तव में इस ऑब्जेक्ट तक पहुंचते हैं, न कि प्रतिलिपि।

http://www.php.net/manual/en/language.references.whatdo.php

के बारे में सरणी पैरा देखें "वास्तव में संदर्भ द्वारा बताए नहीं है, लेकिन बराबर।"

संबंधित मुद्दे

 संबंधित मुद्दे