wp_get_nav_menu_items
云策文档标注
概述
wp_get_nav_menu_items 是一个 WordPress 过滤器,用于在返回导航菜单项时进行过滤。开发者可以通过此 Hook 修改菜单项数组,实现自定义逻辑。
关键要点
- 过滤器名称:wp_get_nav_menu_items
- 参数:$items(菜单项对象数组)、$menu(菜单对象)、$args(检索菜单项的参数数组)
- 用途:允许开发者过滤或修改导航菜单项,例如基于条件排除特定项
- 引入版本:WordPress 3.0.0
代码示例
function wpdocs_exclude_menu_items( $items ) {
foreach ( $items as $key => $item ) {
// If the menu item does not have the 'custom-item-class' class
if ( ! in_array( 'custom-item-class', $item->classes ) ) {
continue;
}
unset( $items[ $key ] );
}
return $items;
}
add_filter( 'wp_get_nav_menu_items', 'wpdocs_exclude_menu_items' );
原文内容
Filters the navigation menu items being returned.
Parameters
$itemsarray-
An array of menu item post objects.
$menuobject-
The menu object.
$argsarray-
An array of arguments used to retrieve menu item objects.
Source
return apply_filters( 'wp_get_nav_menu_items', $items, $menu, $args );
Changelog
| Version | Description |
|---|---|
| 3.0.0 | Introduced. |
Skip to note 2 content
Dragi Postolovski
function wpdocs_exclude_menu_items( $items ) { foreach ( $items as $key => $item ) { // If the menu item does not have the 'custom-item-class' class if ( ! in_array( 'custom-item-class', $item->classes ) ) { continue; } unset( $items[ $key ] ); } return $items; } add_filter( 'wp_get_nav_menu_items', 'wpdocs_exclude_menu_items' );