Cómo mostrar eventos pasados en The Events Calendar
Muestra eventos pasados en The Events Calendar sin código, con shortcode o mediante una anulación segura de vista. Guía actualizada.
Información clave: el código de 2014 es histórico
La forma más segura de mostrar eventos pasados en The Events Calendar es usar la vista de archivo incorporada, un enlace en el menú o el shortcode actual disponible en Events Calendar Pro. No copies hoy la clase de widget ni archivos PHP de la versión original de este artículo.
La guía de 2014 ampliaba TribeEventsAdvancedListWidget, TribeEventsPro_Widgets y TribeEventsPro, y añadía una vista de administración directamente dentro del plugin. The Events Calendar actual usa otra arquitectura: Views v2, bloques y rutas de plantilla diferentes. El código antiguo contenía además entidades HTML y comillas tipográficas en vez de sintaxis PHP correcta.
Lo retiramos porque «limpiar» los caracteres produciría código aparentemente fiable basado en interfaces obsoletas. Las soluciones siguientes se verificaron con documentación del proveedor el 6 de agosto de 2026. Antes de aplicar una implantación posterior, compara la guía con la versión del plugin que funciona en tu sitio.
Elige solución según la necesidad
| Necesidad | Solución más simple | ¿Requiere código? |
|---|---|---|
| Página independiente con todos los eventos pasados | vista incorporada eventDisplay=past | No |
| Enlace «Archivo de eventos» en menú o barra lateral | enlace propio a la vista de eventos pasados | No |
| Calendario incrustado para un periodo pasado elegido | shortcode [tribe_events] en versión Pro | No, pero requiere Pro |
| Eventos pasados más recientes primero | filtro oficial de Views v2 | Sí |
| Cambiar HTML y apariencia de lista | CSS, hook o anulación de plantilla en tema hijo | según alcance |
No empieces con un widget PHP propio si solo quieres ofrecer un archivo. Cada clase adicional aumenta coste de actualización, pruebas y respuesta a cambios del API.
Opción 1. Enlace al archivo incorporado
The Events Calendar proporciona una vista de eventos pasados mediante este parámetro:
https://tu-dominio.es/events/list/?eventDisplay=past
El fragmento /events/ depende del slug configurado en el sitio. Abre primero el calendario normal, cambia a lista de eventos pasados y copia la URL que funciona. No escribas la ruta de memoria si el sitio usa otro idioma o slug personalizado.
Después añade un enlace «Eventos pasados», «Archivo» o «Ver resúmenes» en menú principal o secundario del calendario, en un bloque de la página de eventos, en el pie o en una barra lateral mediante botón o navegación. Funciona sin un nuevo widget. El proveedor lo describe en Working with Past Events.
Pruébalo tras cerrar sesión y en una ventana privada. Si devuelve error, revisa enlaces permanentes, slug del archivo y conflicto con una página WordPress existente del mismo nombre.
Opción 2. Bloque o widget como entrada al archivo
El plugin ofrece bloque Events List y widget clásico de lista. Según documentación actual, el widget base pertenece a The Events Calendar gratuito y la versión Pro añade filtros y campos; la lista estándar se concentra en eventos próximos.
Si en la barra lateral solo necesitas acceso al archivo, usa un bloque de botón, párrafo o navegación con la URL eventDisplay=past. Es más sencillo y previsible que alterar la consulta de todo el widget. En Site Editor colócalo en la plantilla de página o pie; en un tema clásico, en el área de widgets. Usa un nombre descriptivo: «Ver más» no explica que lleva a eventos terminados.
Si junto al enlace quieres varias crónicas escogidas a mano, crea una lista de tarjetas o consulta de publicaciones de resumen. Suele ser un modelo de marketing mejor que una lista automática de todas las fechas: permite mostrar foto, resultado, materiales descargables y el próximo evento relacionado.
Opción 3. Shortcode de Events Calendar Pro
Quien tenga Pro puede incrustar vistas de calendario con [tribe_events]. La documentación del proveedor indica que un periodo pasado se muestra escogiendo una fecha anterior y que el parámetro relativo a eventos pasados está limitado a la vista mensual.
No copiamos aquí sintaxis completa porque los argumentos y el comportamiento dependen de la versión. Abre la documentación actual de shortcodes desde ayuda del plugin, elige la vista Month y establece la fecha. Comprueba después:
- que existe una sola navegación principal de calendario en la página;
- qué ve la persona al ir al mes siguiente;
- que el intervalo recoge los eventos necesarios;
- comportamiento en móvil y sin JavaScript;
- que no se duplica contenido idéntico bajo otra URL.
El shortcode tiene sentido cuando el archivo forma parte de una página concreta, como resumen de temporada. Para un archivo permanente normal, la URL integrada es más fácil de mantener.
Cómo poner primero los eventos pasados más recientes
La vista de lista puede ordenar eventos pasados desde el más antiguo. Para un archivo de crónicas suele ser más útil orden inverso. El proveedor ofrece un snippet actual para Views v2 basado, entre otros, en tribe_events_views_v2_view_list_template_vars. En vez de reescribirlo aquí, usa la versión mantenida en Showing Past Events in Reverse Order para ver cualquier cambio de API.
Añade el código como plugin funcional pequeño y documentado o en un mecanismo de snippets gestionado. functions.php de un tema hijo es admisible en implantaciones simples, pero la función desaparece al cambiar tema. No pegues código en tema padre ni edites archivos de The Events Calendar.
Antes de activarlo: haz copia de base de datos y archivos; verifica versiones de WordPress, PHP y plugin; prueba en staging; limita el filtro a la vista correcta; comprueba estado vacío, paginación, series y eventos de varios días; y prepara una forma sencilla de desactivar el snippet.
Cuándo anular la plantilla del widget
La anulación sirve para cambiar estructura HTML; no debería ser la primera opción para cambiar datos. La documentación actual señala el archivo fuente:
wp-content/plugins/the-events-calendar/src/views/v2/widgets/widget-events-list.php
La copia se coloca en el tema hijo activo conservando directorios:
wp-content/themes/tu-tema-hijo/tribe/events/v2/widgets/widget-events-list.php
Detalles y rutas vigentes aparecen en Using the Events List Widget. Antes de copiar, compara con el encabezado del archivo instalado. Una actualización puede separar la vista o hacer que un ejemplo antiguo deje de encajar.
La anulación protege el archivo de ser borrado por una actualización del plugin, pero no elimina mantenimiento. Tras una actualización importante compara tu copia con la plantilla nueva; de otro modo puedes mantener markup desactualizado, perder una mejora de accesibilidad o llamar una variable que ya no se pasa. Para color, espaciado o tamaño usa primero CSS; para añadir algo pequeño, busca hooks. Una anulación completa da libertad, pero asume responsabilidad por todo el fragmento copiado.
Qué no hacer al modificar el plugin
La guía original recomendaba crear un archivo de administración en wp-content/plugins/event-calendar-pro/admin-views/. No resistía actualizaciones: los archivos de plugin pueden sustituirse y clases o vistas privadas no son contrato estable.
Evita editar plugins, copiar clases de versiones antiguas sin verificar API actual, desactivar actualizaciones para conservar cambios, ejecutar snippets de un blog sin staging ni marcha atrás, mostrar datos de evento sin sanear, registrar otro widget cuando basta un enlace o shortcode, y ocultar un error PHP en vez de eliminar su causa. Si un requisito propio es crítico, registra versiones exactas de dependencias y añade un smoke test después de actualizar.
Cómo diseñar un buen archivo de eventos
Una lista técnica no basta si la audiencia debe ver experiencia del organizador. Para cada evento muestra nombre, fecha, lugar o «online», categoría e imagen solo si aporta significado. Los más recientes deberían aparecer primero. Considera enlazar cada evento con resumen y conclusión, fotos con derechos y textos alternativos, presentación o grabación, siguiente edición y servicio o artículo relacionado si es el siguiente paso natural.
Separa claramente «próximos» y «pasados». No muestres «Inscríbete» en un evento terminado salvo que se refiera a la siguiente edición. El estado vacío debe explicar que aún no hay archivo y llevar al calendario actual. Con muchas entradas, añade paginación o filtros por año y categoría; no cargues cientos de eventos en un widget de pie.
Prueba posterior a la implantación
Recorre la lista sin iniciar sesión y comprueba evento acabado ayer, evento de varios días y recurrente; límite de zona horaria y cambio de día; orden, paginación y filtros; vista vacía y parámetro URL erróneo; título de enlace, foco de teclado y legibilidad móvil; caché tras cambiar fecha; y comportamiento después de actualizar The Events Calendar y Events Calendar Pro.
Documenta por qué elegiste el método, dónde está el código y cómo desactivarlo. Es crucial en WordPress, donde la siguiente persona responsable puede encontrar un snippet solo durante una avería. Si un sitio antiguo tiene muchas modificaciones similares, una corrección aislada quizá no baste. Consulta cómo planificar desarrollo y modernización de WordPress o nuestro alcance de mantenimiento WordPress.
¿Tienes un problema que resolver?
Veamos cuál es el mejor primer paso
Describe tu situación en unas frases. Volveremos con preguntas o una propuesta concreta para el siguiente paso.
