WordPress 自定义 菜单 返回数组 自定义html输出格式 图文教程

通常我们在WordPress模板主题开发中,会遇到自定义菜单的情况。一般我们使用 wp_nav_menu 函数来输出就行了。

假如我们需要自定义一些链接地址或者名称的话,下面我们给出记录一下代码,可以自定义输出格式,或者数组。

// Get the nav menu based on $menu_name (same as 'theme_location' or 'menu' arg to wp_nav_menu)
// This code based on wp_nav_menu's code to get Menu ID from menu slug
 
$menu_name = 'custom_menu_slug';
 
if ( ( $locations = get_nav_menu_locations() ) && isset( $locations[ $menu_name ] ) ) {
    $menu = wp_get_nav_menu_object( $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 ) {
        $title = $menu_item->title;
        $url = $menu_item->url;
        $menu_list .= '<li><a href="' . $url . '">' . $title . '</a></li>';
    }
    $menu_list .= '</ul>';
} else {
    $menu_list = '<ul><li>Menu "' . $menu_name . '" not defined.</li></ul>';
}
// $menu_list now ready to output
echo $menu_list;

官方文档:wp_get_nav_menu_items() | Function | WordPress Developer Resources

腾讯云限时秒杀【点击购买】

搬瓦工,CN2高速线路,1GB带宽,电信联通优化KVM,延迟低,速度快,建站稳定,搬瓦工BandwagonHost VPS优惠码BWH26FXH3HIQ,支持<支付宝> 【点击购买】!

Vultr$3.5日本节点,512M内存/500G流量/1G带宽,电信联通优化,延迟低,速度快【点击购买】!

阿里云香港、新加坡VPS/1核/1G/25G SSD/1T流量/30M带宽/年付¥288【点击购买】


`微信`扫码 加好友,入群
WordPress插件主题开发定制
Linux服务器配置迁移
扣扣群 665443669

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注