WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru

block_categories хук-фильтр . WP 5.0.0

Позволяет добавить/удалить/изменить категории блоков Gutenberg.

Чтобы новая категория отобразилась в меню, нужно добавить в нее хотя бы один блок!

Использование

add_filter( 'block_categories', 'filter_function_name_5127', 10, 2 );
function filter_function_name_5127( $default_categories, $post ){
	// filter...

	return $default_categories;
}
$default_categories(массив)
Массив категорий блоков.
$post(объект)
Текущая загруженная запись.

Примеры

#1 Добавим новую категорию для группирования своих блоков

add_filter( 'block_categories', 'custom_block_category', 10, 2 );

function custom_block_category( $default_categories, $post ) {

	if ( $post->post_type !== 'post' ) {
		return $default_categories;
	}

	return array_merge(
		$default_categories,
		[
			[
				'slug'  => 'glum-category',     // Слаг категории который будем использовать при регистрации блока
				'title' => __( 'Glum Category', 'my-plugin' ),      // Отображаемое название категории
				'icon'  => 'wordpress'      // Иконка для категории, можно передать null если иконка не нужна
			],
		]
	);

}

Список изменений

С версии 5.0.0 Введена.

Где вызывается хук

get_block_categories()
block_categories
wp-admin/includes/post.php 2207
return apply_filters( 'block_categories', $default_categories, $post );

Где используется хук в ядре WP

Использование не найдено.
Glum 697
Редакторы: Kama 7746
5 комментов
  • Александр seosprint25.ru

    Прикольная функция. Я не знал, что так можно делать.

    1
    Ответить12.Янв.2020 21:33 #
  • Приветствую. Делаю ACF блоки для Gutenberg, не получается создать для них категорию. Использую эту функцию.

    Ответить15.Янв.2020 02:41 #
    • Блин, не спал походу. Тестирую на странице, а в коде вот условие, только в записи вывод.

      if ( $post->post_type !== 'post' ) { return $default_categories; }

      Ответить15.Янв.2020 02:52 #
  • Подскажите пожалуйста, через какой хук можно сменить порядок вывода категорий?

    Ответить16.Янв.2020 14:07 #
    • Наверное через этот же хук что описан выше. В функции массив $default_categories сортируете как нужно и возвращаете.

      Ответить5.Мар.2020 22:54 #