13. Preguntas frecuentes (FAQ)

Introducción

Soluciones a los problemas más habituales del Panel Admin. Si tu problema no aparece aquí, consulta el capítulo concreto (secciones 1 a 12) o contacta con soporte (ver pregunta 13.10).

Preguntas frecuentes

13.1 He hecho un cambio pero no se ve en la web

Tres causas habituales, en orden de probabilidad:

  1. Caché del frontend: el sitio genera versiones estáticas de las páginas para acelerar la entrega. Espera unos minutos a que expire la caché (o purga la caché manualmente desde la sección de páginas) y vuelve a probar.
  2. Caché del navegador: tu navegador puede estar sirviendo una copia antigua. Haz un hard refresh con Ctrl + Shift + R (Windows / Linux) o Cmd + Shift + R (Mac). En último extremo, abre la web en una ventana de incógnito.
  3. Estado borrador: si el cambio está en una página o un item de colección, comprueba que la página está publicada, no en borrador. Las páginas en borrador solo son visibles para editores autenticados en modo preview.

Si después de estas tres comprobaciones el cambio sigue sin verse, abre la consola del navegador (F12 → pestaña Network) y comprueba si la petición a la página devuelve 200 o 304 (caché).

13.2 La página devuelve 404

Las causas más habituales son:

13.3 No me deja borrar un componente / colección

El sistema protege los elementos que están en uso:

La pantalla de borrado suele listar las dependencias; léelas antes de confirmar. Si de verdad necesitas eliminar el elemento, resuelve las dependencias una a una.

13.4 Las imágenes no se ven

Revisa en este orden:

  1. URL rota: abre la imagen en una pestaña nueva. Si devuelve 404, la URL está mal escrita o el archivo se ha borrado del repositorio de medios.
  2. Ruta mal formada: si la URL es relativa (p. ej. assets/images/foto.jpg), comprueba que la página se está renderizando desde la ruta correcta. A veces un cambio de slug de página rompe las rutas relativas. La forma robusta es usar siempre [VAR:base_path]/assets/images/foto.jpg.
  3. Variable [VAR:base_path] ausente: si el src aparece como undefined/assets/..., falta la variable global base_path o tiene un valor incorrecto. Revísala en sección 11 (carpeta SYSTEM).
  4. Permisos del archivo: en el servidor, los archivos de assets/ deben ser legibles por el usuario del servidor web. Si has subido un archivo por SFTP con permisos 600, no se servirá hasta que les hagas un chmod 644.
  5. MIME type incorrecto: algunos servidores bloquean archivos sin extensión o con extensión en mayúsculas. Renombra el archivo a .jpg / .png en minúsculas.

13.5 El mailing no se envía

Las causas más habituales son:

Para más detalle, consulta la sección 8.

13.6 Un pago aparece en Stripe pero no en el panel

Esto suele indicar un problema con el webhook de Stripe:

  1. Entra en el dashboard de Stripe y comprueba que el endpoint del webhook está configurado con la URL correcta (apunta a /api/payments/webhook o la ruta que use este despliegue) y que el evento payment_intent.succeeded está suscrito.
  2. Revisa los logs del webhook en Stripe: si ves respuestas 4xx/5xx, el panel está rechazando la notificación. La causa más habitual es una firma de webhook inválida (el STRIPE_WEBHOOK_SECRET del .env no coincide con el del dashboard de Stripe).
  3. Si los webhooks se reciben pero el pago no aparece, mira los logs del panel (lado servidor): probablemente hay una excepción en el handler de webhook. Apunta el payment_intent_id y compáralo con el de la BD; si está, el problema es solo de UI; si no, es de handler.
  4. Si nada de lo anterior funciona, puedes reenviar el evento manualmente desde el dashboard de Stripe (botón Resend en el detalle del webhook).

13.7 No veo un módulo en el menú

Dos causas posibles, en orden de probabilidad:

  1. Permisos del grupo al que perteneces: cada usuario pertenece a uno o varios grupos, y cada grupo tiene un conjunto de permisos. Si tu grupo no tiene el permiso del módulo (p. ej. mailing.read), la entrada del menú no se renderiza. Pide a un administrador que revise los permisos de tu grupo, o entra con un usuario del grupo admin para descartar.
  2. Feature flag del despliegue: algunos módulos (CRM, Abonos…) están controlados por variables de entorno en el .env del servidor. Si CRM_ENABLED=false o ABONOS_ENABLED=false, todas las entradas del módulo desaparecen del menú. En este despliegue, CRM y Abonos están deshabilitados: es el comportamiento esperado, no un error. Ver sección 9 y sección 10.

13.8 Olvidé la contraseña

Este panel no expone un flujo autogestionado de "olvidé mi contraseña" en la pantalla de login: no hay enlace público para recuperarla. Para restablecerla:

  1. Contacta con un administrador del panel (un usuario con permiso users.write o del grupo admin).
  2. El administrador entra en /users, localiza tu cuenta y usa la acción Restablecer contraseña (o asigna una contraseña temporal directamente).
  3. Recibirás la contraseña temporal por el canal acordado (en persona, por email, etc.) y la cambias en tu perfil al entrar.

Si nadie puede ayudarte (p. ej. todos los admins están bloqueados), hace falta acceso DBA al servidor para restablecer la contraseña directamente en la tabla users (ver herr_admin/CLAUDE.md).

13.9 Sesión caduca constantemente

El panel cierra la sesión automáticamente tras un tiempo de inactividad (configurado en el servidor, por defecto 1 hora). Si te caduca mucho antes de lo razonable:

Si el problema persiste, contacta con un administrador (ver pregunta 13.10).

13.10 Cómo pedir soporte

Para que el equipo de soporte pueda ayudarte a la primera, aporta siempre:

Cuanta más información des a la primera, menos ida y vuelta necesitarás. Si puedes, adjunta también la consola del navegador (F12 → pestaña Console) y la pestaña Network con la petición fallida.

13.11 El menú lateral está siempre expandido y no se puede colapsar

Es el comportamiento por diseño en este panel: el menú lateral no tiene estado colapsado. El icono de plegado no existe en este despliegue, y aunque en otros manuales o capturas de otros proyectos similares se vea un menú con iconos pequeños y solo el icono visible al colapsar, este CMS concreto mantiene el menú expandido siempre.

El motivo es mantener la previsibilidad: los editores no tienen que recordar dónde está cada sección; el nombre siempre está a la vista. Si necesitas más espacio horizontal de trabajo, redimensiona la ventana del navegador o usa un monitor más ancho.

13.12 La edición de un componente dentro del builder abre una página completa en lugar de un modal

Es la implementación actual de este panel. Al pulsar Editar contenido sobre un componente dentro del builder de una página, el sistema navega a una página completa (/pages/{id}/components/{cid}/content) en vez de abrir un modal superpuesto. La URL cambia, el botón Atrás del navegador te devuelve al builder, y la página completa dispone de más espacio para formularios complejos (sobre todo componentes con muchos campos o con campos richtext).

No es un error: el manual recoge esta decisión de implementación. Si en un futuro se migra a un modal, el manual se actualizará.