Guía completa para crear, personalizar, subir y compartir temas visuales.
Versión aplicable: Newsday v0.8 en adelante.
Un tema en Newsday es un archivo .php que devuelve un array con la paleta de colores, tipografía, ajustes de imagen y otros valores visuales que se aplican automáticamente a todas las páginas generadas del sitio. Los temas no modifican el contenido; solo cambian la apariencia.
Newsday incluye cuatro temas predefinidos (Newsday, Claro, Oscuro, Clásico) que no se pueden eliminar pero sí usar como base para crear otros nuevos. Puedes crear tantos temas propios como quieras.
temas/ de tu instalación de Newsday. Cada tema es un archivo independiente nombrado como su ID: temas/mi-tema.php.El archivo PHP debe devolver un array con los siguientes campos:
<?php /** * Newsday — Tema: Ejemplo * Guarda este archivo como: temas/ejemplo.php */ return [ 'id' => 'ejemplo', // slug único, solo letras, números y guiones 'name' => 'Mi Tema Ejemplo', // nombre visible en el panel 'description' => 'Un tema de ejemplo minimalista.', // Colores para la miniatura del selector de temas 'preview' => [ 'header' => '#12122a', // color fondo cabecera 'accent' => '#5068e8', // color acento 'body' => '#e8ebf0', // color fondo página ], // String de variables CSS (separadas por punto y coma) 'vars' => '--th-header-bg:#12122a;--th-header-fg:#ffffff;' . '--th-nav-bg:#1e293b;--th-nav-fg:#94a3b8;' . '--th-footer-bg:#1e293b;--th-footer-fg:#64748b;' . '--th-body-bg:#e8ebf0;--th-wrap-bg:#ffffff;' . '--th-wrap-shadow:0 4px 32px rgba(0,0,0,.12);' . '--th-text:#334155;--th-heading:#0f172a;' . '--th-accent:#5068e8;--th-accent-hover:#3d55d6;' . '--th-muted:#94a3b8;--th-border:#e2e8f0;' . '--th-sidebar-bg:#f8fafc;--th-sidebar-border:#e2e8f0;' . '--th-pullquote-bg:#eff6ff;--th-pullquote-fg:#1d4ed8;--th-pullquote-border:#3b82f6;' . '--th-card-bg:#ffffff;--th-card-border:#e2e8f0;' . '--th-tag-bg:#f1f5f9;--th-tag-fg:#64748b;' . '--th-body-font:Georgia,serif;--th-ui-font:system-ui,sans-serif;' . '--th-fallback-accent:#7c9ff5;' . '--th-img-radius:4px;--th-img-shadow:none;--th-img-max-width:100%;', ];
a-z 0-9 -). No puede tener espacios ni caracteres especiales. Un ID duplicado sobreescribirá el tema existente con ese ID.Todas las variables deben incluirse en el campo 'vars' separadas por punto y coma (;). A continuación, la lista completa con descripción y valor típico:
| Variable | Qué controla | Valor típico |
|---|---|---|
| --th-header-bg | Fondo de la cabecera del sitio | #12122a |
| --th-header-fg | Texto e iconos en la cabecera | #ffffff |
| --th-nav-bg | Fondo de la barra de navegación | #1e293b |
| --th-nav-fg | Color de los enlaces de nav | #94a3b8 |
| Variable | Qué controla | Valor típico |
|---|---|---|
| --th-body-bg | Fondo general de la página | #e8ebf0 |
| --th-wrap-bg | Fondo del contenedor central | #ffffff |
| --th-wrap-shadow | Sombra del contenedor central | 0 4px 32px rgba(0,0,0,.12) |
| --th-text | Color de texto de los párrafos | #334155 |
| --th-heading | Color de los titulares (h1, h2…) | #0f172a |
| --th-muted | Texto secundario y metadatos | #94a3b8 |
| --th-border | Líneas divisorias y bordes sutiles | #e2e8f0 |
| Variable | Qué controla | Valor típico |
|---|---|---|
| --th-accent | Color principal de enlace y acento | #5068e8 |
| --th-accent-hover | Acento al pasar el ratón | #3d55d6 |
| --th-fallback-accent | Acento alternativo / más claro | #7c9ff5 |
| Variable | Qué controla | Valor típico |
|---|---|---|
| --th-footer-bg | Fondo del pie de página | #1e293b |
| --th-footer-fg | Texto en el pie de página | #64748b |
| Variable | Qué controla | Valor típico |
|---|---|---|
| --th-sidebar-bg | Fondo de la barra lateral | #f8fafc |
| --th-sidebar-border | Borde de la barra lateral | #e2e8f0 |
| Variable | Qué controla | Valor típico |
|---|---|---|
| --th-pullquote-bg | Fondo del bloque de cita | #eff6ff |
| --th-pullquote-fg | Texto de la cita | #1d4ed8 |
| --th-pullquote-border | Franja de color lateral | #3b82f6 |
| Variable | Qué controla | Valor típico |
|---|---|---|
| --th-card-bg | Fondo de tarjetas de artículo | #ffffff |
| --th-card-border | Borde de tarjetas | #e2e8f0 |
| --th-tag-bg | Fondo de las etiquetas (sección/tag) | #f1f5f9 |
| --th-tag-fg | Texto de las etiquetas | #64748b |
| Variable | Qué controla | Valor típico |
|---|---|---|
| --th-body-font | Fuente del texto de artículos | Georgia,serif |
| --th-ui-font | Fuente de la interfaz (nav, títulos UI) | system-ui,sans-serif |
| Variable | Qué controla | Valor típico |
|---|---|---|
| --th-img-radius | Radio de esquinas en imágenes | 0 / 8px / 50% |
| --th-img-shadow | Sombra en imágenes | none / 0 4px 16px rgba(0,0,0,.18) |
| --th-img-max-width | Ancho máximo de las imágenes | 100% / 75% |
La forma más cómoda. No requiere editar código.
Abre el panel de administración de Newsday y navega a la pestaña Modelar. Luego haz clic en el subtab 🎨 Temas.
Aparecerá el editor de temas debajo del selector. Rellena el Nombre (obligatorio) y opcionalmente el ID y la descripción. Si dejas el ID vacío, se generará automáticamente desde el nombre al guardar.
Usa los controles de la columna izquierda. La vista previa de la derecha se actualiza en tiempo real para que veas el resultado sin publicar.
Pulsa 💾 Guardar tema. El tema aparecerá en el selector de temas y podrás activarlo haciendo clic en la tarjeta.
Pulsa ⬇ Exportar .php para descargar el tema como un archivo PHP portable que puedes compartir o usar como base para otros proyectos Newsday.
Haz clic en el botón ✏ Editar que aparece en la esquina inferior de cualquier tarjeta de tema (incluidos los predefinidos). El editor se abrirá con los valores actuales del tema.
En la sección Modelar → Temas, haz clic en el botón «⬆ Subir tema» y selecciona el archivo .php del tema.
El servidor valida que el archivo:
id, name y vars.Si el archivo pasa la validación, el tema queda disponible de inmediato en el selector. Si no, se muestra un mensaje de error descriptivo.
Si prefieres trabajar directamente en el servidor:
temas/ con el nombre mi-tema.php (donde mi-tema es el ID).<?php return [ 'id' => 'minimalista', 'name' => 'Minimalista', 'vars' => '--th-header-bg:#ffffff;--th-header-fg:#0f172a;' . '--th-nav-bg:#f8fafc;--th-nav-fg:#334155;' . '--th-body-bg:#f8fafc;--th-wrap-bg:#ffffff;' . '--th-text:#334155;--th-heading:#0f172a;' . '--th-accent:#0f172a;--th-accent-hover:#334155;' . '--th-footer-bg:#0f172a;--th-footer-fg:#64748b;', 'preview' => ['header'=>'#ffffff', 'accent'=>'#0f172a', 'body'=>'#f8fafc'], ];
Sí, pero debes cargarlas en la plantilla HTML del tema. En el campo --th-body-font especifica solo el nombre de la familia (ej: 'Merriweather',serif) y asegúrate de que la hoja de estilos de Google Fonts esté incluida en el layout del sitio generado. El panel no carga fuentes externas automáticamente.
Sí. Todos los temas personalizados en la carpeta temas/ se incluyen en los backups tanto al descargar como al guardar en servidor. Al restaurar un backup, los temas se restauran con el resto del contenido.
El segundo sobreescribe al primero. Si subes un tema con un ID ya existente (por ejemplo un predefinido como newsday), el predefinido quedará sobreescrito. Para evitarlo, usa siempre un ID único.
Sí, pero el sitio seguirá mostrando el tema hasta la próxima publicación. Tras eliminar el tema, Newsday volverá automáticamente al tema predeterminado en la próxima generación del sitio.
Sí. Usa el botón ⬇ Exportar .php en el editor de temas. El archivo descargado es portable y se puede instalar en cualquier Newsday con el botón ⬆ Subir tema.