मैं ट्विटर बूटस्ट्रैप हूं और मेनू लिंक के टैग में डेटा-टॉगल = "मोडल" विशेषता जोड़ने की आवश्यकता है। ट्विटर बूटस्ट्रैप ड्रॉपडाउन मेनू के लिए पैदल चलने वाले अधिकांश परिणामों के संदर्भ को खोजने पर हालांकि इस मेनू में कोई ड्रॉपडाउन नहीं है और मुझे केवल विशेष विशेषता जोड़ने की आवश्यकता है।
इसके बाद मैंने यह पाया: प्लगइन के बिना मेनू आइटम में कस्टम विशेषताएँ जोड़ें जो कि वर्डप्रेस 3.6+ में दिखाई देने वाली बहुत उपयोगी है। हमें अब लंबे जटिल वॉकर नहीं करना है और इसके बजाय इसका उपयोग कर सकते हैं: http://codex.wordpress.org/Plugin_API / Filter_Reference / nav_menu_link_attributes
हालाँकि यह चल रहा है कि एपीआई संदर्भ काफी नंगे है और कोई उदाहरण नहीं देता है और चूंकि यह नया है इसलिए Google पर इसके बहुत कम संदर्भ हैं।
मैंने पहली बार यह कोशिश की:
add_filter( 'nav_menu_link_attributes', 'mywp_contact_menu_atts', 10, 3 );
function pb_contact_menu_atts( $atts, $item, $args )
{
// inspect $item, then …
$atts['data-toggle'] = 'modal';
return $atts;
}
और जो अपेक्षा के अनुरूप काम करता है वह मेनू में सभी टैग के लिए विशेषता जोड़ता है। इसलिए मैं यह पता लगाने की कोशिश कर रहा हूं कि एक मेनू आइटम को # मेनू-आइटम -7857 या इस तरह से कैसे लक्षित किया जाए।
क्या किसी को पता है कि एक मेनू आइटम को लक्षित करने का एक उदाहरण कहां मिल सकता है या यह निर्धारित करने में सक्षम है कि उपरोक्त लिंक किए गए एपीआई संदर्भ में जानकारी पर कैसे आधारित हो?
ध्यान देने के लिए, मुझे निम्नलिखित एक उदाहरण मिला लेकिन यह केवल उन वस्तुओं को लक्षित करता है जिनमें बच्चे होते हैं जो मदद नहीं करते लेकिन सही दिशा में हो सकते हैं:
add_filter('nav_menu_link_attributes', function($atts, $item, $args) {
if ( $args->has_children )
{
$atts['data-toggle'] = 'dropdown';
$atts['class'] = 'dropdown-toggle';
}
return $atts;
}, 10, 3);
अद्यतन - नीचे दिए गए उत्तर की तरह लगता है कि यह किसी चीज़ पर है, लेकिन यह निर्धारित करने में सक्षम नहीं था कि वास्तव में मेरी विशिष्ट लिंक को लक्षित करने के लिए संख्या कैसे ढूंढें और एक कार्यशील उदाहरण में उस सशर्त को कैसे जोड़ें / कैसे जोड़ें। एक टिप्पणी जोड़ी, लेकिन वापस नहीं सुना। चूंकि 18 दिनों के बारे में सोचा गया था कि मैं देखूंगा कि क्या कोई इनाम मदद करेगा।
जब मैं उस लिंक के लिए कोड देखता हूं जिसे मैं लक्षित करना चाहता हूं:
<li id="menu-item-7858" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-7858"><a href="#" data-toggle="modal">Chat</a></li>
मुझे संख्या 7858 दिखाई दे रही है, इसलिए शायद यह सोचकर कि वह संख्या है जिसे मुझे लक्षित करना चाहिए।
लेकिन जब मैं उदाहरण के लिए प्रयास करता हूं:
add_filter( 'nav_menu_link_attributes', 'my_chat_menu_atts', 10, 3 );
function my_chat_menu_atts( $atts, $item, $args ) {
if ( 7857 == $item['ID'] ) {
// inspect $item, then …
$atts['onclick'] = 'SnapEngage.startLink();';
return $atts;
}
}
हालाँकि यह जोड़ना कि यदि एक टिप्पणीकार ने सुझाव दिया है तो मुझे निम्नलिखित त्रुटि मिलेगी:
Fatal error: Cannot use object of type WP_Post as array
मैं मान रहा हूं कि अधिक कोड की आवश्यकता है लेकिन एक खो जाने पर। यदि यह कथन काम करता है तो एक अनुस्मारक के रूप में यह एक लिंक के बजाय सभी लिंक को लक्षित करता है जिसे मैं लक्षित करना चाहता हूं।