wp_admin_bar_dashboard_view_site_menu()
云策文档标注
概述
wp_admin_bar_dashboard_view_site_menu() 是一个已弃用的 WordPress 函数,用于在管理工具栏中添加“仪表盘”或“访问站点”菜单项。该函数根据当前用户和站点环境动态生成菜单链接。
关键要点
- 函数 wp_admin_bar_dashboard_view_site_menu() 自 WordPress 3.3.0 起已弃用,使用 _deprecated_function() 标记。
- 函数接受一个 WP_Admin_Bar 实例参数,用于添加菜单项。
- 根据用户 ID、是否为管理界面和是否启用多站点,动态设置菜单的 ID、标题和链接。
- 在管理界面时添加“访问站点”菜单,链接到 home_url();否则在单站点添加“仪表盘”菜单链接到 admin_url(),在多站点链接到 get_dashboard_url()。
代码示例
function wp_admin_bar_dashboard_view_site_menu( $wp_admin_bar ) {
_deprecated_function( __FUNCTION__, '3.3.0' );
$user_id = get_current_user_id();
if ( 0 != $user_id ) {
if ( is_admin() )
$wp_admin_bar->add_menu( array( 'id' => 'view-site', 'title' => __( 'Visit Site' ), 'href' => home_url() ) );
elseif ( is_multisite() )
$wp_admin_bar->add_menu( array( 'id' => 'dashboard', 'title' => __( 'Dashboard' ), 'href' => get_dashboard_url( $user_id ) ) );
else
$wp_admin_bar->add_menu( array( 'id' => 'dashboard', 'title' => __( 'Dashboard' ), 'href' => admin_url() ) );
}
}注意事项
- 此函数已弃用,建议开发者避免在新代码中使用,并考虑替代方案。
- 函数依赖于多个 WordPress 核心函数,如 get_current_user_id()、is_admin()、is_multisite() 等,需确保环境兼容。
原文内容
Add the “Dashboard”/”Visit Site” menu.
Parameters
$wp_admin_barWP_Admin_Barrequired-
WP_Admin_Bar instance.
Source
function wp_admin_bar_dashboard_view_site_menu( $wp_admin_bar ) {
_deprecated_function( __FUNCTION__, '3.3.0' );
$user_id = get_current_user_id();
if ( 0 != $user_id ) {
if ( is_admin() )
$wp_admin_bar->add_menu( array( 'id' => 'view-site', 'title' => __( 'Visit Site' ), 'href' => home_url() ) );
elseif ( is_multisite() )
$wp_admin_bar->add_menu( array( 'id' => 'dashboard', 'title' => __( 'Dashboard' ), 'href' => get_dashboard_url( $user_id ) ) );
else
$wp_admin_bar->add_menu( array( 'id' => 'dashboard', 'title' => __( 'Dashboard' ), 'href' => admin_url() ) );
}
}