wpseek.com
WordPress开发者和主题制作者的搜索引擎



block_core_latest_posts_migrate_categories › WordPress Function

Sincen/a
已弃用n/a
block_core_latest_posts_migrate_categories ( $block )
参数:
  • (array) $block A single parsed block object.
    Required: Yes
返回:
  • (array) The migrated block object.
定义在:
文档:

Handles outdated versions of the `core/latest-posts` block by converting attribute `categories` from a numeric string to an array with key `id`.

This is done to accommodate the changes introduced in #20781 that sought to add support for multiple categories to the block. However, given that this block is dynamic, the usual provisions for block migration are insufficient, as they only act when a block is loaded in the editor. TODO: Remove when and if the bottom client-side deprecation for this block is removed.


源码

function block_core_latest_posts_migrate_categories( $block ) {
	if (
		'core/latest-posts' === $block['blockName'] &&
		! empty( $block['attrs']['categories'] ) &&
		is_string( $block['attrs']['categories'] )
	) {
		$block['attrs']['categories'] = array(
			array( 'id' => absint( $block['attrs']['categories'] ) ),
		);
	}

	return $block;
}