Кнопка «Настройка экрана» (Screen Options) находится в правом верхнем углу страницы. При клинке она открывает целый ряд дополнительных опций, с помощью которых можно, например, скрывать некоторые столбцы в списке записей блога, задавать число выводимых там постов или дополнительно добавить описания в пункты меню.
Зачем ее нужно скрывать? Допустим, у вас на сайте работают несколько авторов и если кто-то случайно поменяет/отключит важные для проекта функции (выбор автора статей, задание тегов и т.п.), то этот поступок будет иметь последствия и для других пользователей, работающих в системе.
Следовательно дабы неопытные юзеры не нарушили ничего в настроенном вами интерфейсе, проще эту кнопку просто убрать точно также как вы скрываете пункты меню в WordPress админке, которые авторам не нужны.
Метод №1 — через фильтр
В данном случае следует добавить в ваш файл функций (functions.php или другой) следующие строки:
function wpb_remove_screen_options() { if(!current_user_can('manage_options')) { return false; } return true; } add_filter('screen_options_show_screen', 'wpb_remove_screen_options'); |
В коде с помощью current_user_can проводится проверка роли пользователя — указанная конструкция будет выполнять хак для всех кроме админа. Интересно было узнать, что использовать при этом формулировку current_user_can(‘administrator’) является ошибкой.
Вариант 2: плагин ролей (Adminimize)
Убрать кнопку «Настройка экрана» с помощью модуля рядовому юзеру будет попроще чем колупаться в коде. Здесь подойдет любое из соответствующих типовых решений, ниже рассмотрим на примере плагина Adminimize.
После его активации выбираем в меню админки «Настройки» — «Adminimize» и на открывшейся странице кликаем по пункту «Global Options».
Как видите, обе реализации достаточно простые. Если скрыть кнопку «Настройка экрана» — ваша единственная цель, то я бы специально не ставил плагин управлениями правами пользователей, а советовал бы разобраться с внедрением хака. Нет смысла создавать лишнюю нагрузку на движок. Нужно ли вообще убирать эту фишку? — не сказал бы, что это прям критичная проблема, но если вдруг такая задача появится, — теперь вы будете знать как действовать.
P.S. Сейчас скорость работы веб-проектов крайне важна, поэтому следует внимательно изучать имеющиеся хостинги на рынке дабы выбрать самое эффективное решение.
Читать полностью wordpressinside.ru