✅ Noticias, temas, complementos de WEB y WordPress. Aquí compartimos consejos y las mejores soluciones para sitios web.

Codificación para campos personalizados avanzados: una introducción

37

Advanced Custom Fields (ACF) es un complemento de WordPress que es una gran herramienta para configurar metadatos de publicaciones personalizadas. Le permite crear y configurar fácilmente metaboxes complejos y fáciles de usar con todo tipo de campos y configuraciones para tipos de publicaciones, taxonomía, pantallas de usuario y páginas de opciones. Y es muy amigable para los desarrolladores.

Ahora, puede configurar sus propios metaboxes o configuraciones manualmente, pero para configuraciones más complejas requiere que codifique bastante, incluido el estilo, Javascript, validación y manejo de guardado. Imagine, por ejemplo, escribir manualmente un repetidor con un grupo de configuraciones, una selección múltiple de publicaciones por una determinada consulta. O manejar la configuración de visualización que depende de ciertas variables, como qué término o plantilla de página se asigna (que requiere Javascript). Advanced Custom Fields maneja todo esto, y lo hace maravillosamente.

Tenga en cuenta que los campos personalizados avanzados en realidad no generarán ninguno de sus metadatos personalizados en sus plantillas. Generar o hacer algo en función de los campos y la configuración establecidos con ACF depende de usted como desarrollador. Pero esto se hace fácilmente usando cualquiera de los métodos de ACF. También es bueno saber que ACF está utilizando la meta funcionalidad del núcleo de WordPress (publicación, término, usuario). Lo que significa que en realidad guarda, por ejemplo, la configuración de las publicaciones como publicación meta, que puede obtener utilizando funciones básicas como get_post_meta().

Los campos personalizados avanzados vienen en una versión gratuita y una versión Pro de pago. La versión gratuita es más que suficiente para la mayoría de los casos, pero en la versión Pro obtienes algunas funciones adicionales, como un campo repetidor, un campo de galería, bloques de Gutenberg (ver más adelante) y la posibilidad de usar ACF para configurar tu propio administrador personalizado. páginas de opciones. ACF también es tan popular que puede encontrar fácilmente extensiones de alta calidad para cualquier cosa que el núcleo ACF no cubra.

Campos personalizados avanzados: la parte de administración

Cuando instale el complemento Campos personalizados avanzados, obtendrá un nuevo menú de administración para "Campos personalizados". Aquí es donde puede configurar y configurar sus "cuadros meta" o grupos de configuraciones.

Dentro de un grupo puedes configurar tantos campos como quieras de diferentes tipos. Los más comunes son entrada de texto, área de texto, editor de texto enriquecido, archivo, imagen, verdadero/falso (conmutador), casillas de verificación, botones de radio y cuadro de selección. Otros comunes son múltiples formas de elegir publicaciones, elegir taxonomía, seleccionar usuarios, selector de fechas, selector de colores, Google Maps y muchos, muchos más. Según el tipo de campo que elija, obtendrá una variedad de opciones adicionales para personalizar el campo. También puede agregar lógica condicional a cualquier campo. La lógica condicional es para ocultar o mostrar campos dependiendo de otras opciones dentro del grupo.

Para cada grupo de configuraciones, puede definir en qué casos deben aparecer estas configuraciones. Los ejemplos son cuando se editan publicaciones, un término de taxonomía o se edita un usuario. Puede personalizar aún más la visibilidad de su configuración en, por ejemplo, el tipo de publicación. O si una publicación tiene asignado un determinado término o plantilla de página, si una publicación es de un determinado autor, si la función del usuario es tal o cual, la función del usuario que ha iniciado sesión actualmente, o si la página es una página principal O no. También puede personalizar dónde debe aparecer el cuadro meta. Sin embargo, esta funcionalidad se reduce un poco ahora con el nuevo editor de Gutenberg.

Codificación para campos personalizados avanzados: una introducción

Configurando un grupo

Codificación para campos personalizados avanzados: una introducción

Configuraciones para un solo campo

Campos personalizados avanzados: la parte del código

Echemos un vistazo a la parte más interesante: cómo puede utilizar los campos personalizados avanzados por código. Como se mencionó anteriormente, ACF es súper amigable para los desarrolladores y ofrece una amplia gama de personalización.

Obtener valores y generarlos en sus plantillas es fácil de hacer usando los métodos de ACF. Por ejemplo the_field('your_meta_key'), para repetirlo directamente o get_field('your_meta_key')para almacenarlo en una variable de PHP. Proporcione el ID de la publicación como segundo argumento si necesita obtener datos fuera del bucle. Pan comido. Podría usar get_post_meta(), pero se recomienda usar los métodos de ACF, ya que ACF puede transformar el valor en algo más significativo antes de devolvérselo.

Otra cosa que debe tener en cuenta es la herramienta de exportación dentro de ACF. Puede exportar los grupos creados en dos formatos; ya sea un archivo JSON descargable o código PHP puro. El archivo JSON es útil si necesita exportar configuraciones entre servidores de prueba y en vivo, u otro WordPress. Exportar en PHP puro le brinda la posibilidad de pegarlo directamente en su tema o complemento de archivos PHP.

Como puede concluir de esto; puede usar el código PHP, ya sea escribiéndolo manualmente o exportándolo después de configurarlos en el administrador, para agregar sus grupos y campos. Esto permite más control y formas de generar opciones personalizadas.

¡Pero espera hay mas! ACF también ofrece una amplia gama de acciones y filtros para personalizar aún más los campos o sus valores. Hay ganchos para guardar o renderizar un campo, así como ganchos para registrar grupos por código (mencionados anteriormente) y filtros para personalizar los valores, la configuración o las opciones del campo antes de guardar o renderizar. Puede especificar aún más si el filtro debe afectar a todos los campos, campos por un tipo determinado o campos por una clave meta determinada. Todos los ganchos y filtros tienen el prefijo acf/.

Eche un vistazo a la página de documentación de ACF ; haga clic en ‘Funciones’, ‘Acciones’ o ‘Filtros’ para obtener una descripción general. También encontrará excelentes tutoriales y guías en este sitio.

Una nota sobre campos personalizados avanzados y Gutenberg

Crear bloques personalizados de Gutenberg es bastante desalentador en este momento. La documentación no está del todo en su lugar, los cambios ocurren a menudo y requiere un poco de conocimiento de Javascript para codificar. Preferiblemente necesita conocimiento de React y cómo configurar el compilador de JSX/ES6 con webpack y Babel.

Sin embargo, en la versión 5.8, ACF Pro introdujo una función para configurar un grupo de campos como un bloque de Gutenberg, lo que le permite agregar bloques personalizados únicamente con código ACF y PHP. ¡No es necesario tener conocimientos de Javascript!

Todo lo que necesita hacer es configurar los grupos en admin o por código como de costumbre. Pero luego definiendo su ubicación como bloque Gutenberg. Todo lo que queda es agregar algo de código PHP para registrarlos como un bloque de Gutenberg personalizado con acf_register_block(). Para esa función, define una devolución de llamada a una función de PHP o un archivo de plantilla que es responsable de representar la salida del bloque. Usted escribe esta función o parte de la plantilla completamente en PHP y usa métodos familiares, como get_field()para obtener los valores de configuración.

Codificación para campos personalizados avanzados: una introducción

Cómo se ve un bloque ACF en el editor de Gutenberg

¡ Estén atentos en la categoría Campos personalizados avanzados para obtener tutoriales sobre cómo usar este complemento!

Fuente de grabación: awhitepixel.com

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More