Release phpwcms v1.12.0
Happy mid-2026! We are pleased to announce the release of phpwcms v1.12.0. This release includes major security hardening, PHP 8 compatibility improvements, dependency updates, and feature enhancements.
What's Changed
🛡️ Security Hardening
- XSS Mitigation: Resolved security vulnerabilities by properly escaping template outputs (#372).
- Cryptographically Secure CSRF: Implemented cryptographically secure CSRF tokens and updated translations.
- UX Alert Hardening: Added warning icons (RTL-aware) and improved link visibility for CSRF alerts on the login page.
- Web Server & Configuration Hardening:
- Blocked public access to Composer configurations (
composer.json,composer.lock) and PHPStan configurations via.htaccess. - Aligned and hardened rewrite rules of
nginx.confand IISweb.configto match the updated.htaccessrules.
- Blocked public access to Composer configurations (
⚙️ PHP 8 Compatibility & Bug Fixes
- Array Type & Unserialize Warnings: Resolved various PHP 8 array type warnings and unserialize check errors in the shop system and content rendering engine.
- Image Helper Modernization: Modernized the core image helper module to ensure clean operation under PHP 8.
- Array Merge Fix: Resolved a
TypeErrorincnt25.takeval.inc.phpduringarray_mergeexecution. - Include Path Fixes: Corrected the
require_onceorder and paths forconf.inc.phpanddefault.inc.php(#371).
✨ Features & Enhancements
- TinyMCE 8 Integration: Integrated the new TinyMCE 8 editor option into user profiles and the tabs template.
- Disk Caching for Sitemap: Implemented disk caching for the sitemap and enabled feed URL generation for News modules.
- Localisation & Version Check: Localized calendar month names and weekdays, and updated the version checker to use secure SSL connections.
- CookieConsent v3 Translation: Passed user-defined customize text to the CookieConsent v3 modals to ensure custom buttons are correctly localized.
- Deprecations: Formally deprecated obsolete media plugins (Flash, RealMedia, QuickTime) in favor of HTML5 native video or Video.js.
📦 Dependencies & Cleanup
- Libraries:
- Updated jQuery to
4.0.0and jQuery Migrate to4.0.2. - Upgraded Symfony polyfills to
v1.38.1. - Updated Guzzle, PHPMailer to
7.1.1, PHPSpreadsheet to5.7.0, and league/oauth2-google to5.0.0.
- Updated jQuery to
- Codebase Cleanup: Cleaned up outdated MooTools and jQuery remnants and removed the obsolete GoogleMapsAPI directory.