render_block_core_categories

函数


render_block_core_categories ( $attributes )
参数
  • (array)
    $attributes
    The block attributes.
    Required:
返回值
  • (string) Returns the categories list/dropdown markup.
定义位置
  • wp-includes/blocks/categories.php
    , line 15
引入
弃用

Renders the `core/categories` block on server.

function render_block_core_categories( $attributes ) {
	static $block_id = 0;
	$block_id++;

	$args = array(
		'echo'         => false,
		'hierarchical' => ! empty( $attributes['showHierarchy'] ),
		'orderby'      => 'name',
		'show_count'   => ! empty( $attributes['showPostCounts'] ),
		'title_li'     => '',
		'hide_empty'   => empty( $attributes['showEmpty'] ),
	);
	if ( ! empty( $attributes['showOnlyTopLevel'] ) && $attributes['showOnlyTopLevel'] ) {
		$args['parent'] = 0;
	}

	if ( ! empty( $attributes['displayAsDropdown'] ) ) {
		$id                       = 'wp-block-categories-' . $block_id;
		$args['id']               = $id;
		$args['show_option_none'] = __( 'Select Category' );
		$wrapper_markup           = '
%2$s
'; $items_markup = wp_dropdown_categories( $args ); $type = 'dropdown'; if ( ! is_admin() ) { // Inject the dropdown script immediately after the select dropdown. $items_markup = preg_replace( '#(?)#', build_dropdown_script_block_core_categories( $id ), $items_markup, 1 ); } } else { $wrapper_markup = '
    %2$s

‘;
$items_markup = wp_list_categories( $args );
$type = ‘list’;
}

$wrapper_attributes = get_block_wrapper_attributes( array( ‘class’ => “wp-block-categories-{$type}” ) );

return sprintf(
$wrapper_markup,
$wrapper_attributes,
$items_markup
);
}