Попрощайтесь с надоедливой админ-баром: скройте его для подписчиков!

Вы когда-нибудь посещали веб-сайт WordPress и замечали надоедливую панель администратора вверху страницы? Это может сильно раздражать, особенно для подписчиков, которым не нужен доступ к серверной части. В этой статье мы рассмотрим различные способы скрыть панель администратора WordPress для подписчиков, чтобы сделать их просмотр более приятным. Итак, пристегнитесь и окунемся в мир кода!

Метод 1: использование пользовательской функции
Первый метод предполагает добавление пользовательской функции в файл вашей темы Functions.php. Откройте файл вашей темы и добавьте следующий фрагмент кода:

function hide_admin_bar() {
    if (!current_user_can('edit_posts')) {
        show_admin_bar(false);
    }
}
add_action('after_setup_theme', 'hide_admin_bar');

Этот код проверяет, нет ли у текущего пользователя возможности редактировать сообщения (как в случае с подписчиками), а затем скрывает панель администратора с помощью функции show_admin_bar().

Метод 2: изменение ролей пользователей
Другой подход — изменить возможности роли подписчика, полностью лишив его возможности видеть панель администратора. Добавьте следующий код в файл function.php вашей темы:

function remove_admin_bar_for_subscriber() {
    $subscriber = get_role('subscriber');
    $subscriber->remove_cap('read');
    $subscriber->remove_cap('edit_posts');
    $subscriber->remove_cap('delete_posts');
}
add_action('admin_init', 'remove_admin_bar_for_subscriber');

Этот код извлекает роль подписчика и удаляет возможности «чтение», «edit_posts» и «delete_posts», эффективно скрывая панель администратора для подписчиков.

Метод 3: использование плагина
Если вы предпочитаете решение на основе плагина, вы можете использовать плагин «Отключить панель администратора». Просто установите и активируйте плагин, и он автоматически скроет панель администратора для подписчиков без каких-либо дополнительных модификаций кода.

Метод 4: Условный CSS
Для тех, кто знаком с CSS, вы можете скрыть панель администратора, используя условный стиль. Добавьте следующий код в файл style.css вашей темы:

body.logged-in .admin-bar {
    display: none;
}

Этот код нацелен на элемент панели администратора и скрывает его, когда пользователь входит в систему.

Имея в своем распоряжении эти методы, вы можете легко скрыть панель администратора WordPress для подписчиков, улучшив их возможности просмотра вашего веб-сайта. Предпочитаете ли вы использовать пользовательские функции, изменять роли пользователей, использовать плагины или использовать условный CSS — выбор за вами. Выберите метод, который соответствует вашим потребностям, и попрощайтесь с этой надоедливой панелью администратора!