5. Colecciones

Introducción

Las colecciones son listas de items del mismo tipo: noticias, productos, jugadores, FAQ, eventos… Se gestionan como un módulo independiente y se referencian desde componentes de tipo collection (ver sección 4).

Cada colección tiene un nombre y un conjunto de items. Cada item, a su vez, tiene los campos que el webmaster haya definido (título, descripción, imagen, fecha, etc.) y un orden que se puede arrastrar y soltar desde la interfaz.

Acceso rápido

Detalle del despliegue: en este panel no existe una URL directa /collections. El acceso a la gestión de colecciones se realiza de dos formas equivalentes:
  • Desde el submenú lateral "Colecciones" (entrada en el árbol de navegación izquierdo).
  • Desde la página de un componente de tipo collection (por ejemplo, /components/40/items): dentro de la pantalla de edición del componente hay un enlace a "Gestionar items".
La captura del listado (01-listado.png) muestra precisamente la sección que aparece en el submenú lateral.

Pantalla principal (listado)

Listado de colecciones del panel
Listado de colecciones del panel, accesible desde el submenú lateral. Cada fila muestra el nombre interno, etiqueta, número de items y acciones (editar items, ver, eliminar).

La tabla muestra, para cada colección:

Tareas habituales

5.1 Acceder a los items de una colección

Listado de items de una colección
Listado de items de una colección. Cada item muestra el orden, el título, los campos principales y las acciones disponibles (editar, duplicar, eliminar).
  1. En el submenú lateral Colecciones, despliega la entrada de la colección que quieres gestionar.
  2. Pulsa sobre su nombre. Se abrirá la pantalla con el listado de items.
  3. También puedes llegar desde un componente tipo collection: en su página de edición hay un botón Gestionar items que te lleva al mismo sitio.
  4. Desde esta pantalla podrás crear, editar, reordenar o eliminar items (5.2 y 5.3).

5.2 Crear / editar un item

Formulario de edición de un item de la colección
Formulario de edición de un item. Los campos que se muestran son los definidos al crear la colección (título, descripción, imagen, fecha, etc.).
  1. En el listado de items, pulsa Crear item o haz clic sobre un item existente para editarlo.
  2. Rellena los campos definidos en la colección (título, descripción, imagen, fecha…).
  3. Si el campo está marcado como is_translatable, el formulario mostrará un selector de idioma para mantener variantes por idioma del mismo item.
  4. Pulsa Guardar. El item se añade (o actualiza) en la colección y queda disponible en el frontend.
Importante: los campos que puedes rellenar en un item dependen de los definidos al crear la colección, no de un esquema genérico. Si necesitas un campo nuevo, primero hay que añadirlo a la colección.

5.3 Reordenar y eliminar items

El orden de los items controla cómo aparecen en el sitio público (por ejemplo, primero el más reciente o en el orden definido manualmente).

  1. En el listado de items, arrastra la fila a su nueva posición (la columna de la izquierda suele tener un asidero de arrastre).
  2. El sistema guarda el nuevo orden automáticamente al soltar.
  3. Para eliminar un item, usa la acción Eliminar de la fila y confirma el diálogo.
Cuidado: eliminar un item es irreversible. Si solo quieres ocultarlo temporalmente, plantéate añadir un campo visible de tipo boolean a la colección y filtrar por él en la web.

Referencia técnica (webmasters)

Conexión entre un componente collection y la sección de items

Un componente de tipo collection declara, mediante un campo editable de tipo collection_reference, a qué colección apunta. En tiempo de render el motor:

  1. Lee el valor de ese campo en el componente (por ejemplo, "jugadores").
  2. Carga los items de la tabla correspondiente en el orden guardado.
  3. Pasa la lista al template del componente para que la renderice.

Por tanto, los items se gestionan en esta sección y se muestran en la web a través del componente que los referencia (no de forma aislada).

Endpoint público de fetch

Para integraciones externas (apps, widgets, RSS personalizado) existe un endpoint público que devuelve los items de una colección en formato JSON. La forma típica es:

GET /api/collections/{slug}/items?lang=es&limit=20

El parámetro lang filtra por idioma (si los items son traducibles) y limit acota el número de resultados. La respuesta es un array de objetos con los campos de la colección.

Rutas internas relevantes

Errores frecuentes