6.3.1 – 2026-06-23
- [fix] WebP/AVIF conversion now updates the image URL everywhere it is stored β post content, custom fields, and options β so images no longer break in page builders (Elementor, Divi, Beaver Builder), the Customizer, or WooCommerce email and placeholder images after converting (#341, #357)
- [fix] URL replacement handles plain, PHP-serialized, and escaped-JSON stored values, and matches by URL path so CDN, protocol-relative, and root-relative links are rewritten too
- [perf] Faster, safer database URL rewriting with a basename pre-filter and per-option cache clearing
- [fix] Aligned the Compress size selector and button on the media attachment screen
6.3.0 – 2026-06-17
- [fix] WP.org compliance: removed bulk AVIF code from free plugin (trialware violation)
- [fix] WP.org compliance: restricted REST /option endpoint to allowlisted keys
- [fix] WP.org compliance: removed external data transmission from deactivation survey
- [fix] WP.org compliance: replaced remote Font Awesome CDN with WordPress dashicons
- [fix] WP.org compliance: removed Intercom live chat widget (external service)
- [fix] WP.org compliance: wrapped core admin includes in is_admin() guards
- [fix] WP.org compliance: replaced WP_CONTENT_DIR and ABSPATH URL patterns with wp_upload_dir()
- [fix] WP.org compliance: added ABSPATH guards to view/template files
- [fix] WP.org compliance: fixed text domain from ‘thumbpress’ to ‘image-sizes’ in 5 strings
- [fix] WP.org compliance: replaced esc_attr_e($var) with echo esc_attr($var) in legacy views
- [fix] WP.org compliance: include composer.json in plugin release
- [fix] WP.org compliance: updated Action Scheduler from 3.7.1 to 3.9.3
- [add] readme.txt: source code link and build instructions
- [add] readme.txt: external services documentation
- [feat] Media library: added Convert to WebP/AVIF Pro feature buttons with an upsell popup in the free version
- [fix] Convert to WebP/AVIF: conversion no longer corrupts attachment metadata or loses data β the new file is written before old files are deleted, metadata writes are guarded, and -scaled originals are no longer orphaned or served at full size
- [fix] Regenerate Thumbnails: cancelling a background regeneration no longer leaves a zombie batch chain that corrupts progress
- [fix] Background jobs: completed Regenerate and Convert to WebP jobs now restore their progress view on page reload instead of showing the initial screen
- [fix] Regenerate & Convert: orphan attachments are no longer processed silently β a not-found count is now surfaced
- [fix] Fixed null dereferences, stale debug keys, and unhandled promise rejections in the new SPA
- [fix] Pro: show an Activate License / Pro activation notice when Pro is installed but its license is inactive
- [fix] No longer force-redirect to the ThumbPress dashboard on every plugin update
- [fix] Fixed settings page and general responsiveness issues (including MacBook screens)
6.2.2 β 2026-06-04
- [fix] Fixed stale settings values when switching tabs after save
- [fix] Fixed WebP convert-on-upload settings screen
- [fix] Fixed lazy load settings screen
- [fix] Hide dismiss button in admin notice when in legacy mode
- [refactor] Removed unused Social_Share API class
6.2 – 2026-05-22
- [fix] Fixed admin redirect loop β AJAX and REST requests now skipped in maybe_redirect
- [feat] Added thumbpress_media_changed action hook fired after media changes to allow cache rebuilds
- [fix] Hotlink protection .htaccess writes now gated to Apache only
- [fix] Hotlink protection URL rewriting now gated to Apache only
- [refactor] Renamed dashboard API identifiers from fast/medium/slow to counts/optimization/analysis across PHP methods, REST routes, TypeScript interfaces, API functions, and React state
6.1.4 – 2026-05-21
- [feat] Add RTL support for switch component
- [fix] Dashboard stats now load sequentially to prevent race conditions
- [fix] Dashboard skeleton loading states display correctly while data loads
- [fix] Pro card filters apply during initial dashboard load
- [refactor] Prefix namespaces with Codexpert to match legacy
- [refactor] Replace single pro_cards filter with 5 per-card filters for granular control
- [chore] Ignore .worktrees directory
6.1.3 – 2026-05-19
- [imp] Improved empty state messages across feature pages
- [imp] Enhanced cache management for dashboard data
- [add] Made all strings translatable across entire codebase
- [fix] Fixed unicode curly quotes to ASCII straight quotes for proper encoding
- [remove] Removed unnecessary code from public-facing views
6.1.2 – 2026-05-13
- [fix] Fixed foreground chunk loop not stopping on cancel for Regenerate and Convert WebP
- [fix] Fixed background WebP and AVIF stale queue, cancel race condition, and stuck loop
- [fix] Fixed AVIF background conversion stuck at 0% due to empty batch and division by zero
- [fix] Fixed loader modal conflicting with page head by moving it to wp_footer
- [fix] Fixed thumbnail size caches not clearing immediately on save disabled sizes
- [perf] Cache thumbnail sizes list for 24h; invalidate only on plugin activate, deactivate, or update
- [perf] Lazy-load Settings tab data to reduce API calls on mount
6.1.1 – 2026-05-09
- [imp] Set stats cache expiry to 1 hour
6.1 – 2026-05-09
- [fix] Fixed heavy _thumbpress_file_hash queries after opening dashboard
- [add] Added number of images in the debug dataset
6.0.2 – 2026-05-07
- [add] Added a Debug tab under Settings with system info (WordPress, PHP, MySQL, server software, memory limits), active plugins list, active theme, WP_DEBUG flags, and ThumbPress-specific settings
- [add] Added one-click Copy as JSON button in the Debug tab header for easy support sharing
- [imp] Moved ThumbPress admin menu item down in the WordPress sidebar
6.0.1 – 2026-05-07
- [imp] Minor improvements and stability fixes
6.0.0 – 2026-05-07
New Features
* Launched a completely redesigned React SPA admin interface with a persistent sidebar, page-level headers, and smooth client-side navigation β replacing the legacy PHP admin
* Added a new Dashboard with a weighted health score gauge, stat cards (Total Images, Total Thumbnails, Unoptimized Images, Space Saved), and a Quick Facts panel sorted by health impact
* Added Convert to AVIF as a free feature β includes auto-convert on upload and single-image conversion from the media library; bulk conversion requires Pro
* Added duplicate image detection in the free plugin using file-hash fingerprinting of original images
* Added Hotlink Protection via .htaccess RewriteRules to block external referrers from embedding site images
* Added JavaScript-based Lazy Load via IntersectionObserver as a configurable option
* Added a unified, tabbed Settings page covering all features: General, Thumbnails, Convert to WebP, Convert to AVIF, Social Share, Compress Images (Pro), and Duplicate Images (Pro)
* Added Cancel button for background WebP conversion and thumbnail regeneration jobs β immediately unschedules queued tasks
* Added single-image Convert to WebP and Convert to AVIF buttons directly on the media attachment edit page
* Added a Regenerate Thumbnails button on the media attachment edit page for per-image regeneration
* Added a Space Saved stat card to the regeneration progress view β tracks cumulative storage recovered across all operations
* Added a welcome notice for new installations that auto-dismisses when visiting the ThumbPress dashboard
* Added an admin notice when an outdated ThumbPress Pro (below 6.0) is detected, prompting an upgrade
* Added a version router so new users receive the new interface automatically while existing users retain their experience until they opt in; a “Turn on legacy mode” link is available in Settings for those who prefer the classic UI
Improvements
* Moved Convert to WebP from Pro-only to the free plugin, with dynamic file format selection (JPEG, PNG, GIF, etc.) and configurable batch size
* Redesigned the Regenerate Thumbnails page with six progress stat cards: Total Images, Total Thumbnails, Images Processed, Images Deleted, Images Created, and Space Saved
* Added a toggle-all switch to the Thumbnails page card header for quickly enabling or disabling all thumbnail sizes at once
* Redesigned the Convert to WebP page with initial/progress states, immediate progress display on button click, and a settings shortcut link
* Replaced the third-party rosell-dk/webp-convert library with WordPress’s native wp_get_image_editor() for WebP and AVIF conversion
* Added skeleton loading animations to the Dashboard, Convert to WebP, and Regenerate Thumbnails pages to prevent layout flash during data fetch
* Added toast notifications on all Settings tabs for save confirmation and error feedback
* Added URL-based tab navigation in Settings so individual tabs are deep-linkable and survive page reload
* Added Pro badge indicators to pro-gated sidebar navigation items and settings rows
* Added an “Upgrade to Pro” button to the page header when the pro plugin is not active
* Added a dedicated Pro page with hero section, feature comparison, pricing plans, accordion FAQ, and testimonials
* Automatically redirected to the ThumbPress dashboard after plugin activation or upgrade
* Automatically migrated legacy option data to the new format when switching from the legacy UI to the new version
* Automatically cleared relevant stat caches when thumbnail sizes are saved, plugins are activated/deactivated, or media is added/deleted
* Pre-warmed stat caches on first activation via Action Scheduler so the Dashboard loads with real data immediately
* Rebuilt stat caches automatically after each media upload or deletion to keep dashboard numbers current without a manual refresh
* Tracked space saved cumulatively across all operations (WebP conversion, AVIF conversion, compression, regeneration) in a single unified option
* Added file-hash and file-size meta backfill for all existing images on activation to enable duplicate detection without a full rescan
Bug Fixes
* Fixed division by zero error in the health score calculation when no images are present
* Fixed WebP and AVIF conversion leaving the original file on disk after a successful swap
* Fixed filename collisions when two source files (e.g. foo.jpg and foo.png) both targeted the same output β the second file now receives a unique name (e.g. foo-1.webp)
* Fixed memory exhaustion on very large image uploads during WebP conversion by pre-flighting available memory before calling the image editor
* Fixed large image detection incorrectly measuring the -scaled derivative instead of the original uploaded file
* Fixed hotlink protection .htaccess rules not working correctly on Apache and Nginx
* Fixed stale progress data disabling action buttons after a completed job
* Fixed foreground WebP conversion not accumulating space-saved totals correctly across multiple chunks
* Fixed a TypeError in Convert to WebP caused by the loop variable being overwritten during iteration
* Fixed migration ordering bug that caused legacy settings to be overwritten by plugin defaults during the version switch
* Fixed WordPress admin submenu active state not syncing with the SPA sidebar when navigating from other admin pages
* Fixed Tailwind CSS leaking styles into the WordPress sidebar and other admin pages by scoping all rules to the plugin container
* Fixed the legacy PHP admin showing a blank screen when switching back from the SPA version
* Fixed AVIF conversion being silently skipped due to an overly strict server support check
* Fixed the Convert to WebP card header not appearing until data finished loading, causing a visible flash
* Fixed Quick Facts showing incorrect WebP/AVIF counts β each format now uses its own independent count
* Fixed the health score incorrectly penalising sites for having thumbnail sizes disabled (disabled sizes save storage and should improve the score)
* Fixed General and Thumbnails settings tabs not saving changes
* Fixed missing file-existence checks before WebP/AVIF conversion that could cause fatal errors on missing source files
* Fixed trashed and missing-file attachments being included in image queries, skewing counts
* Fixed the progress screen flashing briefly when retrying after no images were found
v5.8.37 – 2026-01-13
- [remove] Removed the notice for the Year End sale campaign.
v5.8.36 – 2025-12-23
- [added] Added a new notice for the Year End sale campaign.
v5.8.35 – 2025-12-08
- [fix] Fixed regenerate thumbnails, detect unused & large Images not working issue.
v5.8.34 – 2025-11-25
- [fix] Fixed Free/Pro tab switching (clicks were being ignored)
v5.8.33 – 2025-11-09
- [added] Added a new notice for the upcoming BFCM campaign.
v5.8.32 – 2025-10-08
- [imp] Version compatibility tested with 6.8.3
v5.8.31 – 2025-06-22
- [imp] Version compatibility tested
v5.8.30 – 2025-06-02
- [fix] Plugin search issue fixed
2025-05-26 β v5.8.28
- [imp] Security issue fixed
2025-05-23 β v5.8.27
2025-05-14 β v5.8.26
- [imp] Security issue fixed
2025-05-14 β v5.8.25
- [imp] Change in upgrade to pro text and link.
2025-05-13 β v5.8.25
2025-05-11 β v5.8.24
- [imp] Compatibility tested with WordPress v6.8.1
2025-05-08 β v5.8.23
- [fix] Security issues fixed
2025-05-07 β v5.8.22
- [fix] Fixed issue where images with the same name but different extensions were incorrectly converted to the same image.
2025-04-29 β v5.8.21
- [fix] Notice issue updated
- [fix] Code improved
2025-04-20 β v5.8.20
- [fix] Fix Menu disappeared issue
2025-04-20 β v5.8.19
- [fix] Plugin search result issue fixed
2025-04-17 β v5.8.18
2025-04-17 β v5.8.17
2025-04-09 β v5.8.16
- [imp] Compatibility tested with WordPress v6.8
2025-03-10 β v5.8.15
- [misc] Compatibility tested with WP v6.7.2
- [misc] Version number conflict fixed
2025-03-10 β v5.8.12
- [fix] Fixed the bug related to the convert to WebP feature reached more than 100%
- [add] Code improved
2025-02-23 β v5.8.11
2025-01-17 β v5.8.10
- [add] Compatibility tested
2025-01-02 β v5.8.9
- [add] New Year Notice added
2024-12-12 β v5.8.8
- [fix] Error related to _load_textdomain_just_in_time fixed
2024-11-25 β v5.8.7
- [remove] removed promotional button from dashboard
- [imp] update promotional link & text from plugin menu
2024-11-25 β v5.8.6
- [imp] compatibility tested with WordPress 6.7.1
2024-11-20 β v5.8.5
- [imp] compatibility tested with WordPress 6.7
2024-11-12 β v5.8.4
- [imp] routine maintenance
2024-11-03 β v5.8.3
- [imp] routine maintenance
2024-10-27 β v5.8.2
- [imp] routine maintenance
2024-10-16 β v5.8.1
- [add] added escaping functions for output
- [imp] corrected escaping attribute format
2024-10-08 β v5.8
- [fix] fixed ninja forms conflict issue
- [imp] enabled necessary modules upon install
2024-10-02 β v5.7.5
- [add] added escaping functions for output
2024-09-26 β v5.7.4
- [add] added escaping functions for output
- [imp] corrected escaping attribute format
- [fix] fixed string and translation issue
2024-09-19 β v5.7.3
- [add] added escaping functions for output
2024-09-12 β v5.7.2
- [imp] code formatted
- [imp] compatibility tested with WordPress 6.6.2
2024-09-04 β v5.7.1
- [add] added escaping functions for output
- [imp] corrected escaping attribute format
- [fix] solved string and translation issue
2024-08-21 β v5.7
- [add] added escaping functions for output
- [imp] corrected escaping attribute format
- [fix] solved string and translation issue
- [rem] removed unnecessary DS_Store files
2024-08-11 β v5.6.1
- [fix] fixed thumbpress constant issue
- [fix] fixed font-awesome enqueue issue
- [imp] updated text-domain
- [imp] updated css classes
2024-08-08 β v5.6
- [fix] fixed background actions for modules
- [fix] fixed offset count issue
- [add] new progress messages added
- [imp] improved progress bar design
- [imp] updated settings for modules
- [imp] restricted double click on action buttons
- [imp] optimized javascript code
2024-07-30 β v5.5.1
- [fix] convert images action scheduler issue fixed
- [fix] regenerate thumbnails real time ajax issue fixed
2024-07-30 β v5.5
- [fix] convert images offset fixed
- [imp] progress completion system improved
- [imp] javascript code optimized
- [imp] improved regenerate thumbnails progress
- [imp] plugin activation time condition updated
- [imp] code structure updated for compress images
- [add] new css class added for buttons
- [add] not found message added in multiple modules
- [add] real time actions added using ajax in multiple modules
2024-07-15 β v5.4
- [imp] integrated Action Scheduler into convert to WebP module
- [imp] integrated Action Scheduler into some other modules
- [imp] improved background process of regenerate thumbnails module
- [imp] improved design issues of some modules
2024-06-09 β v5.3
- [fix] fixed disable thumbnails drag-n-drop not working issue
- [fix] fixed module interconnecting links not working issue
- [imp] moved overview page contents to advanced features page
2024-05-31 β v5.2.4
- [imp] Removed unnecessary wporg-assets folder
2024-05-29 β v5.2.3
- [imp] optimized code and reduced plugin file size
- [imp] improved style of disable thumbnails module
- [imp] added links for interconnecting two modules
2024-05-21 β v5.2.2
- [fix] Fixed the issue of stopping generating thumbnails
2024-05-21 β v5.2.1
- [imp] removed pointer notice
2024-05-21 β v5.2
- [fix] solved regenerate thumbnails issue
- [imp] optimized javascript code
2024-05-20 β v5.1.2
- [imp] removed admin notice from dashboard
- [mod] changed leave a review button url
2024-05-15 β v5.1.1
- [fix] Add New Plugin page refersh button onclick issue fixed
2024-05-09 β v5.1.0.2
- [imp] code structure improved
- [fix] sub-menu text changed
- [fix] replace images issue fixed
- [fix] convert all images issue fixed
- [fix] convert images scaled issue fixed
- [fix] delete original image after conversion issue fixed
- [add] get image from attached file with scaled name function added
- [imp] code cleaned and image mime type updated
- [fix] action scheduler table issue fixed
- [imp] check action scheduler table function updated
- [add] create action scheduler tables if missing
- [imp] check action table before activation and delete option table data
- [imp] plugin settings slug changed
- [fix] dashboard pointer issue solved
- [imp] dashboard banner logic updated
- [add] social share image single post check added
- [add] social share image extra check added to avoid warning
- [fix] scaled image regenerate issue fixed
- [fix] scaled image thumbnail regenerate in background issue fixed
2024-05-01 β v5.0.2
- [fix] fixed pinterest thumbnail in social share images module
- [fix] fixed typographic issues in sereral modules
- [fix] fixed Setup Wizard skip button URL
- [fix] fixed some minor issues in Setup Wizard
- [add] Pinterest pin support added for woocommerce product in social share images module
- [add] fallback image meta tag added for Twitter card in social share images module
- [imp] Pinterest pin meta tag updated in social share images module
- [imp] improved some styles
2024-04-29 β v5.0.1
- [fix] JS and CSS minified
- [fix] Compat tested with WordPress 6.5.2
2024-04-29 β v5.0
- [new] #### π Introduced modules-
- Detect Unused Images
- Set Image Upload Limit
- Detect Large Images
- Compress Images
- Replace Image with New Version
- Set Social Media Thumbnails
- Image Editor
- Convert Images into WebP
- Disable Right Click on Image
View detailed Changelog from π here.