एक अतिरिक्त विकल्प, जिस तरह के मापदंडों के आधार पर आपको अंदर जाने की जरूरत है। आइए इसे (2 ए) कहते हैं। आप PHP स्क्रिप्ट भी बना सकते हैं, जो गतिशील रूप से उत्पन्न text/css
या text/javascript
इसके बजाय उत्पादन text/html
करते हैं, और उन्हें डेटा प्रदान करते हैं जो उन्हें वर्डप्रेस को लोड करने के बजाय जीईटी मापदंडों का उपयोग करने की आवश्यकता होती है। बेशक यह केवल तभी काम करता है जब आपको अपेक्षाकृत कम संख्या में अपेक्षाकृत कॉम्पैक्ट मापदंडों को पारित करने की आवश्यकता होती है। उदाहरण के लिए, मान लें कि आपको केवल किसी पोस्ट के URL या किसी फ़ाइल या इसी तरह की निर्देशिका में पास होने की आवश्यकता है, आप इसे निम्न प्रकार से कर सकते हैं:
शीर्ष लेख में।
<script type="text/javascript" src="<?php print get_stylesheet_directory_uri();
?>/fancy-js.php?foo=bar&url=<?php print urlencode(get_permalink($post->ID)); ?>"></script>
फैंसी- js.php में:
<?php
header("Content-type: text/javascript");
?>
foo = <?php print json_encode($_GET['foo']); ?>;
url = <?php print json_encode($_GET['url']); ?>;
आदि।
लेकिन यह केवल आपको जीईटी मापदंडों में सीधे पास किए गए डेटा तक पहुंचने की अनुमति देता है; और यह केवल तभी काम करेगा जब आपके पास से गुजरने वाली चीजों की संख्या अपेक्षाकृत कम हो, और उन चीजों का प्रतिनिधित्व अपेक्षाकृत कॉम्पैक्ट हो। (मूल रूप से कुछ स्ट्रिंग या न्यूमेरिकल वैल्यूज़ - एक उपयोगकर्ता नाम, कहें या एक निर्देशिका; उपयोगकर्ता के हाल के सभी पोस्टों की सूची या ऐसा कुछ नहीं।)
जिसके लिए इन विकल्पों में से एक सबसे अच्छा है - मुझे नहीं पता; जो आपके उपयोग के मामले पर निर्भर करता है। विकल्प (1) में सरल होने का गुण है, और स्पष्ट रूप से आपको किसी भी वर्डप्रेस डेटा तक पहुंचने की अनुमति है जो आपको वर्डप्रेस को दो बार लोड करने के प्रदर्शन हिट के बिना आवश्यकता हो सकती है। यह लगभग निश्चित रूप से है कि आपको क्या करना चाहिए जब तक कि आपके पास एक मजबूत कारण न हो (जैसे कि स्टाइलशीट या स्क्रिप्ट के आकार के कारण जिसे आपको उपयोग करने की आवश्यकता है)।
यदि आकार आपके एक पृष्ठ के वजन के मामले में समस्या पैदा करने के लिए पर्याप्त बड़ा हो जाता है, तो आप (2) या (2%) को आज़मा सकते हैं।
या फिर - यह शायद बेहतर विचार है - आप स्क्रिप्ट के उन हिस्सों या स्टाइलशीट को अलग करने की कोशिश कर सकते हैं जो वास्तव में उन हिस्सों से गतिशील डेटा का उपयोग करते हैं जो सांख्यिकीय रूप से निर्दिष्ट किए जा सकते हैं। Ssay आपके पास एक स्टाइलशीट है जिसे # my-फैंसी तत्व के लिए एक पृष्ठभूमि पैरामीटर सेट करने के लिए वर्डप्रेस से एक निर्देशिका पारित करने की आवश्यकता है। आप इस सभी को मुख्य तत्व में रख सकते हैं:
<style type="text/css">
#my-fancy-element {
background-image: url(<?php print get_stylesheet_directory_uri(); ?>images/fancy.png);
padding: 20px;
margin: 20px;
font-weight: bold;
text-transform: uppercase;
font-size: 12pt;
/* ... KB and KB of additional styles ... */
}
#another-fancy-element {
/* ... KB and KB of additional styles ... */
}
/* ... KB and KB of additional styles ... */
</style>
लेकिन आपको ऐसा करने की आवश्यकता क्यों होगी? यहाँ केवल एक लाइन है जो वर्डप्रेस के डेटा पर निर्भर करती है। वर्डप्रेस पर निर्भर केवल लाइनों को विभाजित करने के लिए बेहतर है:
<style type="text/css">
#my-fancy-element {
background-image: url(<?php print get_stylesheet_directory_uri(); ?>images/fancy.png);
}
</style>
एक स्टैटिक स्टाइलशीट में बाकी सब कुछ डालें जिसे आप एक मानक लिंक तत्व (style.css या जो भी हो) के साथ लोड करते हैं:
#my-fancy-element {
/* background-image provided dynamically */
padding: 20px;
margin: 20px;
font-weight: bold;
text-transform: uppercase;
font-size: 12pt;
/* ... KB and KB of additional styles ... */
}
#another-fancy-element {
/* ... KB and KB of additional styles ... */
}
/* ... KB and KB of additional styles ... */
और कैस्केड काम करते हैं।
वही जावास्क्रिप्ट के लिए जाता है: ऐसा करने के बजाय:
<script type="text/javascript">
// Here comes a huge function that uses WordPress data:
function my_huge_function () {
// Do a million things ...
jQuery('#my-fancy').append('<a href="'+<?php json_encode(get_permalink($GLOBALS['post']->ID)); ?>+'">foo</a>);
// Do a million more things ...
my_other_function(<?php print json_encode(get_userdata($GLOBALS['post']->post_author); ?>);
}
function my_other_function (user) {
// Do a million things ...
}
</script>
इसके बजाय सिर तत्व में कुछ इस तरह से डाल:
<script type="text/javascript">
var WordPressPostData = {
url: <?php print json_encode(get_permalink($GLOBALS['post']->ID)); ?>,
author: <?php print json_encode(get_userdata($GLOBALS['post']->post_author)); ?>
}
</script>
और फिर ग्लोबल्स वर्डप्रेसपोस्टडाटा.उर्ल और वर्डप्रेसपोस्टडाटा.ओथोर का उपयोग करने के लिए my_huge_function () और my_other_function () को फिर से लिखना, एक स्थिर जावास्क्रिप्ट फ़ाइल में बाकी को छोड़ दें।
CSS के 40K या JS के 40K को लगभग हमेशा <1K में विभाजित किया जा सकता है जो वास्तव में डायनेमिक डेटा पर निर्भर करता है, और बाकी, जो एक स्थिर बाहरी फ़ाइल में निर्दिष्ट किया जा सकता है और फिर कैस्केड (सीएसएस के लिए) या वैश्विक रूप से सुलभ का उपयोग करके पुनर्संयोजित किया जा सकता है चर (ग्लोबल्स, डोम तत्व, या जो भी अन्य क्यूबी-छेद आप पसंद करते हैं, जेएस के लिए)।