注册导航的自定义HTML输出

时间:2014-04-29 作者:JadedEric

是否可以从自定义导航中删除标题/url以创建新的HTML结构?

我正在创建一个非常独特的菜单结构,基于用户在WordPress中创建的自定义菜单,但是wp_nav_menu() 似乎不会仅将标题/url输出到数组中。我很可能从wp_nav_menu() 并运行一个正则表达式来去除我需要的各种元素,但如果已经存在一个方法,这似乎是杀伤力过大了?

感谢您的帮助。

1 个回复
SO网友:A.Jesin

这个wp_get_nav_menu_items() 函数返回WP\\u Post对象的索引数组。

以下是一个示例:

$menu_name = \'custom_menu_slug\';
$menu_locations = get_nav_menu_locations()
$menu = wp_get_nav_menu_object( $menu_locations[ $menu_name ] );

$menu_items = wp_get_nav_menu_items( $menu->term_id );

$menu_list = \'<ul id="menu-\' . $menu_name . \'">\';

foreach ( (array) $menu_items as $key => $menu_item ) {
    $menu_list .= \'<li><a href="\' . $menu_item->url . \'">\' . $menu_item->title . \'</a></li>\';
}

$menu_list .= \'</ul>\';    
资料来源:http://codex.wordpress.org/Function_Reference/wp_get_nav_menu_items

结束

相关推荐

How to add taxonomy in menus?

书籍(自定义帖子类型)小说(税)科学(税)历史(税)--书籍体裁(税务)小说(术语)科学(学期)历史(学期)以下哪一项是做这件事的“好方法”?对于前一个(这是我目前在管理菜单中的功能,我为每个功能都提供了“register\\u taxonomy”功能),我无法选择要在菜单中显示的“Tax”。而对于后者,我可以将它们添加到菜单中,只需要一个“register\\u taxonomy”函数。