WordPress — добавление сниппетов проще с модулем Code Snippets
Мало кому, кто имеет сайт на WordPress на протяжении длительного времени, не приходилось вносить изменения в код, в частности в functions.php, добавляя или убирая функционал. Для этого требовалось запустить FTP-редактор, открыть файл functions.php и добавить необходимые фрагменты кода (сниппеты). Но этому действию есть альтернатива — использование плагина Code Snippets. Догадываться, что позволяет делать это плагин, долго не придется — название красноречиво говорит о его сути. Установив данный плагин, можно менять свой сайт не выходя из админ-панели.
Посмотрим на примере, как можно использовать Code Snippets.
1. Уберем одну из вкладок бокового меню админ-панели.
Не знаю, какая еще стандартная вкладка может быть невостребованной, но для меня, например, бесполезной является вкладка «Ссылки», вот ее-то мы и скроем. Но это также может быть какой-то пункт меню, который вам достался вместе с шаблоном, но вы его абсолютно не используете и он только мозолит глаза.
Итак, к делу.
- Скачиваем, устанавливаем, активируем плагин Code Snippets.
- В боковой панели выбираем вкладку Snippets/Add New.
- На открывшейся странице, в первое окно, предназначенное непосредственно для добавления сниппета, вставляем код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
function remove_admin_menu_items() { $remove_menu_items = array(__('Links')); global $menu; end ($menu); while (prev($menu)){ $item = explode(' ',$menu[key($menu)][0]); if(in_array($item[0] != NULL?$item[0]:"" , $remove_menu_items)){ unset($menu[key($menu)]);} } } add_action('admin_menu', 'remove_admin_menu_items'); |
И жмем кнопку «Save Changes & Activate» (Сохранить изменения и активировать) — «Ссылки» исчезли из боковой панели админки.
Подробнее об удалении вкладок из админ-панели можно прочесть здесь.
2. Изменим текст в футере админки.
Каждая сборка WordPress имеет свой текст в футере административной панели. Можно его смело изменить на тот, который пожелаем. Для этого размещаем новый код в соответствующем поле, перейдя, как и в первый раз, по Snippet/Add New:
1 2 3 4 |
function modify_footer_admin () { echo 'Персональный блог <a href="https://jul-collection.com">Collection</a>. 2011-2013 <a href="https://www.wordpress.org">WordPress</a>'; } add_filter('admin_footer_text', 'modify_footer_admin'); |
И теперь, вместо стандартного текста, в футере появится тот текст, который мы внесли с помощью сниппета.
Источник здесь.
3. Обезопасим вход в админ-панель.
Не так давно мы рассматривали возможность обезопасить наш сайт на WordPress при помощи удаления оповещения о том, что при входе в админку введен неверный пароль. Так вот эти действия можно произвести через файл functions.php, а мы эти изменения внесем с помощью плагина Code Snippets.
Создаем новый сниппет и размещаем в нем код:
1 2 3 4 |
function failed_login() { return 'Вы ввели неверные данные.'; } add_filter('login_errors', 'failed_login'); |
Теперь, вместо стандартного оповещения о неверном пароле, будет отображаться то сообщение, которое мы добавили с помощью снипета.
4. Запретим движку сжимать загружаемые изображения.
Думаю, этот момент интересует многих, так как не всем подходит то качество изображений, которое создает WordPress.
Создадим новый снипет со следующим кодом:
1 2 3 |
<?php add_filter('jpeg_quality', function($arg){return 100;}); ?> |
5. Усовершенствуем визуальный редактор.
Сколько раз уже приходилось сталкиваться с вопросом : «Скажите, как изменить размер шрифта текста записи?» . Что можно было ответить, учитывая возможности редактора WordPress? Ну, разве что предложить воспользоваться функцией «Формат», которая позволяет менять заголовки, или установить плагин Ultimate TinyMCE. Но первый способ слишком ограничен, а второй наоборот может быть громоздким решением. Добавив же всего несколько строчек кода, мы сможем немного улучшить визуальный редактор: появится выбор размера и семейства шрифта, верхний и нижний индекс.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
<?php function add_more_buttons($buttons) { $buttons[] = 'hr'; $buttons[] = 'del'; $buttons[] = 'sub'; $buttons[] = 'sup'; $buttons[] = 'fontselect'; $buttons[] = 'fontsizeselect'; $buttons[] = 'cleanup'; $buttons[] = 'styleselect'; return $buttons; } add_filter("mce_buttons_3", "add_more_buttons"); ?> |
6. Отключим редактор в админ-панели.
Недавно, поднимая тему безопасности сайта на WordPress, мы затронули такой момент как наличие редактора для правки кода файлов шаблона и плагинов. Придя к выводу, что его не стоит использовать (причины в упомянутом посте), мы внесли некий код в functions.php, сейчас же мы скроем вкладку редактора с помощью плагина Code Snippets.
1 2 3 4 5 6 |
<?php function remove_editor_menu() { remove_action('admin_menu', '_add_themes_utility_last', 101); } add_action('_admin_menu', 'remove_editor_menu', 1); ?> |
7. Добавим возможность размещать в своих записях код.
Если вы размещаете в своих постах код, то знаете, для того, чтобы движок смог отобразить код корректно, необходимо обрамить код в специальные теги. Как это сделать: использовать плагины подобной направленности или просто добавить функцию добавления кода. Для этого используем код:
1 2 3 4 5 6 7 8 9 |
<?php function bbcode( $attr, $content = null ) { $content = clean_pre($content); // Clean pre-tags return '<pre"><code>' . str_replace('<', '<', $content) . // Escape < chars '</code></pre>'; } add_shortcode('code', 'bbcode'); ?> |
Теперь, размещая код на страницах своего сайта, достаточно обрамить его в теги [ code ]…[/ code ]. Между скобкой и словом «code» не должно быть пространства!
Что ж, список полезных сниппетов можно продолжать и продолжать, но на данный момент мы закроем тему, позже к сниппетам мы еще обязательно вернемся.
А сейчас, взглянем на плагин Code Snippets. Его раздел Manage, после добавления сниппетов, принял приблизительно такой вид:
Как видим, мы в любой момент можем деактивировать сниппет, отредактировать или вовсе удалить.
Преимуществом данного плагина является его удобство и функциональность — «править» файл functions.php стало проще и удобнее.