Todo lo que necesita saber sobre la arquitectura, el stack tecnologico y los requisitos de uwAdmin6.
Tecnologias fiables y contrastadas, cero dependencias exoticas.
Patron modular con separacion de responsabilidades y multilingue nativo.
Cada modulo sigue una estructura estandarizada:
/uw-admin/admin/{modulo}/
├── index.php # Lista con filtri
├── form.php # Create/Edit
├── ajax/ # Operazioni async
│ ├── delete.php
│ ├── toggle-*.php
│ └── reorder.php
└── includes/ # Componenti riutilizzabili
24 modulos implementados con este patron
Activacion selectiva para cada proyecto
Patron polimorfista con tablas separadas:
# Tabella principale
news (id, data_pubblicazione, attivo)
# Tabella traduzioni
news_traduzioni (
id, news_id, lingua_id,
titolo, slug, contenuto,
UNIQUE(news_id, lingua_id)
)
9 idiomas soportados de forma nativa
URL SEO-friendly para cada idioma: /it/news/titolo
Una sola subida, 7 formatos automaticos:
| Formato | Dimension | Uso |
|---|---|---|
s | 150px | Thumbnail |
m | 300px | Card |
l | 600px | Content |
xl | 1200px | Hero |
xxl | 1920px | Full HD |
original | - | Backup |
crop | Custom | Ritaglio |
4 roles con permisos granulares por modulo:
| Rol | Read | Write | Delete | Publish |
|---|---|---|---|---|
| Super Admin | ||||
| Admin | ||||
| Editor | ||||
| Viewer |
Tema activo configurable desde el admin con soporte para tema de desarrollo:
Priorita risoluzione tema:
1. Tema sviluppo (se abilitato + IP/cookie)
2. Tema attivo (da database)
3. Fallback a 'default'
Override granular: personalice solo los archivos necesarios
Tema de desarrollo: pruebe nuevos temas sin afectar a los visitantes
Autorizacion: whitelist de IP o cookie secreta
Sistema completo con correo SMTP y token seguro:
Token: 64 char hex (random_bytes)
Scadenza: 1 ora
Anti-enumeration: messaggio generico
SMTP: PHPMailer con fallback mail()
Modal integrado en la pagina de inicio de sesion (Alpine.js)
8 preferencias de correo configurables desde el admin
reCAPTCHA v3 opcional para anti-spam
Sistema integrado sin dependencias para cumplimiento del RGPD y ePrivacy:
Cookie Banner (2 livelli):
1. Barra fissa: Accetta | Rifiuta | Personalizza
2. Modal: toggle per categoria cookie
Blocco preventivo script:
- GA4 caricato SOLO dopo consenso
- Script custom bloccati fino ad accettazione
- reCAPTCHA classificato come tecnico
Cookie: uw_cookie_consent (base64 JSON, 365gg)
Policy: generate automaticamente IT/EN
18 preferencias en base de datos (10 privacidad + 8 cookies)
Clases PHP: CookieConsent + PrivacyPolicy
Frontend: Alpine.js cookie-consent.js
Proteccion completa OWASP Top 10 y mejores practicas.
100% prepared statements con binding de parametros via MySQLi.
$db->query($sql, [$id], 'i');
Output encoding con htmlspecialchars() en todos los datos de usuario.
htmlspecialchars($data, ENT_QUOTES, 'UTF-8')
Token unico por sesion en cada formulario POST.
<input type="hidden" name="csrf_token" value="...">
Hashing con PASSWORD_BCRYPT y cost factor 12.
password_hash($pwd, PASSWORD_BCRYPT, ['cost' => 12])
5 intentos fallidos -> bloqueo de 15 minutos. Anti brute-force.
max_attempts: 5, lockout: 900s
Binding IP + User Agent. Regeneracion de ID tras el inicio de sesion.
session_regenerate_id(true);
Proteccion anti-spam invisible con validacion basada en puntuacion (0.0-1.0).
$recaptcha->isValid(null, 'login');
Compatible con la mayoria de los proveedores de hosting.
Opcional: imagick para procesamiento avanzado de imagenes
Servicios externos y API soportadas.
Contacte con nosotros para una consultoria tecnica o para solicitar una demo personalizada.
Este sitio utiliza cookies técnicas y, con su consentimiento, cookies de análisis para mejorar su experiencia. Política de cookies
Indispensables para el funcionamiento del sitio. No pueden ser desactivadas.
Nos ayudan a entender cómo los visitantes interactúan con el sitio, recopilando información de forma anónima.