get_global( $region ); if ( ! empty( $existing['layout'] ) ) { continue; } $schema = $parser->parse_file( $file ); if ( null === $schema ) { continue; } // Build defaults from schema settings. $settings = array(); foreach ( $schema['settings'] ?? array() as $field ) { if ( ! empty( $field['id'] ) && isset( $field['default'] ) && '' !== $field['default'] ) { $settings[ $field['id'] ] = $field['default']; } } // Build default blocks if declared. $blocks = array(); foreach ( $schema['default_blocks'] ?? array() as $def_block ) { $blocks[] = array( 'block' => 'b_' . wp_generate_uuid4(), 'type' => $def_block['type'], 'settings' => $def_block['settings'] ?? array(), ); } $instance_id = $slug . '_x1'; $layout = array( array( 'instance' => $instance_id, 'type' => $slug ) ); $instances = array( $instance_id => array( 'settings' => $settings, 'blocks' => $blocks ) ); $store->save_global( $region, $layout, $instances ); } } }