WordPress 的 add_admin_bar_menus 钩子用于向管理工具栏中添加自定义菜单。它允许开发者在 WordPress 后台的管理工具栏中添加自定义链接、菜单项和子菜单。
使用 add_admin_bar_menus 钩子,开发者可以将自定义菜单项添加到管理工具栏的左侧或右侧。这些菜单项可以包含自定义链接、图标和下拉菜单。用户可以通过鼠标悬停在菜单项上来展开下拉菜单或点击菜单项来访问链接。
使用 add_admin_bar_menus 钩子的基本用法如下:
1. 创建一个回调函数,用于添加自定义菜单项。这个回调函数可以接受一个 admin_bar 对象作为参数。
function custom_admin_bar_menus( $admin_bar ) {
// 添加自定义菜单项
}
2. 使用 add_action 函数将回调函数和 add_admin_bar_menus 钩子关联起来。
add_action( 'add_admin_bar_menus', 'custom_admin_bar_menus' );
3. 在回调函数中使用 admin_bar 对象的 add_node 方法来添加自定义菜单项。add_node 方法接受一个数组作为参数,数组包含菜单项的属性,如链接、图标和下拉菜单。
function custom_admin_bar_menus( $admin_bar ) {
// 添加自定义菜单项
$admin_bar->add_node( array(
'id' => 'custom-menu-item',
'title' => 'Custom Menu Item',
'href' => 'http://example.com/custom-menu-item',
'meta' => array(
'class' => 'custom-menu-class',
'target' => '_blank',
),
) );
}
在这个示例中,我们添加了一个 id 为 custom-menu-item 的自定义菜单项,标题为 "Custom Menu Item",链接为 "http://example.com/custom-menu-item",并设置了菜单项的 class 为 "custom-menu-class",在新的标签页中打开链接。
除了单个菜单项外,开发者还可以使用 add_node 方法添加一个包含子菜单项的下拉菜单。例如:
function custom_admin_bar_menus( $admin_bar ) {
// 添加自定义下拉菜单项
$admin_bar->add_node( array(
'id' => 'custom-menu-item',
'title' => 'Custom Menu Item',
'href' => 'http://example.com/custom-menu-item',
) );
// 添加子菜单项
$admin_bar->add_node( array(
'parent' => 'custom-menu-item',
'id' => 'child-menu-item',
'title' => 'Child Menu Item',
'href' => 'http://example.com/child-menu-item',
'meta' => array(
'class' => 'child-menu-class',
),
) );
}
在这个示例中,我们添加了一个 id 为 custom-menu-item 的自定义菜单项,并添加了一个 id 为 child-menu-item 的子菜单项。用户可以通过悬停在 custom-menu-item 菜单项上来展开子菜单,并点击 child-menu-item 菜单项来访问链接。
通过使用 add_admin_bar_menus 钩子,开发者可以在 WordPress 后台的管理工具栏中添加自定义菜单项和子菜单项,以提供更好的用户体验和导航功能。