В тему Reboot добавлены хуки: события (action) и фильтры (filter). С их помощью Вы можете добавлять свой код, изменять вывод или даже убирать какие-то блоки. Ниже идет описание хуков и примеры их использования.
Лучше всего для этого использовать плагин ProFunctions, установите и добавьте в него нужный код.
Для событий action
Для добавления события необходимо использовать ф-цию add_action()
,
первый аргумент которой — название события в теме, например reboot_after_header
второй аргумент — функция, которая будет вызвана.
Например:
add_action( 'reboot_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;
} );
reboot_contact_form_fields
filter / Позволяет настроить вывод полей в форме обратной связи. Ниже пример добавления поля Телефон к форме обратной связи.
/**
* Изменить поля в форме обратной связи
*
* name - ID поля - латинские, цифры, минус, нижнее подчеркивание
* type - type у input, по умолчанию text, может быть email, number и т.д
* placeholder - описание у поля, можно на русском
* required - может быть равно required, если обязательное поле
* tag - может быть textarea, по умолчанию input
*/
add_filter( 'reboot_contact_form_fields', function () {
return [
[
'name' => 'contact-name',
'placeholder' => 'Ваше имя',
'required' => 'required',
],
[
'name' => 'contact-email',
'type' => 'email',
'placeholder' => 'E-mail',
'required' => 'required',
],
[
'name' => 'contact-phone',
'type' => 'text',
'placeholder' => 'Телефон',
'required' => 'required',
],
[
'name' => 'contact-subject',
'placeholder' => 'Тема',
],
[
'tag' => 'textarea',
'name' => 'contact-message',
'placeholder' => 'Сообщение',
'required' => 'required',
],
];
} );
reboot_metabox_thumbnail_post_type
filter / Позволяет добавить блок «Настройки миниатюры» в окно редактирования записи произвольного типа поста, с возможностью вывода разных типов миниатюр на странице записи.
/**
* $post_type - название произвольного типа постов
*/
add_filter( 'reboot_metabox_thumbnail_post_type', function() {
return array( 'post', 'page', '$post_id' );
} );
reboot_metabox_hide_elements_post_type
filter / Позволяет добавить блок «Скрыть элементы» в окно редактирования записи произвольного типа поста.
/**
* $post_type - название произвольного типа постов
*/
add_filter( 'reboot_metabox_hide_elements_post_type', function() {
return array( 'post', '$post_id' );
} );
Хуки карточек постов
Список хуков, с помощью которых можно добавить или изменить элементы карточек постов.
При загрузке картинки в админку, для неё автоматически генерируются миниатюры: 870×400, 335×220 и 100х100 пикселей. При этом картинки пропорционально уменьшаются и обрезаются.
reboot_image_size_standard
filter / Позволяет изменить размер стандартных миниатюр в карточках постов. Ширина, высота, кадрирование (true/false). По умолчанию: 870×400.
/**
* Изменить размеры стандартных миниатюр в карточках постов
*/
add_filter( 'reboot_image_size_standard', function() {
return array( 870, 400, true );
} );
Не забудьте перегенерировать миниатюры.
reboot_image_size_small
filter / Позволяет изменить размер маленьких миниатюр в карточках постов. Ширина, высота, кадрирование (true/false). По умолчанию: 335×220.
/**
* Изменить размеры маленьких миниатюр в карточках постов
*/
add_filter( 'reboot_image_size_small', function() {
return array( 335, 220, true );
} );
Не забудьте перегенерировать миниатюры.
reboot_image_size_square
filter / Позволяет изменить размер квадратных миниатюр в карточках постов. Ширина, высота, кадрирование (true/false). По умолчанию: 100×100.
/**
* Изменить размеры квадратных миниатюр в карточках постов
*/
add_filter( 'reboot_image_size_square', function() {
return array( 100, 100, true );
} );
Не забудьте перегенерировать миниатюры.
reboot_section_posts_categories_title
filter / По умолчанию в блоках «Вывод постов» встроенного конструктора главной выводится заголовок «Подразделы» для подрубрик. С помощью данного фильтра можно изменить данный заголовок.
add_filter( 'reboot_section_posts_categories_title', function() {
return 'Здесь добавьте нужный заголовок';
} );
reboot_post_card_grid_thumbnail_size
filter / По умолчанию в карточках постов «Сетка» выводятся маленькие миниатюры 335х220 пикселей. С помощью данного фильтра можно изменить вывод миниатюр в данных карточках постов на стандартные 870х400 или квадратные 100х100 пикселей.
/**
* Изменить вывод миниатюр в карточках постов "Сетка"
* $thumbnail - размеры миниатюр: reboot_standard, reboot_small, reboot_square
*/
add_filter( 'reboot_post_card_grid_thumbnail_size', function() {
return '$thumbnail';
} );
reboot_post_card_standard_thumbnail_size
filter / По умолчанию в карточках постов «Стандартная» выводятся стандартные миниатюры 870х400 пикселей. С помощью данного фильтра можно изменить вывод миниатюр в данных карточках постов на маленькие 335х220 или квадратные 100х100 пикселей.
/**
* Изменить вывод миниатюр в карточках постов "Стандартная"
* $thumbnail - размеры миниатюр: reboot_standard, reboot_small, reboot_square
*/
add_filter( 'reboot_post_card_standard_thumbnail_size', function() {
return '$thumbnail';
} );
reboot_post_card_vertical_thumbnail_size
filter / По умолчанию в карточках постов «Вертикальная» выводятся маленькие миниатюры 335х220 пикселей. С помощью данного фильтра можно изменить вывод миниатюр в данных карточках постов на стандартные 870х400 или квадратные 100х100 пикселей.
/**
* Изменить вывод миниатюр в карточках постов "Вертикальная"
* $thumbnail - размеры миниатюр: reboot_standard, reboot_small, reboot_square
*/
add_filter( 'reboot_post_card_vertical_thumbnail_size', function() {
return '$thumbnail';
} );
reboot_post_card_horizontal_thumbnail_size
filter / По умолчанию в карточках постов «Горизонтальная» выводятся маленькие миниатюры 335х220 пикселей. С помощью данного фильтра можно изменить вывод миниатюр в данных карточках постов на стандартные 870х400 или квадратные 100х100 пикселей.
/**
* Изменить вывод миниатюр в карточках постов "Горизонтальная"
* $thumbnail - размеры миниатюр: reboot_standard, reboot_small, reboot_square
*/
add_filter( 'reboot_post_card_horizontal_thumbnail_size', function() {
return '$thumbnail';
} );
reboot_post_card_square_thumbnail_size
filter / По умолчанию в карточках постов «Маленькая» выводятся квадратные миниатюры 100х100 пикселей. С помощью данного фильтра можно изменить вывод миниатюр в данных карточках постов на стандартные 870х400 или маленькие 335х220 пикселей.
/**
* Изменить вывод миниатюр в карточках постов "Маленькая"
* $thumbnail - размеры миниатюр: reboot_standard, reboot_small, reboot_square
*/
add_filter( 'reboot_post_card_square_thumbnail_size', function() {
return '$thumbnail';
} );
reboot_post_card_related_thumbnail_size
filter / По умолчанию в похожих записях выводятся маленькие миниатюры 335х220 пикселей. С помощью данного фильтра можно изменить вывод миниатюр в похожих записях на стандартные 870х400 или квадратные 100х100 пикселей.
/**
* Изменить вывод миниатюр в похожих записях
* $thumbnail - размеры миниатюр: reboot_standard, reboot_small, reboot_square
*/
add_filter( 'reboot_post_card_related_thumbnail_size', function() {
return '$thumbnail';
} );
reboot_after_post_card
action / Позволяет выводить любой код после карточек постов. Например, чтобы разместить какой-то код/блок на главной после 2 поста. При этом у функции есть 2 параметра: $n
— порядковый номер карточки поста и $type
— тип карточки поста.
/**
* $n - порядковый номер карточки после
* $type - тип карточки поста: grid, standard, horizontal, small, vertical
*/
add_action( 'reboot_after_post_card', function( $n, $type ) {
// блок после 2 карточки на главной
if ( is_home() && $n == 2 ) {
echo '<div style="width: 100%;background:#eee;padding: 15px;margin: 10px 0 20px;">Блок на главной после 2 карточки</div>';
}
// этот блок будет выводиться после 2, 4 и 8 карточки поста в рубрике 16
if ( is_category( 16 ) && in_array( $n, [2,4,8] ) ) {
echo '<div style="width: 100%;background:#eee;padding: 15px;margin: 10px 0 20px;">Блок после 2, 4 и 8 карточки в рубрике 16</div>';
}
// после 3 карточки поста везде, где тип карточки Стандартная
if ( $n == 3 && $type == 'standard' ) {
echo '<div style="width: 100%;background:#eee;padding: 15px;margin: 10px 0 20px;">Блок после 3 карточки типа standard</div>';
}
}, 10, 2 );
Хуки шапки и верхнего меню
Список хуков, с помощью которых можно добавить или изменить элементы шапки и верхнего меню.
reboot_after_body
action / Позволяет вывести любой код сразу после тега
reboot_before_header
action / Позволяет вывести любой код перед шапкой сайта
reboot_logotype_alt
action / Позволяет изменить атрибут alt у картинки логотипа
reboot_before_main_navigation
action / Позволяет вывести любой код перед меню под шапкой
reboot_after_main_navigation
action / Позволяет вывести любой код после меню под шапкой
reboot_after_header
action / Позволяет вывести любой код после шапки сайта
reboot_before_site_content
action / Позволяет вывести любой код перед контентом сайта
Хуки записей
Список хуков, с помощью которых можно добавить или изменить элементы в записи.
reboot_single_before_title
action / Позволяет вывести любой код перед названием записи на странице записи
reboot_single_after_title
action / Позволяет вывести любой код после названия записи на странице записи
reboot_single_before_excerpt
action / Позволяет вывести любой код перед отрывком записи на странице записи
reboot_single_after_excerpt
action / Позволяет вывести любой код после отрывка записи на странице записи
reboot_single_after_the_content
action / Позволяет вывести любой код после контента на странице записи
reboot_single_before_social
action / Позволяет вывести любой код перед блоком нижних соц. кнопок на странице записи
reboot_single_after_social
action / Позволяет вывести любой код после блока нижних соц. кнопок на странице записи
reboot_single_before_related
action / Позволяет вывести любой код перед блоком похожих записей на странице записи
reboot_single_after_related
action / Позволяет вывести любой код после блока похожих записей на странице записи
Хуки страниц
Список хуков, с помощью которых можно добавить или изменить элементы на странице.
reboot_page_before_title
action / Позволяет вывести любой код перед названием страницы.
reboot_page_after_title
action / Позволяет вывести любой код после названия страницы.
reboot_page_after_the_content
action / Позволяет вывести любой код после контента страницы.
Хуки страниц архивов
Список хуков, с помощью которых можно добавить или изменить элементы на страницах архивов.
reboot_archive_before_title
action / Позволяет вывести любой код перед названием страницы архива.
reboot_archive_after_title
action / Позволяет вывести любой код после названия страницы архива.
reboot_archive_before_posts
action / Позволяет вывести любой код перед карточками постов на странице архива.
reboot_archive_after_posts
action / Позволяет вывести любой код после карточек постов на странице архива.
Хуки подвала и нижнего меню
Список хуков, с помощью которых можно добавить или изменить элементы подвала и нижнего меню.
reboot_after_site_content
action / Позволяет вывести любой код после контента сайта
reboot_before_footer
action / Позволяет вывести любой код перед подвалом сайта
reboot_after_footer
action / Позволяет вывести любой код после подвала сайта
Дополнительные хуки
Список хуков, с помощью которых можно добавить или изменить элементы встроенных модулей.
reboot_style_version
filter / Содержит в себе номер версии темы, служит для того, чтобы обновлять CSS и JS у всех посетителей при обновлении темы. Можно отключить кодом ниже:
/**
* Убрать номер версии ?ver= у css и js файлов
*/
add_filter( 'reboot_style_version', 'reboot_style_version_function' );
function reboot_style_version_function() {
return null;
}
Отключаем вывод Техническая поддержка в верхней панели
/**
* Отключить вывод в верхней панели Техническая поддержка
*/
add_action( 'init', function() {
remove_action( 'wp_before_admin_bar_render', 'wp_admin_bar_support' );
} );