将访问站点添加到您的工具栏中,而不是在下拉列表中

时间:2015-06-10 作者:andreiudeiu

我正在寻找一种方法,将“访问站点”链接从下拉列表中移动并添加到主工具栏,如下图所示:

enter image description here

2 个回复
最合适的回答,由SO网友:Rarst 整理而成

不复杂,但要把握好时机有点棘手。

类似这样的操作应该会起作用,但您可能需要尝试优先级,以获得指向栏上特定位置的链接:

add_action( \'admin_bar_menu\', function ( $wp_admin_bar ) {

    if ( ! is_admin() ) {
        return;
    }

    /** @var WP_Admin_Bar $wp_admin_bar */
    $wp_admin_bar->remove_node( \'view-site\' );

    $wp_admin_bar->add_menu( array(
        \'id\'    => \'view-site\',
        \'title\' => __( \'Visit Site\' ),
        \'href\'  => home_url( \'/\' ),
    ) );
}, 31 ); // After `wp_admin_bar_site_menu()` at 30.

SO网友:Gabriel

将此添加到主题functions.php:

add_action( \'admin_bar_menu\', \'make_parent_node\', 999 );
function make_parent_node( $wp_admin_bar ) {
    if ( ! is_admin() ) { return; }  // end function if not in admin back-end, credit @Rarst
    $args = array(
        \'id\'     => \'view-site\',  // id of the existing child node (View Site)
        \'title\'  => \'Visit Site\', // alter the title of existing node (optional)
        \'parent\' => false         // set parent to false to make it a top level (parent) node
    );
    $wp_admin_bar->add_node( $args );
}
这将把“查看站点”移到仪表板下拉列表的右侧。有关更多信息,请参阅Codex; 上面的代码来自“使现有子节点成为父节点”部分。

结束

相关推荐

ADD_TIME_SUPPORT(‘admin-bar’)导致致命错误

我正在努力学习更多关于主题开发的知识,所以我创建了自己的主题,除了添加functions.php 并尝试用一些简单的方法进行更新,如:<?php add_theme_support(\'admin-bar\', array(\'menus\')); ?> 我明白了Server 500 ERROR 我无法访问Wordpress的任何部分,甚至连仪表板都无法访问。但一旦我删除functions.php 和刷新页面我的Wordpress又回来了,工作顺利。有什么神秘的fu