Сниппет — это небольшой фрагмент кода, который позволяет упростить реализацию типовых задач. В WordPress есть огромное число хуков, к которым можно подключиться и с помощью нужного сниппета скорректировать работу той или иной функции.
Сниппеты можно встретить в документации, на форумах поддержки, на сайтах вопросов-ответов типа qna.habr.com, а также в различных подборках.
На WPHub тоже есть раздел с полезными сниппетами.
Для наглядности рассмотрим пару примеров:
function wphub_the_title( $title ) {
return "wphub: {$title}";
}
add_filter( 'the_title', 'wphub_the_title' );
Данный сниппет добавит слово «wphub» ко всем заголовкам записей и страниц на сайте.
function wphub_search_only_posts( $query ) {
if ( is_admin() || ! $query->is_main_query() ) {
return;
}
if ( ! $query->is_search() ) {
return;
}
$query->set( 'post_type', 'post' );
}
add_action( 'pre_get_posts', 'wphub_search_only_posts' );
А этот сниппет указывает WordPress, что искать нужно только по записям сайта.
Есть два способа вставки сниппетов на сайт: с помощью плагина Code Snippets (и его аналогов) или непосредственно в файлы сайта.
Вставка сниппетов с помощью плагина
Устанавливаем и активируем плагин «Code Snippets» и переходим в раздел «Сниппеты -> Добавить новый».
Добавляем один из сниппетов-примеров.
Не забудьте выбрать область применения сниппета: на всём сайте, только в админ-панели, только на публичной части (переключатели под полем с кодом).
Сохраняем, активируем и проверяем результат.
Отключить сниппет можно в разделе «Сниппеты -> Все сниппеты».
Вставка сниппетов в файлы сайта
Доступ к файлам сайта можно получить с помощью файлового менеджера в панели хостинга или подключившись к сайту по FTP.
Открываем или создаем папку /wp-content/mu-plugins/
в директории сайта. Все расположенные в данной папке php-файлы будут автоматически подключены WordPress.
Создадим файл wphub_title.php и вставим в него один из сниппетов-примеров.
После сохранения — можно проверять результат.
Для отключения сниппета — просто удалите файл wphub_title.php.