web-dev-qa-db-ja.com

ダッシュボードを削除し、デフォルトで[ページ]タブを使用します

ユーザーが管理領域にログインしたときに「ページ」をデフォルトのタブとして設定する方法はありますか?私は非常にカスタマイズされた設定を使用しています。そこではダッシュボードウィジェットはどれも役に立ちませんので、それらはとにかく隠されています。

6
Tom

最善の方法はあなたのページへのユーザーログインをリダイレクトし、メニューからダッシュボードを削除することです。これは2つのフィルターで行うことができます。

ユーザーロールに基づいてページ編集画面の例にログインをリダイレクトします。この例では "author"を使用します。

function dashboard_redirect($url) {
    global $current_user;
    // is there a user ?
    if(is_array($user->roles)) {
        // check, whether user has the author role:
        if(in_array('author', $current_user->roles)) {
             $url = 'edit.php?post_type=page';
        }
        return $url;
    }
}
add_filter('login_redirect', 'dashboard_redirect');   

「管理メニューからダッシュボード」を削除する

add_action( 'admin_menu', 'Wps_remove_tools', 99 );
function Wps_remove_tools(){

    remove_menu_page( 'index.php' ); //dashboard

   }

ps。同じフィルタを使用して管理メニュー項目を注文することもできます。

7
Wyck

WordpressのDASHBOARDを完全に削除する方法です。

プラグインを使いたくない人のために、もしあなたがプラグインをインストールしたのならそれを削除してください。そのプラグインに関する追加メニューも表示されます。何がポイント?だからあなたは自分がしたことやしたことをコントロールするべきです


functions.php にコードを挿入する

リダイレクト: (ユーザーがdomain.com/wp-adminのようにURLにアクセスした場合)

function dashboard_redirect(){
    wp_redirect(admin_url('edit.php?post_type=page'));
}
add_action('load-index.php','dashboard_redirect');

ログイン後にリダイレクトする: (ロギングのバグも防ぐため)

function login_redirect( $redirect_to, $request, $user ){
    return admin_url('edit.php?post_type=page');
}
add_filter('login_redirect','login_redirect',10,3);

ダッシュボードメニューを削除します。 (なぜまだ持っているのですか?)

function remove_menus () {
    global $menu;
    $restricted = array(__('Dashboard'));
    //$restricted = array(__('Dashboard'), __('Posts'), __('Media'), __('Links'), __('Pages'), __('Appearance'), __('Tools'), __('Users'), __('Settings'), __('Comments'), __('Plugins'));
    end($menu);
    while(prev($menu)){
        $value = explode(' ',$menu[key($menu)][0]);
        if(in_array($value[0]!= NULL?$value[0]:'',$restricted)){unset($menu[key($menu)]);}
    }
}
add_action('admin_menu','remove_menus');

ユーザー ログイン または domain.com/wp-admin/ のようにURLを入力してください。

ユーザーは domain.com/wp-admin/edit.php?post_type = page にリダイレクトされます。


7
l2aelba

はい、 Adminimize Pluginを使用します 、ダッシュボードを削除し、使用時に最初の画面に表示されるようにします。非常にうまくカスタマイズして、管理バックエンド全体を微調整できます。

_ update _

フィルタ 'login_redirect'を使用し、このWordpress Stackechangeの投稿のようにadmin_urlを使用してください。

特定のロールのデフォルト管理ページを変更します

0
keatch