Crear títulos personalizados para los bloques de Flexible Content en ACF

contacta     ·     sobre     ·     azar     ·     buchaca     ·     manifiestos    ·   

  • Forma

    La intención, la mirada, la propuesta. Dónde yace lo que parece haber cuajado en un proceso de meditación-acción.

Un bello hack para colocar títulos en cada bloque de Flexible Content en Advanced Custom Fields.
Nunca había usado Flexible Content en ACF y ahora que he visto lo que es posible creo que voy a estar tirando de ello bastante. Sobre todo porque puedes colocar los bloques luego a placer… pero eso es otra historia.

Lo que nos trae aquí hoy es que cuando creas muchos bloques en base al mismo layout luego no sabes qué hay en cada uno. Pensé «qué genial sería poder colocarle un título a cada bloque» y cómo suele ocurrir con WordPress, alguien ya lo pensó antes.

En este caso fjorge.com en un maravilloso post del que pego aquí simplemente el código. Id a ver el post (en inglés) para saber más: https://fjorge.com/insights/blog/how-can-i-create-custom-titles-for-advanced-custom-fields-flexible-content-blocks/

Pasos

1.- Pega este código en tu functions.php:

/*************************************************************/
/*   Friendly Block Titles                                  */
/***********************************************************/
function my_layout_title($title, $field, $layout, $i) {
    if($value = get_sub_field('layout_title')) {
        return $value;
    } else {
        foreach($layout['sub_fields'] as $sub) {
            if($sub['name'] == 'layout_title') {
                $key = $sub['key'];
                if(array_key_exists($i, $field['value']) && $value = $field['value'][$i][$key])
                    return $value;
            }
        }
    }
    return $title;
}
add_filter('acf/fields/flexible_content/layout_title', 'my_layout_title', 10, 4);

2.-Edita Flexible Content

Ve a tu estructura de Flexible Content y por cada Layout le metes un campo de texto que se titule por ejemplo «Título de bloque» pero cuyo nombre de campo sea sí o sí layout_title.

3.- Coloca títulos a tus bloques

En ese campo de texto, idealmente el primero, pon un título y verás cómo ahora puedes orientarte mucho mejor sabiendo qué hay en cada cual.

Hagamos de esto una conversación

Deja un comentario

blogroll

Licencia de producción de pares excepto en lo que no sea de mi puño y bit.

Descubre más desde Comunicación Abierta

Suscríbete ahora para seguir leyendo y obtener acceso al archivo completo.

Seguir leyendo