wp_enqueue_script()
अपने विषय में उपयोग करें
मूल उत्तर व्यवस्थापक के लिए फ्रंट एंड के लिए wp_enqueue_script()
एक wp_enqueue_scripts
हुक में उपयोग करना है admin_enqueue_scripts
। यह कुछ इस तरह दिख सकता है (जो आप अपने विषय की functions.php
फ़ाइल से कॉल कर रहे हैं , ध्यान दें कि मैं कैसे स्टाइलशीट निर्देशिका का संदर्भ देता हूं):
<?php
add_action( 'wp_enqueue_scripts', 'mysite_enqueue' );
function mysite_enqueue() {
$ss_url = get_stylesheet_directory_uri();
wp_enqueue_script( 'mysite-scripts', "{$ss_url}/js/mysite-scripts.js" );
}
यही मूल बात है।
पूर्व-परिभाषित और कई आश्रित लिपियों
लेकिन मान लीजिए कि आप वर्डप्रेस के साथ शामिल डिफ़ॉल्ट स्क्रिप्ट की सूची से jQuery और jQuery UI दोनों को शामिल करना चाहते हैं और आप चाहते हैं कि आपकी स्क्रिप्ट उन पर निर्भर हो? आसान, बस वर्डप्रेस में परिभाषित पूर्व-परिभाषित हैंडल का उपयोग करके पहले दो स्क्रिप्ट शामिल करें और आपकी स्क्रिप्ट के लिए एक 3 पैरामीटर प्रदान करें wp_enqueue_script()
जो कि स्क्रिप्ट के प्रत्येक हैंडल द्वारा उपयोग किए जाने वाले स्क्रिप्ट हैंडल की एक सरणी है, जैसे:
<?php
add_action( 'wp_enqueue_scripts', 'mysite_enqueue' );
function mysite_enqueue() {
$ss_url = get_stylesheet_directory_uri();
wp_enqueue_script( 'mysite-scripts', "{$ss_url}/js/mysite-scripts.js", array( 'jquery', 'jquery-ui-sortable' ) );
}
एक प्लगइन में लिपियों
यदि आप इसके बजाय एक प्लगइन में करना चाहते हैं तो क्या होगा? plugins_url()
अपनी जावास्क्रिप्ट फ़ाइल का URL निर्दिष्ट करने के लिए फ़ंक्शन का उपयोग करें :
<?php
define( 'MY_PLUGIN_VERSION', '2.0.1' );
add_action( 'wp_enqueue_scripts', 'my_plugin_enqueue' );
function my_plugin_enqueue() {
wp_enqueue_script( 'my-script', plugins_url('/js/my-script.js',__FILE__), array('jquery','jquery-ui-sortable'), MY_PLUGIN_VERSION );
}
आपके लिपियों का संस्करण
यह भी ध्यान दें कि ऊपर हमने अपने प्लगइन को एक वर्जन नंबर दिया और इसे 4 के पैरामीटर के रूप में पास किया wp_enqueue_script()
। संस्करण संख्या स्क्रिप्ट में URL में क्वेरी तर्क के रूप में स्रोत में आउटपुट है और संस्करण बदलने पर संभवतः कैश की गई फ़ाइल को फिर से डाउनलोड करने के लिए ब्राउज़र को मजबूर करने का कार्य करता है।
केवल उन पृष्ठों पर लिपियों को लोड करें जहाँ ज़रूरत है
वेब प्रदर्शन का पहला नियम HTTP अनुरोधों को कम से कम करने के लिए कहता है, इसलिए जब भी संभव हो आपको केवल जहां लोड करने के लिए स्क्रिप्ट को सीमित करना चाहिए। उदाहरण के लिए यदि आपको केवल व्यवस्थापक में अपनी स्क्रिप्ट की आवश्यकता है, तो admin_enqueue_scripts
हुक का उपयोग करके इसे पृष्ठों तक सीमित करने के लिए इसे सीमित करें :
<?php
define( 'MY_PLUGIN_VERSION', '2.0.1' );
add_action( 'admin_enqueue_scripts', 'my_plugin_admin_enqueue' );
function my_plugin_admin_enqueue() {
wp_enqueue_script( 'my-script', plugins_url( '/js/my-script.js', __FILE__ ), array( 'jquery', 'jquery-ui-sortable' ), MY_PLUGIN_VERSION );
}
पाद में अपनी लिपियों को लोड करें
यदि आपकी स्क्रिप्ट उन लोगों में से एक है जिन्हें पाद लेख में लोड करने की आवश्यकता है, तो इसका एक 5 वाँ पैरामीटर है wp_enqueue_script()
जो वर्डप्रेस को इसे देरी से बताता है और इसे पाद लेख में रखता है (यह मानते हुए कि आपका विषय गलत नहीं था और यह वास्तव में wp_freeer हुक को सभी की तरह कहता है। अच्छी वर्डप्रेस थीम ):
<?php
define( 'MY_PLUGIN_VERSION', '2.0.1' );
add_action( 'admin_enqueue_scripts', 'my_plugin_admin_enqueue' );
function my_plugin_admin_enqueue() {
wp_enqueue_script( 'my-script', plugins_url( '/js/my-script.js', __FILE__ ), array( 'jquery', 'jquery-ui-sortable' ), MY_PLUGIN_VERSION, true );
}
महीन दानेदार नियंत्रण
अगर आपको इससे बेहतर नियंत्रण की आवश्यकता है तो Ozh के पास एक बेहतरीन लेख है जिसका शीर्षक How To: Load Javascript With Your WordPress Plugin है जो अधिक विवरण देता है।
नियंत्रण प्राप्त करने के लिए लिपियों को अक्षम करना
जस्टिन टैडलॉक का एक अच्छा लेख है, जिस पर आप चाहते हैं कि स्क्रिप्ट और शैलियों को कैसे निष्क्रिय करें :
- एकल फ़ाइलों में कई फ़ाइलों को मिलाएं (यहाँ जावास्क्रिप्ट के साथ माइलेज भिन्न हो सकती है)।
- केवल स्क्रिप्ट या शैली का उपयोग कर रहे पृष्ठों पर फ़ाइलों को लोड करें।
- सरल CSS समायोजन करने के लिए हमारी style.css फ़ाइल में महत्वपूर्ण उपयोग करना बंद करें।
PHP से JS में पासिंग वैल्यूज़ के साथ wp_localize_script()
अपने ब्लॉग पर व्लादिमीर प्रीलोवैक के पास वर्डप्रेस प्लगइन्स में जावास्क्रिप्ट कोड जोड़ने के लिए सर्वोत्तम अभ्यास का एक बेहतरीन लेख है, जहां वह wp_localize_script()
आपके सर्वर-साइड PHP में चर के मूल्य को बाद में आपके क्लाइंट-साइड जावास्क्रिप्ट में उपयोग करने की अनुमति देने के लिए चर्चा करते हैं ।
वास्तव में ठीक अनाज नियंत्रण के साथ wp_print_scripts()
और अंत में अगर आपको वास्तव में ठीक-ठाक नियंत्रण की आवश्यकता है, तो आप पोस्ट के अनुसार बीयर प्लैनेटwp_print_scripts()
पर चर्चा कर सकते हैं कि कैसे सीएसएस और जावास्क्रिप्ट को सम्मिलित किया जाए और केवल जब पोस्ट की आवश्यकता हो ।
Epiloque
वर्डप्रेस के साथ जावास्क्रिप्ट फ़ाइलों को शामिल करने के सर्वोत्तम तरीकों के लिए इसके बारे में है। अगर मुझे कुछ याद आया (जो मेरे पास शायद है) तो मुझे टिप्पणियों में बताना सुनिश्चित करें ताकि मैं भविष्य के यात्रियों के लिए एक अपडेट जोड़ सकूं।