⚠️ Внимание ⚠️
Документация переехала и теперь доступна по новому адресу.

Хуки Root

В тему Root добавлены хуки: события (action) и фильтры (filter). С их помощью Вы можете добавлять свой код, изменять вывод или даже убирать какие-то блоки. Ниже идет описание хуков и примеры их использования.

Лучше всего для этого использовать плагин ProFunctions, установите и добавьте в него нужный код.

Для событий action

Для добавления события необходимо использовать ф-цию add_action(),
первый аргумент которой — название события в теме, например root_after_header
второй аргумент — функция, которая будет вызвана.

Например:

add_action( 'root_after_header', function() {
    echo 'Hello';
} );

Данных хук после шапки сайта выведет сообщение «Hello».

Для фильтров filter

Все аналогично, только вместо add_action() используем add_filter() и вместо echo используем return.

Ниже будут примеры готового куда для некоторых хуков:

Хуки встроенных модулей

Список хуков, с помощью которых можно добавить или изменить элементы встроенных модулей.

wpshop_toc_headers

filter / По умолчанию в встроенном содержании выводятся заголовки h1, h2, h3, h4. С помощью данного фильтра можно исключить или добавить другие заголовки (например, добавить h5).

/**
 * Изменить заголовки в содержании
 */
add_filter( 'wpshop_toc_headers', function() {
    return array( 'h1', 'h2', 'h3', 'h4', 'h5' );
} );

wpshop_toc_minimum_headers

filter / По умолчанию встроенное содержание выводится, если в тексте записи или страницы есть 3 и больше заголовков h2, h3 или h4. С помощью данного фильтра можно изменить кол-во заголовков для вывода содержания (например, чтобы содержание выводилось от 2-х заголовков).

/**
 * Изменить заголовки в содержании
 */
add_filter( 'wpshop_toc_headers', function() {
    return 2;
} );

root_social_share_buttons

filter / Позволяет изменить порядок и вывод кнопок шаринга соц. сетей, поменять местами, какие-то отключить, какие-то добавить.

/**
 * Изменить вывод соц. кнопок для шаринга
 */
add_filter( 'root_social_share_buttons', function() {
    return array( 'vk', 'fb', 'twitter', 'ok', 'whatsapp', 'viber', 'telegram', 'mail', 'linkedin', 'reddit', 'pinterest' );
} );

root_comments_title

filter / Позволяет изменить заголовок блока комментариев, перед кол-вом комментариев

/**
 * Изменить заголовок блока комментариев
 */
add_filter( 'root_comments_title', function() {
    return "Здесь вставьте нужный заголовок блока комментариев";
} );

Хуки карточек постов

Список хуков, с помощью которых можно добавить или изменить элементы карточек постов.

root_thumb_big_sizes

filter / Позволяет изменить размер стандартных миниатюр на главной странице и страницах архивов. Ширина, высота, кадрирование (true/false). По умолчанию: 770×330.

/**
 * Изменить размеры стандартных миниатюр на главной странице и страницах архивов
 */
add_filter( 'root_thumb_big_sizes', function() {
    return array( 770, 330, true );
} );

Не забудьте перегенерировать миниатюры.

root_thumb_wide_sizes

filter / Позволяет изменить размер миниатюр в похожих записях и маленьких карточках постов. Ширина, высота, кадрирование (true/false). По умолчанию: 330×140.

/**
 * Изменить размеры миниатюр в похожих записях и в маленьких карточках постов
 */
add_filter( 'root_thumb_wide_sizes', function() {
    return array( 330, 140, true );
} );

Затем нажмите Внешний вид > Настроить > Дополнительные стили и добавьте код

.post-card {
max-width: 330px;
}

.post-card__image img {
max-height: 140px;
}

.thumb-wide {
height: 140px;
}

@media (min-width: 1200px) {
.post-card {
width: 330px;
}
}

Вместо 330 и 140 укажите нужные размеры.

Не забудьте перегенерировать миниатюры.

root_excerpt_length

filter / Позволяет изменить длину отрывка во всех карточках постов

/**
 * Задать новую длину отрывка - 15 слов
 */
add_filter( 'root_excerpt_length', function() {
    return 15;
} );

root_excerpt_more

filter / Позволяет задать новое окончание отрывка, вместо …

/**
 * Задать новое окончание отрывка на →
 */
add_filter( 'root_excerpt_more', function() {
    return ' →';
} );

Хуки шапки и верхнего меню

Список хуков, с помощью которых можно добавить или изменить элементы шапки и верхнего меню.

root_after_body

action / Позволяет вывести любой код сразу после тега

root_before_header

action / Позволяет вывести любой код перед шапкой сайта

