jospabloorozcomarn
  • 0
Учитель

Ограничить доступ в wp-admin?

  • 0

Какое действие или фильтр мне нужно проверить или сравнить с $pagenow?

В области администратора мне нужно разрешить пользователям, не являющимся администраторами и редакторами, доступ только к:

index.php (dashboard)
upload.php (attachments management)
media.php (attachments management)
media-new.php (attachments management)

Заранее спасибо.

Share
  1. это зависит от того, хотите ли вы перенаправить пользователей, вы должны использовать init хук, поскольку перед этим хуком не отправляются никакие выходные данные или заголовки. или если вы хотите отобразить красивое сообщение «У вас нет прав доступа к этой странице», вы можете использовать wp_head хук действия:

    //display meassage
    add_action('admin_head','my_restrict_access');
    function my_restrict_access_meassage(){
        global $pagenow;
        if ($pagenow == 'upload.php' && !current_user_can( 'upload_files' )){
            echo '<div class="wrap"><br />
                <div id="message" class="error">You Dont have the right permissions to access this page</div>
            </div>';
            exit();
        }
    }
    //or redirect
    add_action('init','my_restrict_redirect');
    function my_restrict_redirect(){
        global $pagenow;
        if (!is_admin())
            return '';
        if ($pagenow == 'upload.php' && !current_user_can( 'upload_files' )){
            wp_redirect( home_url() );
            die();
        }
    }
    
    • 0
  2. Я предлагаю плагин Members. Он позволяет создавать новые группы пользователей и определять их доступ к каждой и почти каждой странице в wp-admin. Вы можете найти его здесь: http://wordpress.org/extend/plugins/members/

    • 0

Оставить ответ

You must login to add an answer.