WordPress 6.7 Introducida una nueva característica que permite a los plugins elevar el registro de sus bloqueswp_register_block_metadata_collection()
rendimiento del tipo, especialmente para los plugins que registran varios tipos de bloque.
![Image[1]-Nueva API de registro de tipos de bloque: mejora el rendimiento en WordPress 6.7 - Photon Flux | Servicio profesional de reparaciones de WordPress, alcance global, respuesta rápida](https://www.361sale.com/wp-content/uploads/2024/10/2024101802081176.png)
Extender los comportamientos del núcleo de WordPress a los plugins
Desde WordPress 6.1, WordPress Core ha incluido un mecanismo para mejorar el rendimiento de la carga de todos los tipos de bloques incorporados: como parte del proceso de compilación, los bloques individualesbloque.json
El archivo se analizará como unbloques-json.php
que devuelve todos sus datos como una matriz.Mejora significativamente el rendimiento al evitar la necesidad de realizar muchas y costosas operaciones de sistema de archivos y JSON en cada solicitud de WordPress.funcionamiento. Para más información sobre los cambios originales, consulte el#55005.
![Image[2]-Nueva API de registro de tipos de bloque: mejora el rendimiento en WordPress 6.7 - Photon Flux | Servicio profesional de reparaciones de WordPress, alcance global, respuesta rápida](https://www.361sale.com/wp-content/uploads/2024/10/2024101801555379.png)
Sin embargo, la forma en que se implementa este mecanismo sólo se aplica al propio núcleo de WordPress. Hasta ahora, los plugins no han podido beneficiarse de las mismas ventajas. Especialmente para los plugins que contienen muchos tipos de bloque en sí mismos, esto significa efectivamente una pérdida de rendimiento. Esto cambiará en WordPress 6.7.
Recopilación de metadatos de bloques registrados
El plugin ahora registra opcionalmente PHP "lista de artículos" que contiene todos los metadatos para su tipo de bloque. Para cualquier tipo de bloque que se esté registrando, WordPress Core comprobará ahora si existe un archivo de manifiesto que cubra ese tipo de bloque y, en caso afirmativo, utilizará los datos del archivo de manifiesto en lugar del archivobloque.json
Lea y analice directamente los archivos de tipo bloque.
Para poder utilizar esta nueva función, los desarrolladores de plugins deben utilizar el nuevowp_register_block_metadata_collection()
que toma dos argumentos:
$path
: La ruta base donde se encuentran los archivos de bloque de la colección.$manifiesto
: Ruta al archivo de manifiesto de la colección.
todo el mundobloque.json
Los documentos que deben formar parte de la colección deben encontrarse todos en el$path
, situado en su propio directorio que coincide con el nombre del tipo de bloque (sin el espacio de nombres del bloque).
tome nota de: Registrar una colección de metadatos de bloque no sustituye la necesidad de registrar tipos de bloque individuales. Sigue siendo necesario llamar alregister_block_type()
tal vezregistrar_tipo_bloque_desde_metadatos()
. El uso de la nueva función es opcional para mejorar el rendimiento, pero es muy recomendable utilizarla, especialmente para los plugins que registran varios tipos de bloque.
![Image[3]-Nueva API de registro de tipos de bloque: mejora el rendimiento en WordPress 6.7 - Photon Flux | Servicio profesional de reparaciones de WordPress, alcance global, respuesta rápida](https://www.361sale.com/wp-content/uploads/2024/10/2024101802114159.png)
Generación automática de listas de recogida de metadatos en bloque
Los desarrolladores de plugins son responsables de generar y mantener los archivos de manifiesto que registran para las colecciones de metadatos del tipo de bloque del plugin. Con el fin de simplificar este proceso, la comunidad ha hecho delPaquete NPMLa implantación de un nuevocomandobuild-blocks-manifest
Este comando fue liberado como parte de la versión 30.3.0.@wordpress/scripts
debewp-scripts build-blocks-manifest
El comando acepta dos parámetros:
--entrada
: El directorio donde se encuentra el tipo de bloque. El valor por defecto es "build".-- salida
: La ruta al archivo donde se almacena el manifiesto de la colección de metadatos del bloque de compilación. Por defecto es "build/blocks-manifest.php".
De hecho, los parámetros de este comando son equivalentes a los parámetros del comandowp_register_block_metadata_collection()
::--entrada
Los parámetros son equivalentes a los parámetros$path
(matem.) género-- salida
Los parámetros son equivalentes a los parámetros$manifiesto
.
Ejemplo completo
Para este ejemplo, suponga que tiene unmi-bloque-biblioteca
Plug-ins registrados para 3 tipos de bloque:
mi-bloque-biblioteca/precios
mi-biblioteca-servicios
mi-bloque-biblioteca/testimonio
El código fuente de estos tipos de bloque está implementado en el directorio del pluginsrc
, más concretamente en el siguiente catálogo:
src/precios
utilizar parami-bloque-biblioteca/precios
Bloques.src/servicios
utilizar parami-biblioteca-servicios
Bloques.src/testimonial
utilizar parami-bloque-biblioteca/testimonio
Bloques.
Utilizando loswp-scripts build
el código se integrará en el plugin deconstruya
y cada tipo de bloque tiene el mismo subdirectorio.
![Image[4]-Nueva API de registro de tipos de bloque: mejora el rendimiento en WordPress 6.7 - Photon Flux | Servicio profesional de reparaciones de WordPress, alcance global, respuesta rápida](https://www.361sale.com/wp-content/uploads/2024/10/2024101802121913.png)
Después de ejecutar la compilación, puede utilizar el nuevowp-scripts build-blocks-manifest
comando. Dado que el complemento utiliza la ubicación por defecto de su tipo de bloque, no es necesario pasar ningún parámetro al comando. Basta con ejecutar el comandowp-scripts build-blocks-manifest
Sebloque.json
Leer los metadatos de los tres bloques del catálogoconstruya
y fusionarlos en unbuild/bloques-manifest.php
Documentación.
El archivo de manifiesto tiene el siguiente aspecto:
array( /* Bloquear metadatos. */ ), 'testimonial' => array( /* Bloquear metadatos.
'testimonial' => array( /* Bloquear metadatos. */ ), 'testimonial' => array( /* Bloquear metadatos. */ )
).
En el futuro, se podrán utilizar los mismos dos comandos cuando se realicen cambios en el tipo de bloque y en su implementación:
wp-scripts build
wp-scripts build-blocks-manifest
Tras generar el archivo de manifiesto, ya puede registrar la colección de metadatos del bloque, como se muestra a continuación:
wp_register_block_metadata_collection(
wp_plugin_dir . '/mi-bloque-biblioteca/construir',
wp_plugin_dir . '/my-block-library/build/blocks-manifest.php'
);
Un último punto importante, no olvide registrar el tipo de bloque real:
register_block_type_from_metadata( WP_PLUGIN_DIR . '/my-block-library/build/pricing' ).
register_block_type_from_metadata( WP_PLUGIN_DIR . '/my-block-library/build/services' ); register_block_type_from_metadata( WP_PLUGIN_DIR .
register_block_type_from_metadata( WP_PLUGIN_DIR . '/my-block-library/build/testimonial' ); register_block_type_from_metadata( WP_PLUGIN_DIR .
![Image[5]-Nueva API de registro de tipos de bloque: mejora el rendimiento en WordPress 6.7 - Photon Flux | Servicio profesional de reparaciones de WordPress, alcance global, respuesta rápida](https://www.361sale.com/wp-content/uploads/2024/10/2024101802124064.png)
resúmenes
nueva funciónwp_register_block_metadata_collection()
y su herramienta de apoyo@wordpress/scripts
son una potente combinación para mejorar el rendimiento de los tipos de bloque de registro de plugins. Hacen que el proceso sea fácil y sencillo, así que si los plugins registran tipos de bloque, considere la posibilidad de incorporar este enfoque a su flujo de trabajo de desarrollo y a su base de código de plugins.
Enlace a este artículo:https://www.361sale.com/es/21715El artículo está protegido por derechos de autor y debe ser reproducido con atribución.
Sin comentarios