root_logotype_alt

filter / Позволяет изменить атрибут alt у картинки логотипа

root_before_main_navigation

action / Позволяет вывести любой код перед меню под шапкой

root_after_main_navigation

action / Позволяет вывести любой код после меню под шапкой

root_after_header

action / Позволяет вывести любой код после шапки сайта

root_before_site_content

action / Позволяет вывести любой код перед контентом сайта

Хуки записей

Список хуков, с помощью которых можно добавить или изменить элементы в записи.

root_single_before_title

action / Позволяет вывести любой код перед названием записи на странице записи

root_single_after_title

action / Позволяет вывести любой код после названия записи на странице записи

root_single_before_excerpt

action / Позволяет вывести любой код перед отрывком записи на странице записи

root_single_after_excerpt

action / Позволяет вывести любой код после отрывка записи на странице записи

root_single_the_content

action / Позволяет вывести любой код перед контентом на странице записи

root_single_after_the_content

action / Позволяет вывести любой код после контента на странице записи

root_single_before_social

action / Позволяет вывести любой код перед блоком нижних соц. кнопок на странице записи

root_single_after_social

action / Позволяет вывести любой код после блока нижних соц. кнопок на странице записи

root_single_before_related

action / Позволяет вывести любой код перед блоком похожих записей на странице записи

root_single_after_related

action / Позволяет вывести любой код после блока похожих записей на странице записи

Хуки страниц

Список хуков, с помощью которых можно добавить или изменить элементы на странице.

root_page_before_title

action / Позволяет вывести любой код перед названием страницы.

root_page_after_title

action / Позволяет вывести любой код после названия страницы.

root_page_the_content

action / Позволяет вывести любой код перед контентом страницы.

root_page_after_the_content

action / Позволяет вывести любой код после контента страницы.

root_page_before_related

action / Позволяет вывести любой код перед блоком похожих записей на странице.

root_page_after_related

action / Позволяет вывести любой код после блока похожих записей на странице.

Хуки страниц архивов

Список хуков, с помощью которых можно добавить или изменить элементы на страницах архивов.

root_archive_before_title

action / Позволяет вывести любой код перед названием страницы архива.

root_archive_after_title

action / Позволяет вывести любой код после названия страницы архива.

root_archive_before_posts

action / Позволяет вывести любой код перед карточками постов на странице архива.

root_archive_after_posts

action / Позволяет вывести любой код после карточек постов на странице архива.

Хуки сайдбара

Список хуков, с помощью которых можно добавить или изменить элементы сайдбара.

root_sidebar_before_widgets

action / Позволяет вывести любой код перед виджетами в сайдбаре

root_sidebar_after_widgets

action / Позволяет вывести любой код после виджетов в сайдбаре

Хуки подвала и нижнего меню

Список хуков, с помощью которых можно добавить или изменить элементы подвала и нижнего меню.

root_after_site_content

action / Позволяет вывести любой код после контента сайта

root_before_footer

action / Позволяет вывести любой код перед подвалом сайта

root_after_footer

action / Позволяет вывести любой код после подвала сайта

Дополнительные хуки

Список хуков, с помощью которых можно добавить или изменить элементы встроенных модулей.

root_style_version

filter / Содержит в себе номер версии темы, служит для того, чтобы обновлять CSS и JS у всех посетителей при обновлении темы. Можно отключить кодом ниже:

/**
 * Убрать номер версии ?ver= у css и js файлов
 */
add_filter( 'root_style_version', 'root_style_version_function' );
function root_style_version_function() {
    return null;
}

root_customizer_styles_position

filter / Позволяет изменить хук для вывода стилей кастомайзера, например, перенести их в подвал

/**
 * Изменить хук для вывода стилей кастомайзера
 * например, перенести их в подвал
 */
add_filter( 'root_customizer_styles_position', function() {
    return 'wp_footer';
} );

root_customizer_styles_priority

filter / Позволяет изменить вес(порядок) для вывода стилей кастомайзера

add_filter( 'root_customizer_styles_priority', function() {
    return 999;
} );

root_check_license_function

filter / Позволяет отключить дублирующую ф-цию для проверки лицензии check_license. Необходимо при конфликтах в названиях ф-ций check_license

/**
 * Отключаем дублирующую ф-цию check_license
 */
add_filter( 'root_check_license_function', '__return_false' );

Отключаем вывод Техническая поддержка в верхней панели

/**
 * Отключить вывод в верхней панели Техническая поддержка
 */
add_action( 'init', function(){
    remove_action( 'wp_before_admin_bar_render', 'wp_admin_bar_support' );
} );
WPShop Docs