क्यों ठीक से पंजीकरण और कतार लगाना मायने रखता है
यह समय में होना चाहिए - स्क्रिप्ट से पहले / शैली पृष्ठ पर आउटपुट होने के लिए है, अन्यथा यह बहुत देर हो चुकी है;
यह सशर्त होना चाहिए - अन्यथा आप सामान लोड कर रहे हैं जहां आपको इसकी आवश्यकता नहीं है और प्रदर्शन और कार्यक्षमता के मुद्दों का कारण बनता है, इसके लिए आपको WP वातावरण को देर से चरण में लोड करने की आवश्यकता है।
प्रक्रिया के तीन चरण
रजिस्टर - यह स्क्रिप्ट / शैली के बारे में WP विवरण बताता है और यह उस जानकारी को संग्रहीत करता है;
enqueue - (अक्सर एक wp_enqueue_*()
कॉल में रजिस्टर के साथ एक साथ lumped ) - यह WP को इसकी सेटिंग्स (निर्भरता, शीर्षलेख / पाद लेख लोडिंग) के अनुसार लिपियों / शैली को कतार में जोड़ने के लिए कहता है।
प्रिंट - यह तब होता है जब WP प्रक्रिया करता है, अपने लिए कुछ विशिष्ट लोड करने की कोशिश करता है या जब आप स्पष्ट रूप से wp_print_*()
फ़ंक्शन के साथ करते हैं।
कार्यों और हुक के सामने के अंत संरचना
wp_head()
wp_footer()
wp_footer
- (10)
wp_print_footer_scripts()
यह बहुत गहरा है, लेकिन यह महत्वपूर्ण बिंदुओं के लिए सरल और अच्छा है:
wp_enqueue_scripts
सामने वाले छोर पर स्क्रिप्ट और शैलियों को पंजीकृत करने और कतारबद्ध करने के लिए सबसे उपयुक्त हुक है और यह विशेष रूप से इसके लिए है;
init
इससे कोई लेना-देना नहीं है, यह काम करेगा, लेकिन - पिछले कोडेक्स सिफारिश का उपयोग करने के लिए केवल यह गलत था ;
आप wp_print_footer_scripts()
कॉल से पहले किसी भी बिंदु पर पाद लेख के लिए कतारबद्ध स्क्रिप्ट (शैलियों नहीं) के साथ दूर हो सकते हैं ;
wp_print_*
हुक रजिस्टर / कतार के लिए उपयुक्त नहीं हैं , वे कोड में बिंदु हैं जब आउटपुट पहले से ही हो रहा है। वे मैनुअल / कस्टम स्क्रिप्ट / स्टाइल आउटपुट के लिए उपयुक्त हैं।
व्यवस्थापक के बारे में क्या?
खैर, कार्यक्षमता वहाँ और भी जटिल, विस्तृत और नेस्टेड है।
शुरुआत के लिए बस admin_enqueue_scripts
हुक का उपयोग करें (यह $hook_suffix
सशर्त सामान के लिए वैश्विक हो जाता है ) सब कुछ के लिए, यह ज्यादातर मामलों के लिए अच्छी तरह से करेगा;
जब आपको कुछ जटिल की आवश्यकता होती है - admin-header.php
उचित हुक के लिए वहां से गुजरें और खोदें।
लॉगिन के बारे में क्या?
नाम का एक विशिष्ट हुक है login_enqueue_scripts
।
admin_print_scripts-{xxx}
। मैंने पाया किadmin_print_scripts
बुलाया गया था, लेकिन-{xxx}
उदाहरण के लिए नहीं ।-edit.php
उदाहरण के लिए। यह सही है किadmin_print_scripts-xxx
आप इसमें क्या सलाह देंगे और आप इसके बजाय क्या सिफारिश करेंगे - मान लीजिए कि मैं स्क्रिप्ट / शैलियों को कस्टम पोस्ट टाइप एड / एडिट पेज (मेटाबेस के लिए) में शामिल करना चाहता हूं