将管理栏更改为默认设置:关闭

时间:2011-09-22 作者:byronyasgur

虽然我很喜欢管理栏,但实际上我希望它在默认情况下是关闭的,而不是打开的(我不想完全禁用它,因为我希望用户可以在需要的时候打开它,但我不想让每个用户都手动关闭它),是否有办法实现这一点。

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

add_action("user_register", "set_user_admin_bar_false_by_default", 10, 1);
function set_user_admin_bar_false_by_default($user_id) {
    update_user_meta( $user_id, \'show_admin_bar_front\', \'false\' );
    update_user_meta( $user_id, \'show_admin_bar_admin\', \'false\' );
}
放置在主题函数文件中,或者可以制作成插件。

一旦用户注册,它将转到并将用户管理栏prefs设置为false。用户可以在登录后将其设置为true。

SO网友:kaiser
function wpse29210_admin_bar_toogle()
{
    add_filter( \'show_admin_bar\', \'__return_false\' );

    $user = get_userdata( $GLOBALS[\'current_user\'] )->data->ID;

    if ( ! is_admin() && $user->show_admin_bar_front )
        add_filter( \'show_admin_bar\', \'__return_true\' );

    if ( is_admin() && $user->show_admin_bar_admin )
        add_filter( \'show_admin_bar\', \'__return_true\' );

    return;
}
add_action( \'init\', \'wpse29210_admin_bar_toogle\' );
SO网友:e-colori

这最终会起作用:

wp_update_user( array ( \'ID\' => $user_id, \'show_admin_bar_front\' => \'false\' ) ) ;

结束

相关推荐

Remove top admin bar

每当管理员或任何其他用户登录顶部栏菜单时,都会向上显示广告。现在我为每个人登录,所以我不想要这个酒吧。首先我添加了display:none 到admin-bar.css, 但主要问题是wordpress仍然在顶部添加了一条白线:html { margin-top: 28px !important; } 如何消除此问题,因为这会导致一些设计缺陷。