block_categories
Устарел с версии 5.8.0. Больше не поддерживается и может быть удален. Смотрите block_categories_all.
Позволяет добавить/удалить/изменить категории блоков Gutenberg.
Чтобы новая категория отобразилась в меню, нужно добавить в нее хотя бы один блок!
Использование
add_filter( 'block_categories', 'wp_kama_block_categories_filter', 10, 3 );
/**
* Function for `block_categories` filter-hook.
*
* @param array[] $block_categories Array of categories for block types.
* @param WP_Post $post Post being loaded.
* @param $string
*
* @return array[]
*/
function wp_kama_block_categories_filter( $block_categories, $post, $string ){
// filter...
return $block_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 | Введена. |
| Устарела с 5.8.0 | Use the {@see 'block_categories_all'} filter instead. |
Где вызывается хук
block_categories
wp-includes/block-editor.php 100
$block_categories = apply_filters_deprecated( 'block_categories', array( $block_categories, $post ), '5.8.0', 'block_categories_all' );
