वह लाइन दो अलग-अलग फ़ंक्शन का उपयोग कर रही है, जिन्हें दो अलग-अलग स्पष्टीकरण की आवश्यकता है।
__ ()
यह एक अनुवाद कार्य है। यदि सेटिंग्स सही तरीके से की जाती हैं, तो यह पहले-अनुवादित स्ट्रिंग्स की सूची से पहले पैरामीटर का अनुवाद करेगा। यदि किसी इंस्टॉलेशन में इस फ़ंक्शन के उपयोग के लिए संकलित अनुवाद के साथ एक फ़ाइल है, तो यह इसका उपयोग करेगा। बेशक, प्लगइन को अपने स्वयं के अनुवाद को पैकेज करना होगा, इसलिए दूसरा पैरामीटर। simplr-reg
बताता है __()
कि स्ट्रिंग 'Please fill out this form to sign up for this site'
का अनुवाद संबंधित फ़ाइल में होना चाहिए 'simplr-reg'
(यह load_plugin_textdomain()
फ़ंक्शन के माध्यम से प्लगइन में पहले किया गया है)।
फ़ंक्शन तब अनुवाद लौटाता है। यदि लौटने के लिए कोई अनुवाद नहीं है (उदाहरण के लिए वर्तमान भाषा में संकलित अनुवाद नहीं है, तो स्ट्रिंग में उस पैकेज, आदि के लिए संकलित अनुवाद नहीं है), मूल इनपुट वापस आ गया है।
तो अंग्रेजी में एक वर्डप्रेस साइट के लिए, __( 'This', 'simplr-reg' )
कार्यात्मक रूप से समान है 'This'
। L10n (स्थानीयकरण) के बारे में अधिक जानने के लिए, कोडेक्स में इस पर पढ़ें:
http://codex.wordpress.org/I18n_for_WordPress_Developers
apply_filters ()
यह फ़ंक्शन आपको प्लगइन द्वारा उपयोग किए गए मानों को आवश्यकतानुसार फ़िल्टर करने की अनुमति देता है। यह प्लगइन डेवलपर के रूप में समझ लेने के लिए मुख्य अवधारणाओं में से एक है। वर्डप्रेस को हुक के माध्यम से विस्तारित किया जाता है, जो मूल रूप से एक्सेस पॉइंट हैं जो आपको अपने प्लगइन के कार्यों के निष्पादन और / या वर्डप्रेस का उपयोग करने वाली जानकारी / डेटा में हेरफेर करने की अनुमति देता है, आदि।
आपके द्वारा पूछे गए कोड के स्निपेट जैसे डेटा में हेरफेर करने के लिए, आप फ़ंक्शन का उपयोग करेंगे add_filter()
। यहां बताया गया है कि यह कैसे काम करता है:
add_filter( 'simplr-reg-instructions', 'wpse16573_my_filter' );
आप शायद वहां पहले तर्क को पहचान लेंगे। यह वही है जिसका उपयोग add_filter
ऊपर में किया गया है। यह हुक नाम है। दूसरा तर्क फ़िल्टर कॉलबैक है। यह एक फ़ंक्शन के लिए एक वैध कॉलबैक होना चाहिए ( कॉलबैक के बारे में और पढ़ें )। कोड की वह पंक्ति कहती है, "जब 'simplr-reg-instructions'
हुक निष्पादित होता है, तो मेरे द्वारा दिए गए कॉलबैक के साथ फ़ंक्शन को चलाएं।" apply_filters()
हुक अपने पहले तर्क में पाया जाता है, अनिवार्य रूप से अर्थ "इस हुक के लिए पंजीकृत सभी कार्यों को निष्पादित करें।" apply_filters
फिर 'Please fill out this form to sign up for this site'
उस फ़िल्टर पर फ़ंक्शंस में अन्य सभी तर्क (इस मामले में ) पास होते हैं। तो, ऊपर मैंने जिस कॉलबैक का उपयोग किया है, वह इस तरह दिखना चाहिए:
function wpse16573_my_filter( $text ){
$text = "<strong>$text</strong>";
return $text;
}
वर्डप्रेस में दो प्रकार के हुक होते हैं: फिल्टर (जिस तरह से हम यहां उपयोग कर रहे हैं) और क्रियाएं। दोनों के बीच मुख्य अंतर यह है कि फ़िल्टर आपको कुछ वापस करने की उम्मीद करते हैं और कार्रवाई नहीं करते हैं। तो, इस फ़िल्टर के लिए, ऊपर दिया गया मेरा उदाहरण कुछ html को चारों ओर जोड़ता है 'Please fill out this form to sign up for this site'
और उसे वापस लौटाता है।
क्रियाओं और हुक के बारे में यहाँ पढ़ें:
http://codex.wordpress.org/Plugin_API