Nueva función de WordPress 6.5: Detalles del ejemplo de la API de vinculación de bloques

WordPress 6.5 introduce una nueva función: la API de enlaces de bloques. Se trata de una herramienta que facilita el uso del editor de bloques y te permite añadir todo tipo de datos a diferentes partes de tu sitio web. Esto significa que tendrás que escribir mucho menos código personalizado al editar.

Nueva función de WordPress 6.5: Detalles del ejemplo de la API de vinculación de bloques

¿Qué es la API de enlace de bloques?

Supongamos que tiene un bloque básico que necesita utilizar en una página web para mostrar cierta información de una fuente específica, como los detalles de un artículo o algunas reglas personalizadas formuladas en código PHP. ¿Cómo hacerlo? He aquí la manera de hacerlo de forma sencilla y clara.

Nueva función de WordPress 6.5: Detalles del ejemplo de la API de vinculación de bloques

En versiones anteriores de WordPress, si quería mostrar alguna información especial en una página web, como detalles adicionales de una entrada o algún contenido personalizado mediante lógica PHP, normalmente tenía que crear un bloque personalizado nuevo. Este proceso podía ser complicado y lento.

Sin embargo, a partir de WordPress 6.5, las cosas se han vuelto mucho más fáciles. Con la API de vinculación de bloques, ahora puedes hacer que un bloque estándar existente, como un párrafo o un título, obtenga datos directamente de una fuente diferente sin tener que crear un bloque completamente nuevo. Esto significa que puedes hacer que un bloque de párrafo muestre directamente los metadatos de una entrada, o que un bloque de título muestre la lógica PHP generada por un plugin, todo ello sin tener que sumergirte en la programación de React, el registro de bloques o la creación de un nuevo bloque personalizado desde cero.

La API de vinculación de bloques de WordPress 6.5 es una importante actualización que facilita enormemente la ampliación del editor y de los bloques. De hecho, esta nueva API se ha utilizado para demostrar cómo vincular los campos personalizados de una entrada a un bloque principal.

Yendo un poco más allá, también puede utilizar esta función para personalizar bloques y obtener datos de fuentes especiales que usted configure.

Para obtener información detallada sobre cómo crear y utilizar enlaces de bloque, consulte el blog para desarrolladores de WordPress en la páginaTutorial introductorio.

¿Cómo funciona la encuadernación en bloque?

esbozado

Antes de adentrarnos en cómo utilizar la API de enlace de bloques para enlazar con una fuente de datos personalizada, explicaremos brevemente cómo funciona esta API. A continuación, entraremos en más detalles sobre cómo vincular un bloque estándar a un campo personalizado en un artículo.

A continuación se muestra una tabla con los bloques que ahora pueden enlazarse y sus propiedades:

Nueva función de WordPress 6.5: Detalles del ejemplo de la API de vinculación de bloques

Aunque de momento no hay muchos bloques y atributos que puedan utilizarse con esta nueva función, son suficientes para cubrir muchas necesidades comunes. En el futuro, está previsto ampliar esta función a más bloques principales y personalizados.

Para utilizar la vinculación de bloques, tendrá que configurarlo para indicar a WordPress que utilice etiquetas específicas para obtener información de las fuentes de datos que elija. Una vez configurado, la lógica de esas fuentes de datos se utilizará para mostrar el contenido cuando se muestre en el front-end de la página.

Una vez que una propiedad está vinculada, no se puede cambiar en el editor, y el editor muestra una bandera que le indica que la propiedad ya está conectada a alguna fuente de datos.

Nueva función de WordPress 6.5: Detalles del ejemplo de la API de vinculación de bloques

He aquí un ejemplo de cómo sacarle partido con el soporte integrado de campos personalizados.

Campos personalizados

En la primera versión de la API de vinculación de bloques, no había una interfaz directa para vincular propiedades a campos personalizados. Esto significa que tienes que ir manualmente al editor de código de Gutenberg para añadir código específico.

Si desea conectar los atributos soportados a los campos personalizados del artículo, puede añadir el código en el siguiente formato:

<!-- wp:paragraph {

"metadata":{

"bindings":{

"content":{

"source":"core/post-meta",

"args":{

"key":"book-genre"

}

}

}

}

} -->

<p></p>

<!-- /wp:paragraph -->

Para que esto funcione, necesitas añadir algún código al archivo functions.php de tu tema o a un plugin para que puedas asegurarte de que tus campos personalizados se han registrado correctamente en los metadatos de la entrada.

registrar_meta(

'post',

'libro-género'.

array(

'show_in_rest' => true,

'single' => true,

'type' => 'string', 'single' => true, 'type' => 'string', 'single' => true

'default' => 'Campo de texto por defecto',

)

);

Tenga en cuenta que, para estar seguro, es necesario eliminar temporalmente elmostrar_en_descansose establece enverdadero.

Más fuentes de datos para el futuro

La compatibilidad con los metadatos de las entradas es sólo el primer paso. Tenemos previsto añadir más fuentes de datos en WordPress 6.6, como información del sitio, información del usuario y clasificados.

Además, la API de vinculación de bloques te permite registrar tus propias fuentes de datos, que es la misma funcionalidad que utilizamos para registrar los metadatos de los artículos.

Registrar una fuente personalizada

esbozado

Para crear una nueva fuente de datos vinculada a un bloque, deberá utilizar una fuente de datos vinculada a un bloque denominadaregister_block_bindings_source()éste es su formato básico:

register_block_bindings_source(

cadena $source_name,

matriz $source_propiedades

).

