Liberación de ACF 5.11 – Soporte de la API REST de WordPress
Versión 5.11 de Advanced Custom Fields: Soporte para WP REST API
La última versión importante de Advanced Custom Fields ya está ampliamente disponible. La Versión 5.11 incluye algunas emocionantes mejoras enfocadas en desarrolladores.
Soporte para WP REST API
La mayor adición en esta versión es el soporte para campos personalizados de ACF en la WP REST API de WordPress.
Hasta ahora, los valores de los campos de ACF no eran visibles ni editables a través de la WP REST API sin el uso de código personalizado u otro plugin. Con esta versión, el soporte para la WP REST API está integrado directamente en los grupos de campos de ACF con el cambio de un interruptor. Esto significa que los valores de los campos de ACF ahora pueden ser accedidos a través de los endpoints existentes para objetos de contenido de WordPress como entradas, páginas, tipos de entrada personalizados y usuarios.
Esto brinda a los sitios impulsados por ACF posibilidades infinitas con la WP REST API. Por ejemplo, imaginemos que tienes un sitio para una concesionaria de automóviles que utiliza un tipo de entrada personalizado para automóviles, enriquecido con campos de ACF para marca, modelo, tamaño del motor, color, etc. Si servicios de terceros necesitan acceder a estos datos, puedes proporcionar la URL de la WP REST API que devuelve datos JSON para ser consumidos por esos servicios:
https://cranfordcars.com/wp-json/wp/v2/cars/
{
«id»: 65,
«date»: «2021-11-10T08:26:55»,
«date_gmt»: «2021-11-10T08:26:55»,
«guid»: {
«rendered»: «https://cranfordcars.com/?post_type=cars&p=65»
},
«modified»: «2021-11-10T08:26:55»,
«modified_gmt»: «2021-11-10T08:26:55»,
«slug»: «bmw-320i»,
«status»: «publish»,
«type»: «cars»,
«link»: «https://cranfordcars.com/cars/bmw-320i/»,
«title»: {
«rendered»: «BMW 320i»
},
«content»: {
«rendered»: «<p>El <b>BMW Serie 3</b> es una línea de <a title=»Coche ejecutivo compacto» href=»https://es.wikipedia.org/wiki/Coche_ejecutivo_compacto»>coches ejecutivos compactos</a> fabricados por el fabricante alemán <a title=»BMW» href=»https://es.wikipedia.org/wiki/BMW»>BMW</a> desde mayo de 1975. Es el sucesor de la serie <a title=»Serie BMW 02″ href=»https://es.wikipedia.org/wiki/Serie_BMW_02″>02</a> y se ha producido en siete generaciones diferentes.</p>n»
},
«template»: «»,
«acf»: {
«make»: «BMW»,
«model»: «320i»,
«engine_size»: «2l»,
«color»: «Blanco»
},
«_links»: {
«self»: [
{
«href»: «https://cranfordcars.com/wp-json/wp/v2/cars/65»
}
],
«collection»: [
{
«href»: «https://cranfordcars.com/wp-json/wp/v2/cars»
}
],
«about»: [
{
«href»: «https://cranfordcars.com/wp-json/wp/v2/types/cars»
}
],
«wp:attachment»: [
{
«href»: «https://cranfordcars.com/wp-json/wp/v2/media?parent=65»
}
],
«curies»: [
{
«name»: «wp»,
«href»: «https://api.w.org/{rel}»,
«templated»: true
}
]
}
}
Esto también permite a los desarrolladores construir temas personalizados utilizando React, Vue, u cualquier otra librería JavaScript.
Puedes habilitar o deshabilitar grupos de campos específicos para que se incluyan en la REST API marcando la opción «Mostrar en REST API» en la configuración del grupo de campos. El valor predeterminado para esta configuración es No, por lo que debes cambiarlo a Sí si deseas que tus grupos de campos se muestren en la WP REST API.
Cualquier grupo de campos personalizados añadidos a los datos de WordPress como entradas (incluyendo todos los tipos de entrada personalizada), usuarios y categorías (incluyendo todas las taxonomías personalizadas), estarán disponibles en sus respectivos endpoints de la WP REST API.
Los datos de ACF están disponibles al utilizar los siguientes verbos de solicitud en un endpoint válido de la WP REST API:
- Solicitudes GET: te permiten ver datos de ACF.
- Solicitudes OPTIONS: te permiten ver el esquema de los datos de ACF.
- Solicitudes POST: te permiten actualizar cualquier campo de ACF.
Debido a que las solicitudes POST te permiten manipular tus datos de ACF, se requerirá autenticar tus solicitudes POST, utilizando uno de los métodos de autenticación disponibles para WordPress.
Puedes encontrar todos los detalles sobre cómo funciona la integración de ACF para la WP REST API en nuestra documentación de WP REST API, incluyendo una lista de endpoints disponibles, detalles sobre cómo autenticar tus solicitudes POST y ejemplos de código completos.
El soporte de la REST API está disponible tanto en los plugins ACF como ACF PRO.
Mejoras en la Clave de Licencia
Una solicitud común que hemos visto de los usuarios es la capacidad de definir la clave de licencia de ACF PRO en el código en lugar de almacenarla en la base de datos de WordPress. Esta es una opción que hemos habilitado para todos nuestros plugins de WordPress, por lo que tenía sentido añadirla a ACF.
ACF ahora buscará y usará una constante de PHP llamada ACF_PRO_LICENSE, la cual puedes definir con tu clave de licencia.
define(‘ACF_PRO_LICENSE’, ‘tuciavaqui’ );
Esto se puede hacer en el archivo wp-config.php o en cualquier otro archivo que WordPress ejecute antes de cargar el plugin ACF PRO. Para más detalles, echa un vistazo a nuestra guía sobre cómo activar el plugin ACF PRO.
Correcciones de Seguridad, Mejoras y Solución de Errores
Siempre estamos buscando formas de mejorar la seguridad y funcionalidad de nuestros productos, y ACF no es una excepción. En esta versión incluimos las siguientes mejoras:
- Siguiendo el ejemplo establecido por el equipo de WooCommerce, eliminamos todas las instancias de la función extract y establecimos explícitamente las variables previstas.
- Hemos mejorado la seguridad para consultas de usuarios AJAX en ACF.
- Hemos solucionado un error donde el contenedor .acf-block-preview no aparecía al previsualizar un bloque en modo automático.
- Hemos corregido un problema de seguridad donde funciones de A
Lee el artículo original en https://www.advancedcustomfields.com/blog/acf-5-11-release-rest-api/ para conocer todos los detalles.
Haz que tu web sea más segura y eficiente con Zonsai.