Campos Repetidores — Campos Dinámicos Basados en Filas | Field Forge - Campos personalizados, diseñados para la velocidad
Descargar Iniciar sesión

Campos Repetidores — Campos Dinámicos Basados en Filas

Qué hace un campo repetidor

Un campo repetidor es una plantilla de fila. Definimos qué subcampos contiene cada fila (por ejemplo: Nombre, Foto, Biografía), y los editores pueden añadir, eliminar y reordenar filas a su antojo. Un único campo repetidor puede contener desde cero hasta cientos de filas por publicación.

Caso de uso ejemplo: miembros del equipo

Un grupo de campos para una “página de equipo” contiene un Miembros del Equipo repetidor con tres subcampos:

  • Nombre (Texto)
  • Foto (Imagen)
  • Biografía (Textarea)

En la pantalla de edición de la publicación, un editor hace clic en “Añadir Fila”, completa los tres subcampos y hace clic en “Añadir Fila” nuevamente para el siguiente miembro del equipo. Pueden arrastrar filas para reordenar, eliminar filas individuales y añadir tantas filas como necesiten.


Tipos de subcampos soportados

Los subcampos repetidores pueden ser cualquiera de los 32 tipos de campo de Field Forge:

  • Básico (texto, textarea, número, correo electrónico, URL, etc.)
  • Contenido (imagen, archivo, WYSIWYG, oEmbed, galería)
  • Opción (selección, casilla de verificación, radio, verdadero/falso, grupo de botones)
  • Relacional (relación, objeto de publicación, enlace de página, taxonomía, usuario)
  • jQuery (selector de fecha, selector de hora, selector de color)
  • Diseño (pestaña, acordeón, mensaje)

El único tipo de subcampo que no funciona dentro de un repetidor es Clone (que crearía una recursión infinita).


Repetidores anidados

Los repetidores pueden contener otros repetidores. Ejemplo: un repetidor de “servicios” donde cada servicio tiene un repetidor de “características” anidado.

Repetidor de Servicios ├── Fila 1: Servicio A │ ├── Nombre del Servicio: "Consultoría" │ ├── Descripción: "..." │ └── Repetidor de Características │ ├── Fila 1: "Taller de descubrimiento" │ ├── Fila 2: "Documento de estrategia" │ └── Fila 3: "Soporte de implementación" └── Fila 2: Servicio B ├── Nombre del Servicio: "Desarrollo" ├── Descripción: "..." └── Repetidor de Características ├── Fila 1: "Código personalizado" └── Fila 2: "Pruebas de QA"

El anidamiento funciona a cualquier profundidad, aunque para datos profundamente anidados puede que desees considerar reestructurar con tipos de publicaciones personalizadas y relaciones.


Código de plantilla (compatible con ACF)

El repetidor de Field Forge utiliza las mismas funciones de plantilla que ACF y SCF. El código escrito para ACF funciona sin cambios:

php

<img decoding="async" src="" alt="">

Este código funciona en:

  • ACF (original)
  • Secure Custom Fields (SCF, el fork de WordPress.org)
  • Field Forge (con la capa de compatibilidad de ACF)

Si migras de ACF o SCF a Field Forge, este código de plantilla permanece sin cambios.


Bucles anidados

Para repetidores anidados, haces un bucle dentro de otro bucle:

“`php

“`

El trío have_rows() / the_row() / get_sub_field() maneja el anidamiento arbitrario.


Ajustes del repetidor

Al configurar un repetidor en el constructor visual de Field Forge:

  • Etiqueta — lo que los editores ven en el editor de publicaciones
  • Nombre — el nombre de la variable (get_field('name'))
  • Filas mínimas — número mínimo de filas (0 para opcional, 1+ para requerido)
  • Filas máximas — límite (o dejar en blanco para ilimitado)
  • Etiqueta del botón — texto personalizado para el botón “Añadir Fila” (por defecto: “Añadir Fila”)
  • Diseño — Tabla, Bloque o visualización de Fila en el editor de publicaciones
  • Campo colapsado — qué subcampo mostrar como la etiqueta colapsada de la fila (para una visualización compacta de muchas filas)

Rendimiento en repetidores grandes

Aquí es donde el almacenamiento en tabla personalizado de Field Forge realmente da sus frutos. ACF y SCF almacenan datos de repetidores en wp_postmeta con una fila por subcampo por fila de repetidor. Un repetidor con 5 subcampos y 50 filas crea 250 entradas meta por publicación. Cargar una página con 20 de tales publicaciones crea más de 5,000 consultas meta.

La tabla personalizada de Field Forge utiliza columnas parent_id y row_index para almacenar datos de repetidores en una estructura relacional nativa. Una única consulta obtiene todos los datos de repetidores para una publicación. Las páginas de archivo se cargan de 10 a 50 veces más rápido en plantillas con muchos repetidores.


Migrando datos de repetidores existentes

Cuando importas desde ACF o SCF, la herramienta de migración de Field Forge reconstruye correctamente las estructuras de repetidores anidados. Las relaciones padre-hijo entre filas se preservan. Los repetidores anidados se migran con toda la jerarquía intacta. Después de la migración, tus plantillas siguen funcionando (a través de la capa de compatibilidad de ACF) y las consultas se ejecutan más rápido (a través del almacenamiento en tabla personalizado).

Consulta la guía de migración completa →


Salida de la API REST

Los datos de repetidores se exponen en la API REST de WordPress y en los endpoints personalizados de Field Forge:

json { "team_members": [ { "name": "Alice Johnson", "photo": { "id": 123, "url": "https://example.com/alice.jpg", "alt": "Alice Johnson" }, "bio": "Alice es nuestra jefa de ingeniería..." }, { "name": "Bob Smith", "photo": { "id": 124, "url": "...", "alt": "Bob Smith" }, "bio": "Bob lidera el equipo de diseño..." } ] }

Perfecto para frontends de WordPress sin cabeza. Combinado con la generación de TypeScript de Field Forge, los datos de repetidores se convierten en Array completamente tipados en el frontend.


¿Listo para usar campos repetidores?

Obtén Field Forge — desde $35/año →

Los campos repetidores están incluidos en cada plan de pago. La versión gratuita tiene soporte básico para repetidores; los planes de pago desbloquean repetidores anidados y características avanzadas.

Asistente de IA de Forge En línea

¡Hola! Soy el asistente de IA de Field Forge. Pregúntame lo que quieras sobre el plugin — configuración, funciones, resolución de problemas o desarrollo.

Ahora mismo
Con la tecnología de Forge AI · Explorar documentación