Para registrar una nueva fuente de enlace de bloques, puede utilizar dos parámetros:

  1. 1TP4Nombre_fuenteEste es el identificador único de su fuente de datos personalizada, y debe tener el formato "namespace/name". Recuerde que cada fuente de datos necesita un espacio de nombres único.
  2. 1TP4Fuente_propiedades: Es un array que define las características de la fuente de datos, incluyendo:
    • etiqueta: Se trata de una cadena de texto que describe su fuente de datos, aunque actualmente esta etiqueta no es visible en la interfaz.
    • get_value_callbackEsta es una función o cierre PHP que será llamada cuando la fuente de enlace del bloque necesite usar los datos.
    • usar_contexto(opcional): se trata de una matriz que especifica lo que debe incluirse si su fuente de datos requiere información adicional (por ejemplo, el ID del artículo actual).

Cuando WordPress procesa el bloque y encuentra una fuente de datos personalizada para cargar, llama a la funciónget_value_callbackfunción. La función debe configurarse así:

projectlug_bindings_callback(

array $source_args,

WP_Block $block_instance,

string $attribute_name

).

Utilización de mecanismos de registro

En la práctica, puede utilizar las siguientes funciones de registro para crear enlaces sencillos para la información sobre derechos de autor:

add_action( 'init', 'projectslug_register_block_bindings' );

function projectlug_register_block_bindings() {

register_block_bindings_source( 'projectslug/copyright', array(

'label' => __( 'Copyright', 'projectlug' ),

'get_value_callback' => 'projectlug_copyright_binding'

) );

}

function projectlug_copyright_binding() {

return '© ' . date( 'Y' ); } function projectslug_copyright_binding() { return '© ' .

}

A continuación se muestra un ejemplo de cómo vincular un bloque de párrafo a una fuente de datos para obtener información sobre derechos de autor, y se muestra el aspecto que tiene en el front-end de un sitio web:

<!-- wp:paragraph {

"metadata":{

"bindings":{

"content":{

"source":"projectslug/copyright"

}

}

}

} -->

<p>Bloque de derechos de autor</p>

<!-- /wp:paragraph -->
Nueva función de WordPress 6.5: Detalles del ejemplo de la API de vinculación de bloques

Por supuesto, esto es sólo un ejemplo básico. Puede utilizar otros parámetros en la función para construir una funcionalidad más compleja.
Otras funciones de la API

Además, hay otras funciones que actualmente están a disposición del público:

  • unregister_block_bindings_source($source_name): Se utiliza para dar de baja una fuente de datos que ya ha sido configurada.
  • get_all_registered_block_bindings_sources(): Permite obtener una lista de todas las fuentes de datos registradas.
  • get_block_bindings_source($source_name): Se utiliza para obtener los detalles de una fuente de datos específica registrada.

Ten en cuenta también que, aunque las fuentes de datos principales están disponibles en la interfaz de usuario del editor, estas API para el editor son actualmente privadas. Esto significa que aún estamos debatiendo cómo estandarizar el uso de estas funciones en la interfaz de usuario.

Por lo tanto, si desea una interfaz fácil de usar para manejar los campos personalizados, ahora tiene que desarrollar esta funcionalidad usted mismo.

Estudios complementarios y próximos pasos

¿Quieres inspirarte más utilizando encuadernaciones en bloque en tus proyectos? Eche un vistazo a labloque-bindings.phpEl código de registro en el archivo y elnúcleo/post-metafuentes de datos, ¡y no te pierdas nuestros enlaces de bloques!Serie de tutoriales introductorios.

La encuadernación en bloque aún está en pañales.En el futuro tenemos previstoSe implementan las siguientes funciones:

  • Permite editar los valores de los metacampos directamente en la interfaz de usuario.
  • Añade funciones al editor para que los usuarios puedan añadir enlaces fácilmente.
  • Introducción de nuevas fuentes de datos integradas, como datos del sitio, datos de artículos y datos de categorías.
  • Mayor compatibilidad con más bloques básicos.
  • Proporciona herramientas para que los desarrolladores amplíen la interfaz de usuario del editor.

Agradecemos mucho sus comentarios. Puede encontrar más información sobre nosotros enGithubo WordPress Slack para compartir tus ideas y casos de uso con nosotros y ayudarnos a perfeccionar juntos la API de vinculación de bloques.


Póngase en contacto con nosotros
¿No puede leer el artículo? Póngase en contacto con nosotros para obtener una respuesta gratuita. Ayuda gratuita para sitios personales y de pequeñas empresas
Teléfono: 020-2206-9892
QQ咨询:1025174874
(iii) Correo electrónico: info@361sale.com
Horario de trabajo: de lunes a viernes, de 9:30 a 18:30, días festivos libres
Publicado por photon fluctuations, retweeted with attribution:https://www.361sale.com/es/6199/

Como (1)
Anterior 21 de marzo de 2024 a las 14:03.
Siguiente 21 de marzo de 2024 18:07

Recomendado

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Póngase en contacto con nosotros

020-2206-9892

QQ咨询:1025174874

Correo electrónico: info@361sale.com

Horario de trabajo: de lunes a viernes, de 9:30 a 18:30, días festivos libres

Servicio de atención al cliente WeChat
Para facilitar el registro y el inicio de sesión de los usuarios en todo el mundo, hemos anulado la función de inicio de sesión por teléfono. Si tiene problemas para iniciar sesión, póngase en contacto con nuestro servicio de atención al cliente para que le ayuden a vincular su dirección de correo electrónico.