हाल ही में हमारे उपयोगकर्ताओं में से एक ने हमें पूछा कि क्या कस्टम पोस्ट प्रकार अभिलेखागार में चिपचिपा पद जोड़ना संभव है। डिफ़ॉल्ट रूप से, वर्डप्रेस में पोस्ट के लिए स्टिकी कार्यक्षमता उपलब्ध है, लेकिन अन्य पोस्ट प्रकारों के लिए नहीं। इस आलेख में हम आपको दिखाएंगे कि वर्डप्रेस कस्टम पोस्ट प्रकार अभिलेखागारों में चिपचिपा पोस्ट कैसे जोड़ सकते हैं। हम आगे बढ़ने से पहले, संभवतः आप सीखना चाहते हैं कि वर्डप्रेस में कस्टम पोस्ट प्रकार कैसे बनाएं।
कस्टम पोस्ट प्रकार में स्टिकी डाक जोड़ना
आपको सबसे पहले ज़रूरत है स्टिकी कस्टम पोस्ट प्रकार प्लगइन को स्थापित करना और सक्रिय करना। प्लगइन सक्रिय करने के बाद, पर जाएं सेटिंग्स »पढ़ना और स्टिकी कस्टम पोस्ट प्रकार अनुभाग पर नीचे स्क्रॉल करें इसके बाद, आपको कस्टम पोस्ट प्रकारों को चुनना होगा जहां आप चाहते हैं कि यह विकल्प सक्षम होना है।
अब हमने यहाँ क्या किया है कि हमने अपने कस्टम पोस्ट प्रकारों में स्टिकी पोस्ट्स को जोड़ा है। कस्टम पोस्ट प्रकारों में चिपचिपा पदों को नियमित रूप से चिपचिपा पदों जैसे सामने वाले पृष्ठ पर प्रदर्शित किया जाएगा।
समस्या यह है कि डिफ़ॉल्ट रूप से वर्डप्रेस केवल मुख पृष्ठ पर चिपचिपा पदों को दिखाता है। यह संग्रह पृष्ठों पर चिपचिपा पदों को प्रदर्शित नहीं करता है।
कस्टम पोस्ट प्रकार अभिलेखागार में स्टिकी डाक प्रदर्शित करना
मान लीजिए कि आपके पास उपरोक्त उल्लिखित प्लगइन का उपयोग करते हुए चिपचिपा पदों के साथ मूवी की समीक्षा के लिए एक कस्टम पोस्ट प्रकार है अब आप मूवी की समीक्षा पोस्ट प्रकारों में अपने चिपचिपा पदों को अलग-अलग और गैर-चिपचिपा नियमित फिल्म समीक्षा के शीर्ष पर प्रदर्शित करने के लिए चाहते हैं। इस कदर:
इस लक्ष्य को हासिल करने के लिए, आपको अपने कस्टम पोस्ट प्रकार के लिए इस तरह एक संग्रह टेम्पलेट की आवश्यकता है: संग्रह-बाद type.php
। कस्टम पोस्ट प्रकार संग्रह पृष्ठ कैसे बनाएं, जानें। उदाहरण के लिए, यदि आपके पास एक कस्टम पोस्ट प्रकार है चलचित्र समीक्षा
तो आपके संग्रह पेज टेम्पलेट होना चाहिए संग्रह-फिल्म reviews.php
। यदि आपके पास कोई टेम्पलेट नहीं है, तो एक बनाएं बस अपनी थीम की निर्देशिका में archive.php की सामग्री की प्रतिलिपि बनाएँ और उन्हें एक नई फ़ाइल में पेस्ट करें संग्रह-your-बाद type.php
।
अगले चरण में यह कोड अपने विषय में जोड़ना है functions.php
फ़ाइल:
फ़ंक्शन wpb_cpt_sticky_at_top ($ पोस्ट) { // इसे केवल अभिलेखागार पर लागू करें अगर (is_main_query () && is_post_type_archive ()) { वैश्विक $ wp_query; $ चिपचिए_पॉस्त्स = get_option ('स्टिकी_पोस्ट्स'); $ num_posts = गणना ($ पोस्ट); $ sticky_offset = 0; // स्टिकी पोस्ट खोजें के लिए ($ i = 0; $ i आईडी, $ sticky_posts)) { $ चिपचिए_पॉस्ट = $ पोस्ट [$ i]; // मौजूदा स्थिति से चिपचिपा हटाएं array_splice ($ पद, $ i, 1); // अन्य स्टिकी के बाद, आगे बढ़ें array_splice ($ पद, $ चिपचि_ऑफ़सेट, 0, सरणी ($ चिपचि__पोस्ट)); $ Sticky_offset ++; // स्टिकी पोस्ट सरणी से पोस्ट निकालें $ offset = array_search ($ sticky_post-> आईडी, $ sticky_posts); अनसेट ($ sticky_posts [ऑफसेट ऑफसेट $]); } } // यदि आवश्यक हो तो अधिक चिपचिपा पदों के लिए देखें अगर (! खाली ($ sticky_posts)) { $ स्टिकी = get_posts (सरणी ( 'post__in' => $ sticky_posts, 'पोस्ट_प्रकार' => $ wp_query-> query_vars ['post_type'], 'post_status' => 'प्रकाशित करें' 'nopaging' => सच है )); विदेशी मुद्रा ($ sticky_post के रूप में $ स्टिकी) { array_splice ($ पद, $ चिपचि_ऑफ़सेट, 0, सरणी ($ चिपचि__पोस्ट)); $ Sticky_offset ++; } } } $ पोस्ट लौटें; } add_filter ('the_posts', 'wpb_cpt_sticky_at_top'); // चिपचिपा वर्ग को चिपचिपा पदों में शैली के चिपचिपा पदों को अलग ढंग से जोड़ें फ़ंक्शन cpt_sticky_class ($ वर्ग) { if (is_sticky ()): $ वर्ग [] = 'चिपचिपा'; $ वर्ग लौटें; अगर अंत; $ वर्ग लौटें; } add_filter ('post_class', 'cpt_sticky_class');
उपरोक्त कोड आपकी चिपचिड़ी पदों को शीर्ष पर ले जाएगा, और यदि आपका विषय उपयोग कर रहा है post_class ()
फ़ंक्शन, तो यह पोस्ट क्लास में चिपचिपा जोड़ देगा।
आप अपने चिपचिपा पदों का उपयोग करके शैली का उपयोग कर सकते हैं ।चिपचिपा
अपनी स्टाइलशीट में कक्षा उदाहरण:
।चिपचिपा { पृष्ठभूमि का रंग: #ededed; पृष्ठभूमि छवि: यूआरएल ( 'http://example.com/wp-content/uploads/featured.png'); पृष्ठभूमि दोहराने: नहीं दोहराने; पृष्ठभूमि-स्थिति: सही शीर्ष; }
हमें उम्मीद है कि इस आलेख ने आपको कस्टम पोस्ट प्रकार अभिलेखागारों में चिपचिपा पद जोड़ने में मदद की। प्रश्न और प्रतिक्रिया के लिए कृपया नीचे एक टिप्पणी छोड़ दें।
स्रोत: तारेक हसन