Nuevo sistema para crear páginas mediante bloques, secciones y layouts sin tener que programarlas manualmente
Estoy trabajando en un nuevo sistema de Páginas Modulares para Risus Nova UI, pensado para permitir la creación de páginas adicionales completamente administrables desde el Panel de Administración.
Ha sido creado desde cero para aprovechar la arquitectura actual de Risus Nova UI, su sistema de plugins, plantillas, permisos y administración.
📄 Creación y administración de páginas
Desde el Panel de Administración será posible crear páginas adicionales sin tener que crear manualmente nuevos archivos PHP.
- Crear, editar y eliminar páginas
- Activar o desactivar páginas
- Guardar páginas como borrador
- Configurar título y descripción
- Elegir una URL amigable o slug
- Configurar permisos de acceso
- Configurar opciones SEO
- Elegir el diseño o plantilla de la página
Por ejemplo, se podrán crear páginas como:
/normas/
/staff/
/servidores/
/descargas/
/eventos/
/comunidad/El sistema resolverá las rutas automáticamente, evitando tener que modificar .htaccess manualmente cada vez que se cree una página.
🧱 Constructor mediante bloques
Cada página podrá estar formada por diferentes bloques o módulos.
El administrador podrá añadirlos, eliminarlos, configurarlos y cambiar su posición desde el propio constructor.
Algunos ejemplos de bloques:
- Texto
- HTML
- Imágenes y banners
- Vídeos
- Últimos temas
- Últimos mensajes
- Noticias
- Usuarios
- Estadísticas
- [*****]
- Contenido personalizado
- Bloques añadidos mediante plugins
Por ejemplo, una página de comunidad podría estar formada por:
Página: Comunidad
→ Cabecera
→ Texto de bienvenida
→ Últimas noticias
→ Últimos temas
→ Usuarios destacados
→ Estadísticas
→ *****↕️ Sistema Drag & Drop
Los bloques podrán reorganizarse mediante un sistema de arrastrar y soltar (Drag & Drop).
Esto permitirá cambiar rápidamente la estructura de una página sin necesidad de modificar sus plantillas o código.
Antes:
[ Noticias ]
[ Estadísticas ]
[ ***** ]
Después:
[ ***** ]
[ Noticias ]
[ Estadísticas ]📐 Secciones, columnas y layouts
El constructor no estará limitado a colocar un bloque debajo de otro.
La estructura será aproximadamente:
Se podrán crear diferentes distribuciones dentro de una misma página.
Una columna — 100%
[ Últimos temas ]Dos columnas — 50% / 50%
[ Últimos temas ] [ ***** ]Dos columnas — 70% / 30%
[ Noticias ] [ Stats ]Tres columnas — 33% / 33% / 33%
[ Usuarios ] [ Temas ] [ Mensajes ]Los diseños serán responsive para adaptarse automáticamente a escritorio, tablet y móvil.
👁️ Visibilidad y permisos por bloque
Los permisos no estarán limitados únicamente a la página completa.
Cada bloque podrá disponer de sus propias reglas de visibilidad.
Por ejemplo, dentro de la misma página /inicio/ podremos mostrar contenidos diferentes dependiendo del usuario.
Los invitados podrían ver:
Bienvenido a nuestra comunidad
Regístrate para empezar a participar.Mientras que los usuarios registrados podrían ver:
Tus temas guardados
Tus últimas participaciones
Tus notificacionesLa visibilidad podrá configurarse para:
- Invitados
- Usuarios registrados
- Rangos o grupos determinados
- Moderadores
- Administradores
Esto permitirá que una misma página pueda adaptarse dependiendo de quién la esté visitando.
🗂️ Plantillas de páginas (Presets)
Al crear una página no será obligatorio empezar siempre desde cero.
El sistema podrá incluir diferentes estructuras predefinidas que servirán como punto de partida.
- Página básica — estructura sencilla para contenido
- Landing Page — cabecera, presentación, características y llamadas a la acción
- Wiki / Normativa — índice lateral y contenido principal
- Dashboard — distribución mediante widgets y varias columnas
Después de seleccionar un preset, todos sus bloques, columnas y secciones seguirán siendo completamente editables.
⚡ Sistema de caché por bloque
El rendimiento será una parte importante del sistema.
Una página puede contener estadísticas, últimos mensajes, usuarios, noticias o incluso información obtenida desde APIs externas. Ejecutar todas esas consultas cada vez que alguien visita la página podría afectar al rendimiento.
Por ello, cada bloque podrá disponer de su propio tiempo de caché.
Texto estático:
Caché permanente
Últimas noticias:
Caché 5 minutos
Estadísticas:
Caché 2 minutos
Estado de servidores/API:
Caché 60 segundosDe esta forma se evitará repetir constantemente consultas pesadas o peticiones a servicios externos.
♻️ Bloques reutilizables
Determinados bloques podrán reutilizarse en diferentes páginas.
Por ejemplo, podremos crear un bloque llamado:
***** de la comunidadY utilizarlo en diferentes páginas:
/comunidad/
/contacto/
/servidores/De esta forma no será necesario duplicar el mismo contenido en varias páginas.
🔌 Sistema ampliable mediante Plugins
Una de las características más importantes será la integración con el sistema de Plugins de Risus Nova UI.
Páginas Modulares no tendrá un sistema de plugins separado. Utilizará el propio sistema de complementos de Risus Nova UI, permitiendo que otros plugins amplíen las posibilidades del constructor.
Un plugin podrá registrar automáticamente nuevos tipos de bloques.
El funcionamiento sería:
Instalar Plugin
↓
El plugin registra nuevos bloques
↓
Los bloques aparecen en Páginas Modulares
↓
Añadir bloque
↓
Configurar
↓
PublicarPor ejemplo, instalamos un plugin llamado:
Game ServersEste plugin podría proporcionar los siguientes bloques:
- Estado del servidor
- Jugadores conectados
- Estadísticas del servidor
- Mapa actual
Una vez instalado el plugin, estos bloques aparecerían automáticamente entre los disponibles en el constructor.
Después podríamos crear una página como esta:
Página: /servidores/
[ Estado servidor ] [ Jugadores ]
[ Estadísticas ]
[ ***** ]Todo esto se podrá hacer sin modificar el núcleo de Páginas Modulares.
Esto permitirá que el constructor pueda seguir creciendo simplemente instalando nuevos plugins en Risus Nova UI.
🔎 SEO avanzado
Cada página podrá disponer de su propia configuración SEO.
- Título SEO
- Meta descripción
- URL amigable
- Imagen personalizada para compartir
- Open Graph
- Twitter Cards
- URL canónica (rel="canonical")
- index / noindex
- follow / nofollow
- Inclusión o exclusión del sitemap.xml
Esto permitirá utilizar las páginas modulares también para contenido importante que deba posicionarse correctamente en buscadores o compartirse en redes sociales y *****]
[size=x-large]💾 Borradores e historial de revisiones
Crear una página no significará tener que publicarla inmediatamente.
Las páginas podrán tener diferentes estados:
BORRADOR → PUBLICADA → DESACTIVADAEl administrador podrá preparar y probar una página antes de hacerla visible públicamente.
También se contempla un historial de revisiones que permita recuperar versiones anteriores.
Versión 14 — Administrador — 18:42
Versión 13 — Administrador — 18:31
Versión 12 — Moderador — 17:55Si accidentalmente se elimina un bloque, se cambia un layout o se modifica algo incorrectamente, se podrá volver a una versión anterior.
🎨 CSS y JavaScript personalizado
Cada página podrá disponer de CSS personalizado sin necesidad de modificar los estilos generales del tema.
Por ejemplo, la página /servidores/ podría utilizar:
.server-card {
border-radius: 12px;
}Ese CSS únicamente afectaría a la página correspondiente.
También se podrá contemplar JavaScript específico cuando sea necesario, restringido a administradores autorizados por motivos de seguridad.
No se permitirá ejecutar PHP arbitrario desde un bloque como ocurría en algunos sistemas antiguos.
🛡️ Seguridad
El nuevo sistema será desarrollado teniendo en cuenta la arquitectura y las medidas de seguridad de Risus Nova UI.
- Validación de los datos de los bloques
- Control de permisos
- Protección de acciones administrativas
- Control del contenido personalizado
- Integración segura con plugins
- Sin ejecución libre de PHP desde el constructor
🎨 Integración con los temas de Risus Nova UI
Las páginas utilizarán el sistema de plantillas de Risus Nova UI y respetarán el tema utilizado por el foro.
No serán páginas externas añadidas por separado, sino una funcionalidad integrada dentro del propio sistema.
Los desarrolladores de temas también podrán personalizar la apariencia de los componentes utilizados por Páginas Modulares.
🧩 Estructura del sistema
PÁGINA
│
├── Configuración
├── URL / Slug
├── Estado
├── Permisos
├── SEO
├── CSS / JS
├── Revisiones
│
└── SECCIONES
│
├── Layout 100%
├── Layout 50/50
├── Layout 70/30
├── Layout 30/70
└── Layout 33/33/33
│
└── COLUMNAS
│
└── BLOQUES
├── Tipo
├── Configuración
├── Visibilidad
├── Caché
├── Posición
└── Estado💡 Ejemplo práctico
Queremos crear una página para los servidores de nuestra comunidad.
1. Creamos la página:
Nombre: Servidores
URL: /servidores/
Estado: Borrador2. Creamos una sección 70% / 30%:
[ Información del servidor ] [ ***** ]3. Añadimos otra sección:
[ Estado servidor ] [ Jugadores ] [ Estadísticas ]4. Los bloques de servidores pueden proceder de un plugin instalado en Risus Nova UI.
5. Configuramos la caché de la API.
6. Configuramos SEO, permisos y diseño.
7. Previsualizamos la página.
8. Cambiamos su estado de Borrador a Publicada.
Y la página estará disponible en:
Registrate o inicia tu sesión para ver este contenidoEl objetivo es que crear una página avanzada en Risus Nova UI deje de significar:
Crear PHP → Crear plantilla → Programar consultas → Modificar rutas → Añadir CSS → Modificar el tema
Y pase a ser:
Crear página → Elegir layout → Añadir bloques → Configurar → Publicar
Y cuando se necesiten nuevas funcionalidades:
Instalar Plugin → Nuevos bloques → Añadirlos a cualquier página
La intención es convertir Páginas Modulares en un constructor visual, extensible y completamente integrado con Risus Nova UI.
🚧 Estado del desarrollo
El sistema ya se encuentra en fase de pruebas.
Actualmente se están comprobando las diferentes funciones, la integración con Risus Nova UI, el funcionamiento de los bloques, los layouts, permisos y la compatibilidad con el sistema de plugins antes de publicar una primera versión estable.
Durante esta fase todavía pueden realizarse cambios, mejoras y ajustes según los resultados obtenidos durante las pruebas.
¿Qué os parece? ¿Qué otras funciones os gustaría ver en el sistema?


Facebook
Twitter
Reddit
Digg
del.icio.us
Tumblr
Pinterest
Blogger
Fark
LinkedIn
Mix
Google