web-dev-qa-db-ja.com

特定の役割のデフォルト管理ページを変更する

誰かがプラグインを知っているのか、特定のユーザー/ロールのデフォルトの管理者ページを変更するプログラム的な方法を知っているのでしょうか。

Members Plugin を使用してプラグインのカスタムロールと権限を設定したプラグインのマスターパネルページがあります。これらのカスタムロールのユーザーにダッシュボードにマスターコントロールパネルを使用することを強制します。必ずしもダッシュボードにアクセスする必要はありません。

マイナー編集 :ロールのデフォルトダッシュボードを変更するとともに、WordPressダッシュボードを無効にする方法はありますか?

- ザック

6
Zack

あなたのテーマの functions.php

function hide_the_dashboard()
{
    global $current_user;
    // is there a user ?
    if ( is_array( $current_user->roles ) ) {
        // substitute your role(s):
        if ( in_array( 'custom_role', $current_user->roles ) ) {
            // hide the dashboard:
            remove_menu_page( 'index.php' );
        }
    }
}
add_action( 'admin_menu', 'hide_the_dashboard' );

function your_login_redirect( $redirect_to, $request, $user )
{
    // is there a user ?
    if ( is_array( $user->roles ) ) {
        // substitute your role(s):
        if ( in_array( 'custom_role', $user->roles ) ) {
            // pick where to redirect to, in the example: Posts page
            return admin_url( 'edit.php' );
        } else {
            return admin_url();
        }
    }
}
add_filter( 'login_redirect', 'your_login_redirect', 10, 3 );
10
Johannes Pille

テーママイログイン プラグインを使用してください。

このプラグインはあなたの現在のテーマに従ってWordPressのログイン、登録そしてパスワードを忘れたページをテーマにしています。テーマからのページテンプレートを使用して、wp-login.phpの代わりに使用するページを作成します。サイドバーログイン用のウィジェットも含まれています。

機能

  • ...
  • ログイン時にユーザーをリダイレクトし、役割に基づいてログアウトします。
  • ...
2
wyrfel

広告ダッシュボード:$ _REQUESTを確認して、戻ってきたものに応じて、単純に wp_redirect()を使用します。

1
kaiser