ACF Repeater – Ajustes y modo de empleo

Juan Antonio Munoz Castro - emoji con bus

Ajustes básicos del campo Repeater en ACF Pro

En el ejemplo que nos ocupa vamos a generar con el campo repeater de ACF Pro una tabla con un pequeño listado de plugins, su correspondiente versión y vamos a indicar si actualmente se encuentra activado o desactivado.

Sub Campos

En esta sección habrá que definir los sub campos que apraceran a modo de celdas en la table del repetidor a la hora de editar el contenido.

Número mínimo y máximo de filas

Como su propio nombre indica aquí hay que indicar el número mínimo y máximo de filas que queremos que tenga nuestro campo repetidor.

Layout

En el campo layout cabe destacar las opciones Tabla y fila. Con la opción “Tabla” el campo se mostrará como una tabla en la que el encabezado serán los campos introducidos en la sección Sub Campos. Cuando tenemos un número elevado de Sub campos la tabla puede no aparecer correctamente en pantalla por falta de espacio, en estas ocasiones es aconsejable usar el layout “Fila” para que cada Sub campo aparezca debajo del otro separados por filas.

Etiqueta del botón

Pues si! imaginas bien!! jejejeje esto es el texto del botón que nos permite añadir filas al campo repetidor.

Una vez Configurado el campo repeater, nos dirigimos al post que queremos editar con él y procedemos a meter unos datos de prueba para el ejemplo del tutorial. En nuestro caso queda algo como lo que podéis ver en la siguiente foto:

Plantillas de uso para recorrer el campo repeater

Como hemos indicado antes el campo repeater nos sirve para envolver un listado de subcampos, para ello es necesario recorrer las filas de datos y sacar los datos de cada subcampo. A continuación te mostramos algunas posibilidades:

Ejemplo básico para mostrar el contenido

Con este pequeño código mostramos el contenido del campo repeater en pantalla usando las funciones “have_rows“, “the_row” y “the_sub_field()


    // Verificamos si hay filas con registros dentro del campo repeater
    if( have_rows('plugins') ):

        // Loop con las filas del campo repeater
        while ( have_rows('plugins') ) : the_row();

            // Mostramos los valores
            the_sub_field('nombre_plugin');
            echo " -> v. ";
            the_sub_field('version');
            echo " -> ";
            the_sub_field('estado');
            echo "<hr>";

        endwhile;
    else : 
        // No hay registros 
    endif;
    

El resultado del código anterior en el ejemplo de este post sería el siguiene:

ACF Pro -> v. 1 -> Activo
Yoas Seo -> v. 2 -> Activo
Jetpack -> v. 3 -> Desactivado

Un pasito mas allá que el ejemplo anterior

En este ejemplo en lugar de usar “the_sub_field()” para mostrar los valores usamos la función “get_sub_field()” para almacenar las variables dentro del loop.


// Loop con las filas del campo repeater
        while ( have_rows('plugins') ) : the_row();

            // Sacamos los valores de cada registro y los almacenamos en variables
            $nombre = get_sub_field('nombre_plugin');
            $version = get_sub_field('version');
            $estado = get_sub_field('estado');
            

            //Ahora tratamos las variables como mejor nos convenga, por ejemplo mostrarlo en pantalla
            echo "<ul>";

            echo "<li><strong>Nombre del Plugin: </strong>".$nombre."</li>";
            echo "<li><strong>Versión del Plugin: </strong>".$version."</li>";
            echo "<li><strong>Estado del Plugin: </strong>".$estado."</li>";

            echo "</ul>";

        endwhile;

    else :

        // no rows found

    endif;

El código anterior en el ejemplo que estamos mostrando en este post arrojaría el siguiente resultado:

  • Nombre del Plugin: ACF Pro
  • Versión del Plugin: 1
  • Estado del Plugin: Activo
  • Nombre del Plugin: Yoas Seo
  • Versión del Plugin: 2
  • Estado del Plugin: Activo
  • Nombre del Plugin: Jetpack
  • Versión del Plugin: 3
  • Estado del Plugin: Desactivado

¿Tienes alguna duda? Para cualquier consulta puedes contactarme en el siguiente correo:

contacto@juanmcastro.es

Espero que te haya gustado y resultado de utilidad este primer post! 

Deja un comentario

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

Información básica sobre protección de datos Ver más

  • Responsable Juan Antonio Muñoz Castro .
  • Finalidad Moderar los comentarios. Responder las consultas.
  • Legitimación Tu consentimiento.
  • Destinatarios SERED.
  • Derechos Acceder, rectificar y suprimir los datos.
  • Información Adicional Puedes consultar la información detallada en la Política de Privacidad.

Ir arriba
Esta web utiliza cookies, puedes ver aquí la Política de Cookies