Hace 7 horas
Risus Nova 2.0 — Novedades y Cambios
La actualización más grande de PHPost en años
La actualización más grande de PHPost en años
Después de meses de trabajo, hoy publicamos Risus Nova 2.0, una actualización mayor que moderniza el script de arriba a abajo. Aquí os contamos todo lo que ha cambiado.
⚙️ PHP 8.3
El script ha sido completamente adaptado para funcionar con PHP 8.3+. La versión 7 lleva sin soporte oficial desde diciembre de 2022, lo que significaba que cualquier instalación estaba expuesta a vulnerabilidades sin parche.
Se han corregido todos los errores de tipado estricto, propiedades nulas, funciones obsoletas y avisos que PHP 8 generaba con el código anterior. El resultado es un script más rápido, más seguro y compatible con los servidores actuales.
📦 Smarty 4.5.6
El motor de plantillas ha pasado de Smarty 2 a Smarty 4.5.6. La versión anterior generaba decenas de errores en PHP 8 que impedían el funcionamiento correcto del script. Con Smarty 4 la compilación de plantillas es más eficiente y el sistema de caché funciona mejor.
🔒 Seguridad
- Contraseñas migradas de MD5 a bcrypt. MD5 es inseguro desde hace años. Las contraseñas de usuarios existentes se migran automáticamente a bcrypt la primera vez que inician sesión, sin que tengan que hacer nada.
- Cloudflare Turnstile en lugar de reCaptcha en los formularios de registro y login.
- Corregidas varias vulnerabilidades menores en el manejo de sesiones y cookies.
✍️ Nuevo editor — CKEditor 5
El editor de texto ha sido reemplazado por CKEditor 5, uno de los editores más completos y modernos disponibles. Más cómodo, más intuitivo y mejor adaptado a dispositivos móviles.
🔤 Font Awesome 7
Los iconos del script se han actualizado a Font Awesome 7, con más de 4.500 iconos nuevos y mejor rendimiento de carga.
⚡ JavaScript
- jQuery actualizado de 3.5.1 a 3.7.1
- Eliminados markItUp (usaba eval()) y autogrow (roto en jQuery 1.9+)
- scrollTo actualizado de 1.4.2 a 2.1.3
- Eliminadas todas las referencias a Taringa y Poringa del código
- El buscador ahora redirige al buscador interno del sitio
- Scripts movidos al final del body para mejor rendimiento
🗺️ SEO — Sitemap XML
Se ha añadido un sitemap XML dinámico accesible en /sitemap.xml. Se genera automáticamente con todos los posts públicos, categorías y perfiles de usuario. Regístralo en Google Search Console para mejorar el indexado de tu sitio.
🛠️ Instalador nuevo
El instalador ha sido reescrito desde cero. Proceso en 6 pasos con diseño moderno, detección automática del entorno (localhost vs producción), creación automática de todas las tablas, rangos, configuración y usuario administrador. Ya no hace falta tocar nada a mano después de instalar.
📋 Panel de Administración
El panel principal ha sido rediseñado con tarjetas de estado que muestran el rendimiento del servidor, el estado de moderación y la apariencia activa. Incluye un comprobador automático de versiones que avisa cuando hay una actualización disponible.
Notas de actualización
Si actualizas desde una versión anterior, ejecuta el upgrade desde /upgrade/ y luego ejecuta estas dos queries en phpMyAdmin:
Código:
ALTER TABLE p_posts ADD FULLTEXT KEY ft_tags (post_tags);
ALTER TABLE p_posts ADD FULLTEXT KEY ft_title_body (post_title, post_body);Borra también la carpeta /cache/ de la raíz del sitio tras actualizar.
CHANGELOG
=====================================================
RISUS NOVA 2.0 — CHANGELOG
PHPost | Registrate o inicia tu sesión para ver este contenido
Fecha: Mayo 2026
Autor: Tronlar
=====================================================
------------------------------------------------------
COMPATIBILIDAD PHP 8
------------------------------------------------------
- Compatibilidad total con PHP 8.3+
- Corregido TypeError: propiedad tsUser::$info declarada
como array no aceptaba null (PHP 8 tipado estricto)
- Corregido bug critico en loadUser() que usaba user_id
en lugar de user_rango al cargar permisos del usuario
- Eliminadas funciones deprecadas de PHP 7.x
- Corregidos warnings masivos por propiedades null en
QueryString.php, functions.php y bbcode.inc.php
- Corregidas claves indefinidas en $_GET en posts.php
y c.posts.php con isset() y operador ??
- Sistema de sesiones adaptado a PHP 8 con
random_bytes() criptográficamente seguro
- Logout mejorado con detección dinámica de cookie de
sesion por patron (pp_XXXXXX_sid)
- Corregido TypeError en collection.php del upgrade:
funciones mysql_* migradas a mysqli_*
- Corregido is_resource() en upgrade por instanceof
mysqli_result (PHP 8 ya no usa resources)
------------------------------------------------------
BASE DE DATOS
------------------------------------------------------
- Motor de tablas del upgrade cambiado de MyISAM a
InnoDB con charset utf8mb4
- Añadidos indices FULLTEXT en p_posts para búsqueda
de posts relacionados (ft_tags, ft_title_body)
- Añadida columna post_image en p_posts
- Añadida columna user_pwtype en u_miembros para
gestión de migración de hash de contraseñas
- Corregidos indices huérfanos en tablas u_perfil y
u_portal que referenciaban columnas inexistentes
- Añadidas columnas stats_comunidades,
stats_respuestas y stats_online en w_stats
------------------------------------------------------
SEGURIDAD
------------------------------------------------------
- Contraseñas migradas de MD5 a bcrypt con migración
automática al iniciar sesión (sin acción del usuario)
- Corregido login-salir.php: ahora borra correctamente
la cookie de sesión dinámica ademas de la legacy
- Eliminados error_log de debug en upload-crop.php que
volcaban contenido de $_POST y carpeta uploads/
- config.inc.php limpiado: eliminadas constantes
TSCookieName, RC_PUK y RC_PIK ya sin uso
------------------------------------------------------
MOTOR DE PLANTILLAS
------------------------------------------------------
- Migración de Smarty 2 a Smarty 4.5.6
- Compatible con PHP 8.3 sin warnings ni errores
- Compilación de plantillas mas eficiente
- Cache de plantillas mejorada
------------------------------------------------------
JAVASCRIPT
------------------------------------------------------
- jQuery actualizado de 3.5.1 a 3.7.1
- jquery.plugins.js: eliminado markItUp 1.1.5
(usaba eval() para desofuscár su código)
- jquery.plugins.js: eliminado autogrow 1.2.2
(usaba $.browser eliminado en jQuery 1.9+)
- jquery.plugins.js: scrollTo actualizado de 1.4.2
a 2.1.3 (compatible con jQuery 3.x/4.x)
- acciones.js: eliminadas referencias a Taringa y
Poringa del buscador; ahora usa el buscador interno
- acciones.js: eliminada funcion change_search_engine
- acciones.js: modernizado document.all (IE legacy)
- acciones.js: modernizado e.keyCode con e.key
- acciones.js: cookies con fechas hardcodeadas
sustituidas por fechas dinamicas
- funciones.js: $.post migrado a $.ajax con
encodeURIComponent en recover-pass y recover-validation
- funciones.js: eliminado campo RefID y enlace a
tscript.in del formulario de afiliacion
- Buscador home redirige al buscador interno del sitio
------------------------------------------------------
INTERFAZ Y DISEÑO
------------------------------------------------------
- Iconos actualizados a Font Awesome 7
- Nuevo editor de texto CKEditor 5
- Scripts JS movidos al final del body para mejor
rendimiento de carga
- Eliminado polyfill jQuery.browser del header
- og:image y twitter:image ahora dinamicas segun
el contenido (post, foto o imagen por defecto)
- Añadido twitter:image que faltaba en el header
- Los dos $(document).ready del header fusionados en uno
- Lazy loading en imágenes de muro y comentarios
------------------------------------------------------
PANEL DE ADMINISTRACION
------------------------------------------------------
- Panel principal rediseñado con tarjetas de estado
- Comprobación automática de versiones desde phpost.es
- Campos de reCaptcha cambiados a Cloudflare Turnstile
- Log de mejoras y parches de seguridad visible
- Sección de equipo administrativo
------------------------------------------------------
INSTALADOR (NUEVO)
------------------------------------------------------
- Instalador completamente reescrito desde cero
- Proceso guiado en 6 pasos con diseño moderno
- Detecta automáticamente entorno localhost vs
producción (http vs https)
- Crea todas las tablas, indices, rangos,
configuración y usuario administrador
- Campos de Cloudflare Turnstile en el instalador
guardados directamente en la base de datos
- Corregidos todos los errores SQL de instalacion
(indices huerfanos, columnas duplicadas, etc.)
- Post de bienvenida con BBCode y contenido correcto
------------------------------------------------------
UPGRADE
------------------------------------------------------
- collection.php migrado de mysql_* a mysqli_*
- Corregida comprobacion is_resource() a
instanceof mysqli_result
- Tablas del upgrade cambiadas a InnoDB/utf8mb4
------------------------------------------------------
OTROS
------------------------------------------------------
- Nuevos botones de compartir en redes sociales
- RSS feed implementado
- Sistema de avatares mejorado
- Limpieza de archivos y librerias innecesarias
- version.json disponible en phpost.es para
actualizaciones automáticas desde el panel
=====================================================
NOTAS DE ACTUALIZACIÓN
=====================================================
Si actualizas desde una versión anterior:
1. Sube todos los archivos al servidor
2. Ejecuta el upgrade desde /upgrade/
3. Ejecuta en phpMyAdmin:
Código PHP:
ALTER TABLE p_posts ADD FULLTEXT KEY ft_tags (post_tags);
ALTER TABLE p_posts ADD FULLTEXT KEY ft_title_body (post_title, post_body);
4. Borra la carpeta /cache/ de la raiz del sitio
Las contrasenas de usuarios existentes se migraran
automáticamente a bcrypt la próxima vez que inicien
sesión. No se requiere ninguna acción por parte de
los usuarios.
=====================================================
CRÉDITOS
=====================================================
PHPost Team | Registrate o inicia tu sesión para ver este contenido
Basado en T!Script por Tronlar
=====================================================
Antes de instalar Risus Nova 2.0, asegúrate de que tu hosting cumple los siguientes requisitos.
🐘 PHP
- Versión mínima: PHP 8.0
- Versión recomendada: PHP 8.2 o superior
Extensiones obligatorias:
- mysqli — base de datos
- mbstring — codificación de texto
- gd — procesamiento de imágenes
- curl — peticiones HTTP externas
- json — formato de datos
- session — sesiones de usuario
- fileinfo — detección de tipo de archivo
- openssl — seguridad y cifrado
Configuración recomendada:
Código:
allow_url_fopen = On
upload_max_filesize = 8M
post_max_size = 8M
max_execution_time = 60🗄️ Base de datos
- MySQL 5.7 o superior
- MariaDB 10.4 o superior
🌐 Servidor web
- Apache con mod_rewrite activado (necesario para las URLs limpias)
- O Nginx con configuración equivalente de rewrite
📁 Permisos de escritura
Las siguientes carpetas deben tener permisos de escritura (666 o 777 según el hosting):
Código:
/cache/
/files/avatar/
/files/images/
/files/uploads/
/config.inc/💾 Espacio en disco
- Mínimo recomendado: 50 MB (sin contar archivos subidos por usuarios)
La mayoría de hostings compartidos actuales cumplen estos requisitos. Si tienes dudas, consulta con tu proveedor de hosting o pregunta en este foro.
[img]Registrate o inicia tu sesión para ver este contenido[/img]
[img]Registrate o inicia tu sesión para ver este contenido[/img]
DEMO
http://Registrate o inicia tu sesión par... contenido
http://Registrate o inicia tu sesión par... contenido
Descarga
Mediafire
http://Registrate o inicia tu sesión par... contenido
Google Drive
http://Registrate o inicia tu sesión par... contenido
¿Tienes dudas o encuentras algún problema? Déjalo en los comentarios.
Mediafire
http://Registrate o inicia tu sesión par... contenido
Google Drive
http://Registrate o inicia tu sesión par... contenido
¿Tienes dudas o encuentras algún problema? Déjalo en los comentarios.