10 приемов с админкой WordPress. Создаем сайт для клиента
При создании блога целесообразно будет запретить доступ к определенным функциям. Таким образом удастся избежать многих проблем, включая случайное удаление основной темы. Для этого необходимо внедрить код в имеющийся файл темы functions.php. Следует добавить, что такое удаление пунктов меню не запрещает прямой доступ к ним (доступ по ссылке), а всего лишь визуально убирает пункты меню:
function remove_menus() add_action('admin_menu', 'remove_menus');
Нужно пояснить что:
__ ('Dashboard') — главная страница админки (консоль); __ ('Posts') — пункт меню «Записи»; __ ('Media') — пункт меню «Медиафайлы» (картинки, видео и т.п.); __ ('Links') — никому не нужный, пункт меню «Ссылки»; __ ('Pages') — пункт меню «Страницы»; __ ('Appearance') — пункт меню «Внешний вид»; __ ('Tools') — пункт меню «инструменты» — это где всякие там: «импорт», «экспорт»; __ ('Users') — пользователи; __ ('Settings') — пункт меню «Настройки». Его очень даже можно закрыть для клиентов, а то они настроят . ; __ ('Comments') — комментарии; __ ('Plugins') — ну и наконец, святое: пункт меню «Плагины».
Также, существует специальная функция WP для удаления пунктов меню и подменю: remove_menu_page() и remove_submenu_page()
Удаляем админ-меню полностью
В комментариях спросили как полностью удалить админ-меню. Мне стало интересно и вот что я придумал:
add_action('admin_head', 'kill_adminmenu'); function kill_adminmenu()
Вставляем код куда-нить в functions.php и у нас больше нет меню в админ-панели. Тут меню также убирается визуально и не закрывает прямой доступ к пунктам меню по ссылкам.
Свой логотип на странице входа
Какой либо практической пользы такой хак не принесет, но увеличит привлекательность и внешний вид сайта, клиенты порадуются тому, что будут видеть собственный логотип при входе в админку. То что делает хак ниже можно реализовать с помощью плагина «The Custom admin branding», но к чему плагин, когда мы можем просто добавить пару строк в файл темы functions.php .
Важно, чтобы логотип (картинка custom-login-logo.gif ) находился по указанному адресу (в папке images в каталоге темы).
Изменение внутреннего логотипа админки
Данный хак дополнит предыдущий и увеличит ощущение того, что блог создавался именно для конкретного клиента. Если мы вставим этот код в файл темы functions.php , то логотип в верхнем левом углу в админке WP изменится на нужный нам ( custom-logo.gif ).
Важно, чтобы логотип (картинка custom-logo.gif ) находилась по указанному адресу (в папке images в каталоге темы).
## Изменение внутреннего логотипа админки. Для версий с dashicons add_action('add_admin_bar_menus', 'reset_admin_wplogo'); function reset_admin_wplogo( ) function my_admin_bar_wp_menu( $wp_admin_bar )
В результате получим что-то такое:
Код для WordPress ниже 3.8
Отключение сообщений о необходимости обновится
Пакеты обновлений для WordPress разработчики движка выпускают часто. Их обязательно необходимо устанавливать, чтобы поддержать меры безопасности на должном уровне. Однако клиентам о различных обязательных изменениях лучше не знать. Это позволит избежать необоснованного волнения, что что-то не так с сайтом. Делается это просто, следует вставить такой код в файл темы functions.php :
if( !current_user_can( 'edit_users' ) )
Удаление лишних виджетов из консоли WordPress
Множество полезных функций присутствует в панели управления версий 2.7 и выше. Они очень удобны и дают возможность просматривать статистику блога и различные новинки на сайте разработчиков и т.п. Однако, некоторые из виджетов совершенно не нужны клиентам и разумно их вообще отключить. Делается это добавлением такого кода в файл темы function.php :
/* Удаление виджетов из Консоли WordPress */ function clear_dash() add_action('wp_dashboard_setup', 'clear_dash' );
Добавление собственных виджетов в консоль (админку)
Определенные функции в панели администратора необходимы, при этом они могут не входить в стандартный пакет. В таком случае создатель сайта должен их добавить самостоятельно, посредством вставки следующего кода в файл functions.php :
function example_dashboard_widget_function() // Создаем функцию, используя хук действия function example_add_dashboard_widgets() // Хук в 'wp_dashboard_setup', чтобы зарегистрировать нашу функцию среди других add_action('wp_dashboard_setup', 'example_add_dashboard_widgets' );
Изменение цвета шапки админки
C версии 3.8 WordPress представляет множество цветовых схем, среди которых можно подобрать наиболее подходящую. Иногда возможно нужно изменить белый фон шапки админки, например чтобы цвета соответствовали цветам бренда клиента или еще по каким-то причинам. Чтобы изменить цветовую схему воспользуйтесь следующим хуком и укажите цвета в CSS стилях:
add_action('admin_head', 'custom_colors'); function custom_colors()
Таким же образом можно указать CSS стили для любых других элементов админки.
Добавление сообщений с дополнительной справкой
У основной массы клиентов могут возникать проблемы с пониманием даже простых вещей при использовании блога на WordPress. Для них существует контекстная справка, отвечающая на некоторые вопросы. Внедрение такой справки производится подобным кодом:
function my_admin_help($text, $screen) add_action( 'contextual_help', 'my_admin_help' );
Избирательное удаление виджетов для конкретных пользователей и групп
Скрытие некоторых блоков для определенных групп пользователей иногда бывает полезным. Нижеприведенный код показывает как удалить блок произвольных полей на странице редактирования поста для пользователя с уровнем ниже «редактора» (автор, помощник, подписчик):
add_action('admin_init','customize_meta_boxes'); function customize_meta_boxes()
Упрощаем ссылку входа
Прием устарел! С версии 3.4. ссылка /login перенаправляет на страницу входа /wp-login.php по умолчанию.
Ссылка на страницу входа (логина) в WordPress выглядит: http://site.ru/wp-login.php , т.е. для входа нужно набирать в адресной строке: wp-login.php что менее удобно чем просто login , поэтому логично поправить этот момент и сделать так, чтобы по ссылке http://site.ru/login пользователя бы перекидывало на страницу http://site.ru/wp-login.php . Задача реализуется 2-мя способами:
Способ 1: Дополняем файл .htaccess такой строкой:
RewriteRule ^login$ http://site.ru/wp-login.php [NC,L] Не забудьте site.ru заменить на свой сайт.
Способ 2: вставляем код в functions.php :
/* редирект с login на /wp-login.php и с admin на /wp-admin */ add_action('template_redirect', 'kama_login_redirect'); function kama_login_redirect()
Этот пример удобнее тем, что нет никаких site.ru . и не надо редактировать .htaccess — все изменения остаются как бы «внутри» темы.
Вот и все, если Вы хотите «поблагодарить» наше IT сообщество — у вас есть такая возможность: справа есть варианты для пожертвований на развитие портала. Или поделитесь статьей в ваших соц.сетях через сервис ниже.