Хуки Cook It

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

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

Для событий action

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

Например:

add_action( 'cook_it_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;
} );

cook_it_metabox_thumbnail_post_type

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

/**
 * $post_type - название произвольного типа постов
 */
add_filter( 'cook_it_metabox_thumbnail_post_type', function() {
   return array( 'post', 'page', '$post_id' );
} );

cook_it_metabox_hide_elements_post_type

filter / Позволяет добавить блок «Скрыть элементы» в окно редактирования записи произвольного типа поста.

/**
 * $post_type - название произвольного типа постов
 */
add_filter( 'cook_it_metabox_hide_elements_post_type', function() {
   return array( 'post', '$post_id' );
} );

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

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

cook_it_thumb_big_sizes

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

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

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

cook_it_thumb_wide

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

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

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

cook_it_after_post_card

action / Позволяет выводить любой код после карточек постов. Например, чтобы разместить какой-то код/блок на главной после 2 поста. При этом у функции есть 2 параметра: $n — порядковый номер карточки поста и $type — тип карточки поста.

/**
 * $n - порядковый номер карточки после
 * $type - тип карточки поста: card-big, card-line, card-small
 */
add_action( 'cook_it_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 == 'card-big' ) {
      echo '<div style="width: 100%;background:#eee;padding: 15px;margin: 10px 0 20px;">Блок после 3 карточки типа card-big</div>';
   }

}, 10, 2 );

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

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

cook_it_after_body

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

cook_it_before_header

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

cook_it_logotype_alt

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

cook_it_before_main_navigation

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

cook_it_after_main_navigation

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

cook_it_after_header

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

cook_it_before_site_content

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

Хуки записей

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

cook_it_ingredients_title

filter / Позволяет изменить заголовок блока «Ингредиенты» рецепта.

/**
 * $title - нужное название заголовка
 */
add_filter( 'cook_it_ingredients_title', function() {
   return '$title';
} );

cook_it_nutritional_title

filter / Позволяет изменить заголовок «На порцию» в блоке «Ингредиенты» рецепта.

/**
 * $title - нужное название заголовка
 */
add_filter( 'cook_it_nutritional_title', function() {
   return '$title';
} );

cook_it_steps_title

filter / Позволяет изменить заголовок блока «Шаги» рецепта.»

/**
 * $title - нужное название заголовка
 */
add_filter( 'cook_it_steps_title', function() {
   return '$title';
} );

cook_it_video_title

filter / Позволяет изменить заголовок «Видео-рецепт» в блоке «Шаги» рецепта.

/**
 * $title - нужное название заголовка
 */
add_filter( 'cook_it_video_title', function() {
   return '$title';
} );

cook_it_single_before_title

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

cook_it_single_after_title

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

cook_it_single_before_excerpt

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

cook_it_single_after_excerpt

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

cook_it_single_the_content

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

cook_it_single_after_the_content

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

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

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

Хуки страниц

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

cook_it_page_before_title

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

cook_it_page_after_title

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

cook_it_page_the_content

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

cook_it_page_after_the_content

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

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

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

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

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

cook_it_archive_before_title

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

cook_it_archive_after_title

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

cook_it_archive_before_posts

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

cook_it_archive_after_posts

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

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

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

cook_it_sidebar_before_widgets

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

cook_it_sidebar_after_widgets

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

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

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

cook_it_after_site_content

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

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

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

WPShop Docs