ClassicPress 2.6.0
12 December 2025
ClassicPress version 2.6.0 is now available (major release).
Upgrading to ClassicPress 2.6.0
ClassicPress 2.6.0 can be upgraded to (or installed) using any of Installatron's products. Use Installatron's optional Automatic Update feature to automatically apply ClassicPress updates as new versions are released, or use Installatron's Clone feature to duplicate an existing ClassicPress install to test the 2.6.0 upgrade prior to applying it live. Get started managing your ClassicPress installations with Installatron
What's New in ClassicPress 2.6.0
New Features
- Added polyfills for PHP 8.5 functions array_first and array_last
- Added strategy parameter support for wp_enqueue_script()
- Added support for inline attachments in wp_mail
- Enabled the enqueueing of JavaScript modules
- Updated Twemoji support to v16
- Added support for PHP 8.5
- Introduced ability to delete post and page revisions
- Minor changes and bugfixes since 2.5.0
Backport of security fixes from WordPress 6.8.3
- Fixed initialization of imgAreaSelect when cropping a header image or a site icon or logo.
- Ensure password is reverted to password input type upon submission
- Set correct canonical admin URL
- Added post-migration notification to Welcome screen
- Prevent TinyMCE duplication in Customizer text widgets
- Use HTML5 for display of date and time on Edit Comment screen
- Copy attachment properties on site icon crop
- Improved Theme Editor menu label
- Improved compatibility notices for plugins
- Improved Help tab content in several admin areas
- Improved option descriptions in Media Settings page
- Optimized SQL for custom field retrieval on editing screens
- Refactored translation domain iteration for updates
- Added User Groups to admin menu
- Added i18n support for FilePond uploader modal
- Update About and Freedoms screens
- Fixed logged undefined array key warning in Revisions
- Added i18n support for screen reader text in FilePond uploader
- Restored Theme file editing on Windows servers
- Removed duplicate id names in HTML elements on Page tables
- Improved tests for mail embeds using a dataProvider
- Update site health and privacy settings pages to use HTML5
- Keep revisions timeline within screen boundaries
- Removed unused reference to nav menu template in CP Theme
- Fixed upload rename loop in FilePond uploader
- Moved L10n strings for media-grid and Filepond to script-loader
- Corrected media grid order and display after page manually chosen
- Fixed box-shadow when Plugin list contains block information
- Eliminated 404 for mediaelement icon sprite
- Moved .mejs-overlay-button padding to wp-mediaelement.css
- Applied optional chaining in media.js to avoid console errors
- Added null checks in autosave.js for content, title, and excerpt
- Refactored widget title assignment with conditional check
- Ensure Encoding is reset to 8-bit in wp_mail()
- Fixed use of null as an array offset in WP_Date_Query
- Updated mediaelement dependency to v7.1.0
- Improved multipart message handling in wp_mail()
- Removed en_US locale from core update link
- Backported several PHP 8.5 coding enhancements
- Removed wp-pointer dependency for widgets CSS in script-loader
- Check mediaCatSelect exists before adding styling
- Ensured Update URI cannot be bypassed
- Fixed category selector in Editor
- Keep Clear Inactive Widgets button active when appropriate
- Dynamically initialize Audio widgets in admin
Build and Testing Changes
- Updated caniuse-lite in package-lock.json
- Added coverage check to external-http PHPUnit job
- List distributed dependencies correctly
- Introduced Grunt task for updating Root Certificates
- Added mediaelement as dependency and introduced build steps
- Refactored emoji build to use async API calls
- Updated CONTRIBUTING.MD documentation
- Added PHP 8.5 test jobs
- Updated ECMAScript version to 11 in lint configurations
- Updated precommit workflow action