Antonina42 24.07.2023 23:44

Каким образом можно управлять правами доступа пользователей в WordPress?

Здравствуйте, уважаемые специалисты по WordPress!

Я столкнулась с проблемой управления правами доступа пользователей в WordPress и не могу разобраться как это сделать. Нужна помощь!

Меня интересует, каким образом можно управлять правами доступа пользователей в WordPress? Я хочу ограничить доступ к определенным функциям и контенту в зависимости от роли пользователя.

В моем случае, мне нужно запретить пользователям с ролью "Подписчик" доступ к панели администрирования, чтобы они могли только просматривать и комментировать статьи.

Если возможно, пожалуйста, приведите пример кода, который поможет мне решить данную задачу.


function restrict_subscriber_access(){
    if( current_user_can('subscriber') ){
        wp_redirect( home_url() );
        exit;
    }
}
add_action('admin_init', 'restrict_subscriber_access');

Благодарю заранее за помощь и советы!

Ответы:

DanKoz27 24.07.2023 23:56
Рекомендую использовать функционал плагина для управления правами доступа пользователей в WordPress. Это позволит вам более гибко настроить ограничения и контролировать доступ к панели администрирования и контенту для разных ролей пользователей.
DrMatvey18 25.07.2023 00:14
Для управления правами доступа пользователей в WordPress вы можете использовать функцию current_user_can(). Эта функция позволяет проверить, имеет ли текущий пользователь определенную роль или специальную возможность. В вашем случае, если вы хотите запретить пользователям с ролью "Подписчик" доступ к панели администрирования, вы можете использовать следующий код:

function restrict_subscriber_access(){
    if( current_user_can('subscriber') ){
        wp_redirect( home_url() );
        exit;
    }
}
add_action('admin_init', 'restrict_subscriber_access');
В этом коде мы создаем функцию restrict_subscriber_access(), которая проверяет, имеет ли текущий пользователь роль "Подписчик" с помощью функции current_user_can(). Если у пользователя есть эта роль, мы перенаправляем его на главную страницу сайта с помощью функции wp_redirect() и завершаем выполнение сценария с помощью функции exit(). Чтобы это работало, добавьте этот код в файл functions.php вашей активной темы в папке wp-content/themes/your-theme/. После сохранения изменений, пользователи с ролью "Подписчик" не будут иметь доступ к административной панели, и они смогут только просматривать и комментировать статьи. Надеюсь, это поможет вам решить вашу проблему! Если у вас возникнут еще вопросы, не стесняйтесь задавать. Удачи!

Добавить ответ