get_block_categories() WordPress Function
The get_block_categories() function is used to retrieve the list of available categories for blocks. This can be used to filter the blocks that are shown in the block editor interface.
get_block_categories( WP_Post|WP_Block_Editor_Context $post_or_block_editor_context ) #
Returns all the categories for block types that will be shown in the block editor.
Parameters
- $post_or_block_editor_context
(WP_Post|WP_Block_Editor_Context)(Required)The current post object or the block editor context.
Return
(array[]) Array of categories for block types.
Source
File: wp-includes/block-editor.php
function get_block_categories( $post_or_block_editor_context ) {
$block_categories = get_default_block_categories();
$block_editor_context = $post_or_block_editor_context instanceof WP_Post ?
new WP_Block_Editor_Context(
array(
'post' => $post_or_block_editor_context,
)
) : $post_or_block_editor_context;
/**
* Filters the default array of categories for block types.
*
* @since 5.8.0
*
* @param array[] $block_categories Array of categories for block types.
* @param WP_Block_Editor_Context $block_editor_context The current block editor context.
*/
$block_categories = apply_filters( 'block_categories_all', $block_categories, $block_editor_context );
if ( ! empty( $block_editor_context->post ) ) {
$post = $block_editor_context->post;
/**
* Filters the default array of categories for block types.
*
* @since 5.0.0
* @deprecated 5.8.0 Use the {@see 'block_categories_all'} filter instead.
*
* @param array[] $block_categories Array of categories for block types.
* @param WP_Post $post Post being loaded.
*/
$block_categories = apply_filters_deprecated( 'block_categories', array( $block_categories, $post ), '5.8.0', 'block_categories_all' );
}
return $block_categories;
}
Expand full source codeCollapse full source codeView on TracView on GitHub
Changelog
| Version | Description |
|---|---|
| 5.8.0 | It is possible to pass the block editor context as param. |
| 5.0.0 | Introduced. |