In Time for Christmas: ClassicPress Version 2.3.0 is out!
We’re delighted to announce the release of ClassicPress 2.3.0!
Previous releases have made big strides in improving the way that ClassicPress handles media. They have made it easy to add categories and tags, to see where each media file is used, and even to upload media to specific folders that correspond to media categories.
This release takes that even further and features a Media Library grid view that has been completely re-built. No longer does it rely on bloated JavaScript based on backbone.js templates. Instead, the grid view is written, like most of ClassicPress, in PHP.
This means that the grid view loads faster and is highly scalable, especially if coupled with an object cache. The grid is paginated too, so there is no more need continually to scroll down to find a particular media file. It also boasts greater accessibility, since modals on the page are now handled by the native HTML5 dialog
element. And, unlike before, the grid now includes several hooks that developers can make use of.
But that’s not all! We are pleased to say that core now supports PHP 8.4. We have also added an option in General Options
to disable XML-RPC, which is little used these days and often serves only to provide an attack vector. Another option added to General Options
allows users to disable Emoji.
We are also vigilant at addressing bugs that our users tell us about. Here are the more minor changes and bugfixes that we have made since version 2.2.0:
- Upgraded
SimplePie
to 1.8.0 - Improved string representation for translators in AJAX
- Ensure required file system functions are available when using CP Pepper plugin
- Fixed link to volunteer information in Dashboard
- Removed excessive branding in Privacy Policy Guide
- Updated file list for release integrity checks
- Add placeholders to i18n strings in
object-relationships.php
- Populated
cp_db_version
on new installations - Ensured that Safari indicates when a button has focus
- Restrict range input control styling on the Revision screen
- Prevent Firefox reporting that Autosave contains a later version
- Add a
README
to CP Pepper Password Plugin for directory listing - Fix undefined variable error in Customizer from
common.js
- Updated file size meta data when editing images
- Updated saving and updating of widgets to use the Fetch API
- Removed Safari fallbacks from
SortableJS
- Fixed for PHP error for password reset cookie
- Enabled background images for non-image files in Media Library
- Ensured trailing slash in
get_pagenum_link()
is not forced - Upgraded
PHPMailer
to version 6.9.2 - Allow uploads to have empty
filesizeHumanReadable
property - Updated the Requests library to version 2.0.11
- Ensured Custom panels show as intended in the theme Customizer
- Increased setTimeout to locate tabbable elements in Image Editor
- Modernised SCSS structure to avoid deprecation warnings
- Minify
FilePond
JS and CSS during build - Updated
media-grid.css
to change selector from class to id - Fixed errors in Media Grid when no files have been uploaded
- Set wp-video CSS height to auto to prevent vertical stretching
- Rebuilt Text and Custom HTML Widgets in vanilla JS and PHP
- Implemented password rehash checks at point of password use
- Instantiate widget title inputs before enabling sorting
- Depopulated Update Services list for new installs
- Fixed “Show Details” button in admin Updates page
- Fixed filename data attribute in the media grid view
- Added polyfill for
get_block_theme_folders()
for plugin compatibility - Ensured image details correctly updated in Media Grid
We have also updated our build and testing environments:
- Added
PHPUnit 9
as developer dependency - Run
PHPUnit
tests on PHP 8.4 - Update
readme.html
and supported version tests - Changed to non-resolving URL for
PHPUnit
tests
We have also deprecated both the wp-api
and moment.js
libraries. They will be removed in a future version.
Contributors
In no particular order the following people have contributed to this ClassicPress release:
Tim Kaye, Matt Robinson, Simone Fioravanti, Stefan Gabos, Fabian Wolf, Elisabetta Carrara, Laurence Bahiirwa, Ciprian Popescu, John Blackbourn, William Patton, Mark Waters, Simon Prosser.