( मॉडरेटर नोट: मूल रूप से "wp_nav_menu पूर्वज वर्ग नेविगेशन संरचना में बच्चों के बिना" शीर्षक था)
wp_nav_menu
मेरे हेडर में एक है , जिसमें तीन पृष्ठ थे। जब मैं उन पृष्ठों में से एक पर होता हूं, li
तो मेनू में उस पृष्ठ को वर्ग प्राप्त होता है .current_page_item
। इन तीन पन्नों में टेम्प्लेट हैं, और इन टेम्प्लेट में एक निश्चित सामग्री प्रकार के सभी पोस्ट प्राप्त करने के लिए कस्टम क्वेरी हैं। वास्तव में, इस शीर्ष स्तर पृष्ठ के कथित "बच्चे" वास्तव में बच्चे नहीं हैं, वे केवल उस सामग्री प्रकार के हैं जिसे मैंने उस शीर्ष स्तर पृष्ठ के साथ एक टेम्पलेट का उपयोग करके जोड़ा है।
'current-ancestor'
जब कोई उपयोगकर्ता किसी विशिष्ट पोस्ट प्रकार के एकल पृष्ठ को ब्राउज़ कर रहा हो, तब उस वर्ग को प्राप्त करने के लिए मैं शीर्ष स्तर के मेनू आइटमों को पसंद करूंगा , केवल उस पेज से संबंधित टेम्पलेट फ़ाइल में एक कस्टम क्वेरी में।
आशा है कि समझ में आता है - यदि नहीं, तो मुझे बताएं कि मैंने आपको कहां खो दिया है! किसी भी मदद की बहुत सराहना करते हैं।
विशेष जानकारी के लिए --Edited: उदाहरण के लिए, मैं नामक एक स्थैतिक पृष्ठ है कार्यशालाएं कि एक टेम्पलेट का उपयोग कर रहा है। इसका स्लग वर्कशॉप है । टेम्प्लेट में कस्टम get_posts फ़ंक्शन और इसके भीतर लूप होता है, जो कार्यशालाओं नामक एक कस्टम सामग्री प्रकार के सभी पोस्टों को खींचता और प्रदर्शित करता है । यदि मैं इनमें से किसी एक कार्यशाला के शीर्षक पर क्लिक करता हूं, तो मुझे उस सामग्री के पूर्ण अंश पर ले जाया जाता है। कस्टम पोस्ट प्रकार की पर्मलिंक संरचना कार्यशालाओं / पोस्टनाम पर सेट है, इसलिए जैसे ही उपयोगकर्ता इसे देखता है, सामग्री के ये टुकड़े वर्कशॉप पेज के बच्चे होते हैं, जब वास्तव में वे सभी एक सामग्री प्रकार के होते हैं लेकिन पेज से असंबंधित होते हैं। यह वह अंतर है जिसे मुझे मेनू में प्रभावी ढंग से बंद करने की आवश्यकता है, प्रकार की कार्यशाला की सामग्री ब्राउज़ करते समय 'कार्यशालाओं' मेनू आइटम को उजागर करना।
फिर से, आशा है कि समझ में आता है, मुझे लगता है कि मैंने एक पैराग्राफ में 20 बार 'वर्कशॉप' कहा!
/workshops/
और जब कोई उपयोगकर्ता एक वर्कशॉप पेज (यानी /workshops/example-workshop/
) पर है तो आप "वर्कशॉप्स" मेनू आइटम को क्लास current_page_item
असाइन करना चाहते हैं, सही है?