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
/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".
01-listado.png) muestra precisamente la sección que aparece en el submenú lateral.
- URL directa: no disponible (
/collectionsdevuelve 404 en este despliegue). - Submenú lateral: módulo Colecciones → entrada de la colección a editar.
- Vía componente:
/components/{id}/itemsdesde un componente tipocollection.
Pantalla principal (listado)
La tabla muestra, para cada colección:
- Nombre: identificador interno (slug, en minúsculas).
- Etiqueta: nombre visible para el redactor.
- Nº de items: contador total de items definidos.
- Acciones: editar items, previsualizar, eliminar colección.
Tareas habituales
5.1 Acceder a los items de una colección
- En el submenú lateral Colecciones, despliega la entrada de la colección que quieres gestionar.
- Pulsa sobre su nombre. Se abrirá la pantalla con el listado de items.
- 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. - Desde esta pantalla podrás crear, editar, reordenar o eliminar items (5.2 y 5.3).
5.2 Crear / editar un item
- En el listado de items, pulsa Crear item o haz clic sobre un item existente para editarlo.
- Rellena los campos definidos en la colección (título, descripción, imagen, fecha…).
- Si el campo está marcado como
is_translatable, el formulario mostrará un selector de idioma para mantener variantes por idioma del mismo item. - Pulsa Guardar. El item se añade (o actualiza) en la colección y queda disponible en el frontend.
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).
- En el listado de items, arrastra la fila a su nueva posición (la columna de la izquierda suele tener un asidero de arrastre).
- El sistema guarda el nuevo orden automáticamente al soltar.
- Para eliminar un item, usa la acción Eliminar de la fila y confirma el diálogo.
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:
- Lee el valor de ese campo en el componente (por ejemplo,
"jugadores"). - Carga los items de la tabla correspondiente en el orden guardado.
- 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
GET /collections— no disponible en este despliegue (404).GET /components/{id}/items— items de la colección referenciada por el componenteid.POST /components/{id}/items— crear nuevo item.GET /components/{cid}/items/{iid}— editar un item concreto.POST /components/{cid}/items/{iid}— actualizar item.POST /components/{cid}/items/reorder— guardar nuevo orden.DELETE /components/{cid}/items/{iid}— eliminar item.GET /api/collections/{slug}/items— endpoint público JSON.
Errores frecuentes
- No encuentro la URL
/collections: es el comportamiento esperado en este despliegue. La gestión se hace desde el submenú lateral "Colecciones" o desde la página del componente que la referencia (ver la nota en Acceso rápido). - Aparecen items duplicados en la web: revisa si el componente está referenciando la colección correcta (a veces se duplica por error al copiar/pegar un componente). También puede deberse a que el template del componente itera dos veces sobre la misma lista.
- El orden que veo en el panel no es el que aparece en la web: el frontend puede tener su propio orden por defecto (por ejemplo, "más reciente primero" si el item tiene fecha). Revisa el template del componente y, si es necesario, fuerza el orden manual con un parámetro.
- He creado un item pero no aparece en el sitio público: comprueba (1) que el item está publicado/visible y no en borrador, (2) que el idioma del item coincide con el idioma de la página, (3) que no hay un filtro (por fecha, por categoría) que lo esté ocultando, y (4) que la caché de la página está actualizada.
- No puedo eliminar un item: puede que esté referenciado desde otra parte del sitio (otra colección, un campo
collection_reference, un enlace fijo). Revisa las dependencias antes de forzar el borrado.