2014-02-11 117 views
1

我需要添加自定義屬性 WordPress的菜單項。添加自定義屬性WordPress的導航項目

<li id="menu-item-365" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-children-0"> 
<a href="http://www.mywebsite.com/whats-new/">WHATS NEW</a> 
</li> 

但我需要這個代碼,這樣

<li id="menu-item-365" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-children-0"> 
<a href="http://www.mywebsite.com/whats-new/" data-reveal-id="myModal1" data-animation="fade">WHATS NEW</a> 
</li> 

有人可以請幫助?

回答

7

過濾此,靶向特定的菜單ID是相當容易:

以下內容添加到您的functions.php文件。

add_filter('nav_menu_link_attributes', 'my_nav_menu_attribs', 10, 3); 
function my_nav_menu_attribs($atts, $item, $args) 
{ 
    // The ID of the target menu item 
    $menu_target = 365; 

    // inspect $item 
    if ($item->ID == $menu_target) { 
    $atts['data-reveal-id'] = 'myModal1'; 
    $atts['data-animation'] = 'fade'; 
    } 
    return $atts; 
} 
+0

感謝幫助,但沒有運氣! – Pasindu

+0

你好,這對我有用:)你用wp_nav_menu打電話給你的菜單嗎? – SMacFadyen

+0

只是爲了確認,我已經在我的本地主機上工作了,你可以評論你是如何實現你的菜單和上面的代碼? – SMacFadyen

-1

使用jquery。

<script src="//code.jquery.com/jquery-1.10.2.js"></script> 
<script type="text/javascript"> 

    $(document).ready(function() { 
     $('#menu-item-365').find('a').attr('data-reveal-id', 'myModal1'); 
     $('#menu-item-365').find('a').attr('data-animation', 'fade'); 
    }); 
</script> 
+0

感謝您的輸入,但它沒有工作:( – Pasindu

+0

現在它的工作,但其他的事情,使用jQuery,不能正常工作..你能幫忙嗎?網站使用jQuery v1.10.2 – Pasindu

+0

沒有問題更新wordpress。 – 2014-02-11 11:44:13

1
<?php 

$defaults = array(
    'theme_location' => '', 
    'menu'   => '', 
    'container'  => 'div', 
    'container_class' => '', 
    'container_id' => '', 
    'menu_class'  => 'menu', 
    'menu_id'   => '', 
    'echo'   => true, 
    'fallback_cb'  => 'wp_page_menu', 
    'before'   => '', 
    'after'   => '', 
    'link_before'  => '', 
    'link_after'  => '', 
    'items_wrap'  => '<ul id="%1$s" class="%2$s">%3$s</ul>', 
    'depth'   => 0, 
    'walker'   => '' 
); 

wp_nav_menu($defaults); 

?> 
+1

你能解釋一下這個小點嗎? – Pasindu

+1

http://codex.wordpress.org/Function_Reference/wp_nav_menu –

0

WordPress的functions.php的

如果您需要將屬性添加到多個菜單項:

function add_specific_menu_atts($atts, $item, $args) { 

$menu_items = array(66,72); 

if (in_array($item->ID, $menu_items)) { 
    $atts['data-ps2id-offset'] = '-75'; 
} 

return $atts; 
} 
add_filter('nav_menu_link_attributes', 'add_specific_menu_atts', 10, 3); 
相關問題