web-dev-qa-db-ja.com

管理バーをデフォルトに変更します。:off

アドミンバーはとても好きですが、実際にはデフォルトでONではなくOFFにすることを望みます(必要に応じてユーザーが有効にできるようにしたいので、完全に無効にすることはしたくありません)すべてのユーザーに対して手動でオフにする必要があります)これを実装する方法はありますか。

6
byronyasgur
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' );
}

テーマ関数ファイルに配置するか、プラグインにすることができます。

ユーザーが登録すると、ユーザー管理バーの設定をfalseに設定します。ユーザーは一度ログインすると、これをtrueに設定できます。

12
Brady
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' );
2
kaiser