block_core_latest_posts_migrate_categories()WP 1.0

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.

Хуков нет.


Массив. The migrated block object.


block_core_latest_posts_migrate_categories( $block );
$block(массив) (обязательный)
A single parsed block object.

Код block_core_latest_posts_migrate_categories() WP 6.3.1

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;