When we roll out updates, we don’t update all sites at the same time. If you don’t see the latest update in your WordPress dashboard please wait a little longer or download the latest version from your account.
What’s New
How are you doing today? Are you getting enough sleep?๐ Drinking enough water?๐ฅ Eating some fruits๐ here and there? Changelogs are fantastic but We we also wanted to use this space to remind you to be kind to yourself and those around you. Thatโs all. Have a great day and enjoy the latest updates: ๐
5.0.6 Release September 29, 2023
- Fix: There could be a fatal error after plugin activation on multisites if a plugin uses the filter
site_option_active_sitewide_plugins
. #2785 - Fix: Theme Twenty Twenty Three has a bug that leads to corrupt staging sites. The transient
_transient_wp_core_block_css_files
breaks the css after migrating or creating a new staging site. This transient will be deleted on a freshly created staging site. Related: https://wordpress.org/support/topic/wordpress-block-styles-not-loading-in-frontend/ #2778 - Dev: Add make command to check class method return type hints #2769
5.0.5 Release September 25, 2023
- New: Compatible up to WordPress 6.3.1
- New: Add support for Wordfence 2FA authentication in the WP Staging login form. #2253
- New: Add two new filters to allow updating active plugins on staging site after cloning and on live site after pushing.
wpstg.cloning.update_active_plugins
andwpstg_pushing_update_active_plugins
. #2409 - Enh: Added real time elapsed time counter and restructured new staging process modals. Fixes an issue where log files are mixed up in the log window after canceling a staging process. #2651
- Enh: Enable “Email Error Report Sending” as default in WP STAGING | PRO during initial plugin installation #2722
- Enh: Wrap WP Staging hooks in custom methods to make WP Staging plugin(s) less exploitable. #2748
- Fix: Php error ‘cross-device link’ can lead to backup restoring failing on Microsoft Azure servers. #2548
- Fix: Drop-in plugins like object-cache.php and advanced-cache.php were not excluded by default during cloning. #2746
- Fix: Exclude wp-content/wp-staging-sites directory during CLONING and BACKUP and also keep this directory during Backup Restore #2765
- Fix: The delete confirmation modal shows a wrong staging site name when there is more than one staging site. #2741
- Fix: Exclude All in One Security Plugin (AIOS) from being disabled by wp staging optimizer during staging or backup operations when AIOS has the post prefix option enabled as this will make wp staging unusable. #2672
- Fix: After backup creation and backup restoring, the log entries in the success modal get purged and are not visible anymore. #2719
- Fix: Make the batch renaming process for tables (in both RESTORE and PUSH) more robust and less error prone. #2772
- Dev: Fix inverse usage of TaskResponseDto::isRunning #2643
5.0.4 Release September 7, 2023
- New: Allow the usage of wildcards characters in the push filter ‘wpstg_preserved_options’. #2546
- New: Exclude multiple database values from copying to a staging site table through the ‘wpstg.cloning.database.queryRows’ filter. #2545
- New: You can add the new constant WPSTAGING_DEV_SITE into wp-config.php that determines if site is a staging/dev site or regular one. #2556
- Fix: Cannot upload single backup files larger than 25GB on SFTP Storage. #2539
- Enh: Removed console logs and clean up code. #2561
- Enh: Rename logfile to wpstg-bundled-logs.txt while downloading and sending report to support team. #2593
- Enh: Improve admin notice if cron jobs do not work. #2723
- Fix: Fatal error due to foreign key constraints on tmp or bak tables when cleaning WP Staging tmp and bak tables before Pushing a staging site to live. #2728
- Fix: Fatal error during backup restore if site has a drop in plugin like db.php or object-cache.php due to incorrect checking the checksum of the drop in plugin file. #2715
- Fix: Add new constant
WPSTG_MEMORY_EXHAUST_FIX
, that can prevent memory exhausted errors during backup creation. #2551 - Fix: A custom UPLOADS folder outside wp-content was not pre-selected and copied during cloning process and tustom UPLOADS folder was not copied during pushing a staging site as well. #2736
- Fix: Improve admin notice when a pro backup is restored with the free version on another domain, host or server. #2697
- Tweak: Adjust the requirements for restoring backup by making it dependant on backup structure instead of plugin version. #2717
- Dev: Bump AWS PHP SDK package to latest version #2295
- Dev: Remove PHP 5.6 compatibility code #2714
- Dev: Reduce file size of the free plugin by removing unused backup cloud storages libraries from vendor packages. #2710
- Dev: Add e2e tests for admin notices for backup and staging #2652
- Dev: Delete tests output dir content while running
make reset
and./wpstg build:webdriver-rebuild-dist
#2726
5.0.3 Release August 28, 2023
- New: Add dropbox cloud storage backup provider. #1881
- New: Add support for custom domain based multisites. Network sites will be created in a subdomain. E.g.If the main site is “example.com” and the staging site destination url is “staging.example.com” then the live network site example.org will be cloned to staging.example.org and the network site example.net will be cloned to staging.example.net automatically. #2600
- New: Add more options to wp cli backup backup-create command #2468
- New: Add new contact us modal for free version to be able to provide better support to free users. #2246
- New: Create staging site as default into ‘example.com/wp-content/wp-staging-sites/staging-site- name’ if root folder is not writable. #2438
- Enh: Revise warnings in the symlink modal tooltip and improve the HTML syntax structure #2668
- Enh: Transform the ‘click here’ hyperlink into a button on the staging site to enable staging site cloning #2664
- Enh: Show admin notice on staging site if symlink option has been used to create it #2667
- Enh: Added target URL when transferring staging site to live site #2362
- Fix: Show admin notice on all pages on live or staging site if current site uses wpstgtmp_ or wpstgbak_ table prefixes as live table. #2666
- Fix: Canceling the New CLONING process would delete all tables of production site if advanced settings were used to provide custom prefix for staging site with same database and host as production site. #2665
- Fix: WP Staging backup folder gets deleted during restore on Windows OS. This can lead to an interuption and fatal error of the backup restore. #2690
- Fix: Improve condition whether a table belongs to current site table during PUSH when cleaning temporary tables. #2686
- Fix: If database tables prefix contains underscore like wp_12345, the sql backup part in multiparts backup is detected as separate backup. #2656
- Fix: Having residual tables with wpstgbak_ prefix can leads to unsuccessful PUSH and backup RESTORE. Unless the current site prefix is wpstgbak_, these tables are now removed before starting RESTORE and PUSH #2576
- Fix: Added style enhancement of changing the cursor to a pointer when interacting with the ‘Contact Us’ button #2662
- Fix: Copied generated login link contains inline css style. #2654
5.0.2 Release August 17, 2023
- New: Add more options to wp cli backup-create command #2668
- Enh: Increase log file storing time to 14 days. #2625
- Enh: Add admin notice to explain the new backup feature in free version #2524
- Enh: Enhance free version backup modal UI #2608
- Enh: Don’t allow saving empty table prefix for a staging site when using the edit button #2572
- Fix: Use DTO instead of separate file for managing index sizes while creating backup to avoid filesystem lock. #2640
- Fix: Backup creation fails on PHP 8 because unable to get primary key for table. #2629
- Fix: Stop backup restore if no sql query is found to be executed but the backup contains a database to be restored #2560
- Fix: Show admin notice if there is no WordPress table prefix in the database #2586
- Dev: Add changelog entries in dedicated files #2623
- Dev: No changelog needed on release branches #2763
5.0.1 Release August 8, 2023
- New: Compatible up to WordPress 6.3
- New: Make UI more consistent and use same success and processing modals for staging site creation as for backup creation #2221
- Fix: Rating banner can not be dismissed #2632
- Fix: Multipart backup scheduled to be sent to google drive does not send all parts #2516
- Fix: Could not backup tables that contain multiple primary keys (composite keys) #2616
- Fix: Stop backup restore and add better logging if sql file is not readable during backup restore #2560
- Fix: New delete modal does not show all tables on sites with many db tables due to CSS issue #2221
- Fix: Resolved conflict with plugin “Admin and Site Enhancements” #2513
- Fix: Prevent UI issue and word wrapping on line that says: “No staging site found” on MacOS on Chrome #2552
- Fix: The feedback form on plugin deactivation does not send any data. #2638
- Dev: Undefined method interfaceDatabaseClient::fetchAll() in phpstan #2622
- Dev: e2e tests fail on multi sites #2631
5.0.0 Release July 25, 2023
- New: Drop support for php 5.6. Minimum php version is 7.0 #2579
- New: Flywheel hosting compatibility. Create staging sites and create backups on hosting providers where the WordPress core is located outside the public dir. #2372
- New: Add system info to backup log file #2309
- Enh: Check if sftp backup directory path is writeable while testing remote connection #2506
- Enh: Add a tooltip to inform that backups will be created only for the current site and do not contain other sites, like staging websites #2483
- Enh: Allow the user to click on “Copy” to copy the generated login link #2443
- Enh: Improved code to be compatible with PHPstan level 3 rules #2461
- Enh: Changed the order of login link expiry to day, min, sec #2380
- Enh: Update back button color to make clear it is an active button #2512
- Enh: Display the size of backup index parts in the list of backups #1678
- Enh: Show the “Push Changes” button always in WP STAGING PRO and disable it until the license is activated #2466
- Fix: WP CLI command
wp wpstg backup-status
did not work as expected #2467 - Fix: Unselect folders starting with wp-admin* and wp-includes* when creating a new staging site #2340
- Fix: Show the “primary key” warning only on WP STAGING admin page #2477
- Fix: Multisite related constants missing during network clone when the original wp-config.php is not valid defaul multisite configuration file #2504
- Fix: Restoring a backup fails because redis/memcache not configured on the destination site. This disables object cache if object-cache.php is not identical on backup and restoring site #2517
- Fix: Php error ‘Undefined constant DOMAIN_CURRENT_SITE’ #2512
- Fix: Microsoft IIS 7.5 with php 8.1.9 produces unexpected time format when using microtime() resulting in fatal error “division by zero” while creating a backup #2571
- Fix:
www
prefix is set indomain
property of subsite would result into repeatingwww
prefix during network clone #2544 - Fix: Don’t escape MySQL binary and blob data during cloning as this results into invalid data #2565
- Tweak: Small visual glitches on tooltip in upload backup modal #2496
- Dev: Improved usage of $status variable in backup and cloning #2332
- Dev: This PR does a comprehensive pass on the codebase to verify that authorization checks are being done on callbacks that takes user input. #2531
4.10.1 Release June 19, 2023
- New: Bring the premium high-performance pro backup feature into the basic version to allow creating a periodic backup of the WordPress website including backup restoring. #1979 #2487
- Enh: Display Google Drive account info permanently on the settings page. Remove the option to customize the Google drive redirect uri. #2399
- Enh: New styled back button #2444
- Fix: Database tables renaming is now done in multiple requests instead of a single request for both PUSH and RESTORE. This allow easily rename hugh number of tables on slow server without worrying about increasing PHP Script timeout limit #2392
- Fix: On backup restore keep or remove the staging site mode depending upon the current site state. E.g. Restoring a backup of a staging site on a live site will remove the staging site mode #2392
- Fix: Small JS errors related to the backup sidebar menu when clicking tabs on the main navigation #1979
- Fix: Backup restore can fail if backup has different access token than current site #2481
- Fix: Several php 8.x warnings on staging site push operation in wpstg debug log #2472
- Fix: When cloning into external database NULLs were converted to empty strings in the staging site #2448
- Fix: Backup created with free version can show a warning if it is restored with pro version #2497
- Dev: Update google webdriver driver test credentials #2450
4.9.0 Release May 25, 2023
- New: Compatible up to WordPress 6.2.2
- New: Feature to disable WP Cron jobs on the staging site #2314
- New: Button to unselect all staging site tables before cloning #2355
- New: Add two-way encryption for backup storage credentials stored in the database. Read https://wp-staging.com/docs/wp-staging-encryption-setup/ #2310
- New: Show selected plugins and themes count before cloning #2339
- Enh: Beautify backup and staging log file format #2393
- Enh: Append debug log to download system information #2441
- Enh: Improved code to be compatible with PHPstan level 1 rules #2348
- Enh: Improved code to be compatible with PHPstan level 2 rules #2419 #2459
- Enh: Check if the option_name field contains the primary key before cloning #2386
- Enh: Display the staging site name on generate login link screen #2432
- Fix: Inaccurate performance values “queries per second” for backup restore #2327
- Fix: Backup download URLs now support mixed http/https scheme #2376
- Fix: Deprecation notice on PHP 8.2 / 8.1 #2389
- Fix: Write the correct version number in wpstg.js when creating a free dist package #2431
- Fix: Correct use of printf and gettext #2313
- Fix: On backup creation MySQL Error 1118 row size too large error can appear #2422
- Fix: Fix line-break issue during files-index validation when validating a backup on Windows OS that was created on Linux OS and vice versa #2402
- Fix: Add Query Compatibility fix when restoring a database backup created on MariaDB with PAGE_COMPRESSED=`ON` on MySQL database #2401
- Fix: PHP 8.1 warnings on backup creation due to using null value on wp_normalize_path #2453
- Fix: Added method to handle sending email in free version with attachments #2417
- Dev: Check if the Issue or PR Number exist in the changelog #2394
4.8.1 Release May 9, 2023
- Fix: Remove custom global exception handler to avoid conflicts with other plugins #2424
4.8.0 Release May 5, 2023
- New: Pro feature to allow generation of magic login links to staging site. Go to “Actions > Share Login Link”. This requires updating WP Staging Pro plugin on staging site #2204
- New: Pro feature to sync active admin account. Go to “Actions > Sync User Account” to synchronize active admin user account with staging site #2183
- New: Support SSL connection to external databases #2264
- New: Allow WP-CLI to work on the staging site #2280
- Enh: Refresh UI and add new animated loader icon to show backup progress #2292 #2349
- Enh: Refresh UI and format system information page #2333
- Enh: Refresh UI an add button to open staging site after updating staging site #2358
- Enh: Refresh UI. Show more clear cron message and take into account that WP_CRON could be disabled if external backup cron is used #2378
- Enh: Improve backup email error report and show more clear messages when a backup fail #2383
- Enh: Display a message when the backup or restore process stops due to lack of server memory #2210
- Enh: Combine wp staging logs and system info logs #2224
- Enh: Show admin notice when optimizer mu-plugin is disabled to improve reliability of backup creation #2301
- Enh: Run backup validation checks again after deleting a backup #2286
- Enh: Toggle triangle icon on multi part backup click #2308
- Enh: Make more clear where to enter the license key #2404
- Enh: Allow uploads directory outside ABSPATH by using the filter `wpstg.backup.directory` #2359
- Fix: Selecting a child folder automatically selects the parent folder. #2317
- Fix: Toggle correctly the side bar navigation depending if staging or backup tab is active #2261
- Fix: Excluding sub-directories on backup did not work with using the filter ‘wpstg.backup.exclude.directories’ #2291
- Fix: Database permission warning did not disappear due to escaped database name #2234
- Fix: Remove sanitize_url() deprecated notice #2306
- Fix: Could not download system info #2323
- Fix: Catch runtime exception when checking for valid backups during invalid file index notice #2312
- Fix: Use correct html element id to fix js console error #2344
- Fix: Last backup duration was always 0 min, 0 sec. It is now fixed #2383
- Fix: Retry adding the backup file index up to 3 times if adding the backup file index fails #2383
- Fix: Login redirect loop on wp-admin #2385
- Fix: Add custom exception handler #2346
- Dev: DRY webdriver tests #2276
- Dev: Decouple PRO feature from WPStaging\Backup namespace and move them into WPStaging\Pro\Backup namespace #2296 #2336 #2356
- Dev: Fix issues running basic webdriver tests on Github CI #2319
- Dev: Add timeout to Github actions #2324
- Dev: Write wp staging debug logs into global debug.log #2346
4.7.2 Release March 31, 2023
- New: Compatible up to WordPress 6.2
- Enh: Improves the look of the update notice #2294
- Fix: Remove double
www
prefix if network is cloned to awww
prefixed hostname but subsite already haswww
prefix #2284 - Dev: Add more unit tests to increase reliability of the backup plugin #2273
- Dev: Refactor backup terms
Export
toBackup
andImport
toRestore
for consistency #2265 - Dev: Move src/Pro/Backup to src/Backup as a first step to allow basic Backup feature to be added in Free version of WP Staging #2287 #2297
4.7.1 Release March 24, 2023
- New: Add filter
wpstg.restore.tmp_database_prefix
to use custom temporary database prefix used during backup restore. Using this filter is useful in cases when (1) there are already tables with default WP Staging temp prefix (wpstgtmp_), or (2) restore fails because of 64 characters table name length limit for database identifiers #2217 - New: Add filter
wpstg.backup.directory
to save backups in a custom location #2247 - Enh: Improve message if there is not enough free disk space while creating a backup #2193
- Enh: Add better logging for backup creation #2257
- Enh: Improve the error message on the front-end when the backup directory is not available #2130
- Enh: Show in knowledgebase block only articles of plugins that are actually installed on users website #2176
- Enh: Show specific error message on backup listing page if backup is corrupted
- Enh: Refactoring of admin notice for better performance #1573
- Fix: Improper use of the Translation function #2259 #2260
- Fix: Prevent fatal errors on rare edge cases where a file lock can not be released #2254
- Fix: Clear wpstg_* scheduled hooks on plugin deactivation #2256
- Fix: Images URLs are now correctly formed when a backup is restored from
http
tohttps
and vice versa #2111 - Fix: Allow
+
character in PuTTY SFTP key format, fixing the issue where PuTTY generated keys are not working #2155 - Fix: Improper use of the translation function #2260
- Fix: Sometimes a warning can appear indicating the backup file would be broken and contains a broken backup file index although the backup file is 100% intact #2269
4.7.0 Release March 13, 2023
- New: Major change of the User Interface #2197 #2208
- New: Add an option to send an email error report. You can enable this option in the settings and use a separate email to receive error reports #2205
- Enh: Show a notice if site contains backup(s) with invalid files-index #2205
- Enh: Add a retry mechanism to backup restore if a backup restore fails due to 404, 429 or 503 errors #2094
- Enh: Clean up log files and don’t show necessary information #2124
- Enh: Show notice how to enable permalinks depending on whether the server is Apache or another. #2143
- Enh: Explain what to enter in the ‘version’ field of Generic S3 provider #2172
- Enh: Show notice how to fix cron issue when using Litespeed server #2170 #2226
- Enh: Better notification message when there are no files to backup #2175
- Enh: Take sub folder into account when testing location for Google Drive Storage #2197
- Enh: Include the current date and time in the database filename when the backup is a “Multipart Backup” #2126
- Fix: Staging site database tables can not be pushed if staging site settings contain different table prefixes #2151
- Fix: Support adding “+” sign in the name of the backup folder by FTP, the name of backup and in the name of clone #2160
- Fix: Check if WP_ENVIRONMENT_TYPE is already defined before adding it to wp-config.php. (Solve conflict with local flywheel). #2165
- Fix: Oldest multipart backups were not deleted during remote upload #2129
- Fix: Prevent fatal error on push when there is no theme installed on production site #2185
- Fix: Continue database restore by using shorter name for identifiers name exceeding maximum allowed characters #2114
- Fix: Add a check to prevent warning undefined variable: jobId #2196
- Fix: Better error handling if folder or file is not writeable #2190
- Fix: Handle errors for PHP 8.x during Database Restore Task when max_packet_size is bigger than the actual sql result #2125
- Fix: Convert utf8mb4 to utf8 when restoring database in MySQL < 5.7 to prevent MySQL Error 1071 because MySQL < 5.7 has max key length of 767 bytes. By converting utfmb4 to utf8 it reduces the size by 1/4 and allows restoring a backup. #2203
- Fix: Restore of backup blocked due to incorrect permission check #2228
- Fix: WP Staging log files could not be deleted #2222
- Fix: Prevents a rare edge case where scheduled backups are continuous started over by implementing a better clean up routing #2231
- Fix: Unable to upload backup files to more than one remote storage in single backup job #2245
- Fix: Fetch google drive backup files in ascending order by time to fix a backup retention issue for google drive #2245
- Dev: Revert all usage of isWritable and isExecutable #2232
- Dev: Broken test _04PushCest after implementing #2199 #2216 #2238
4.6.1 Release February 9, 2023
- Enh: Database recovery enhancement to increase the execution time for executing an ajax triggered SQL query when query execution fails for a certain number of retries on weak servers #2117
- Fix: Prevent fatal error on setting page due to using double semicolon(‘::’) to call static method from variable. Affects old php versions only. #2166
4.6.0 Release January 31, 2023
- New: Button to edit backup schedules #2042 #2135
- New: Show Google Drive backup account information on the plugin’s Google Drive backup settings page #2091
- New: Add a cancel button to stop the pushing process #2101
- Enh: Hide license key for privacy reasons, for instance when plugin is used by agencies on client websites #2118
- Enh: Add filter `wpstg_login_form_logo` to allow custom change of the logo image on login page to staging site #2076
- Enh: Clarification that the maximum retention period for backup in the “Create backup” modal only applies to locally hosted backup files #2085
- Enh: If issue is reported via using the REPORT ISSUE button, send the license key with the submitted message #2087
- Enh: Change some words to be more consistent #2099
- Enh: Add link to docs article into error message if license key can not be activated #2100
- Enh: Cleanup and remove backend/views/notices/poll.php and all related code #2107
- Fix: Old automated local backups were not deleted and thus no new automated backups were created #2141
- Fix: Improve detection if WordPress is installed in subdirectory. If home URL and site URL are different the cloned staging site URLs are sometimes incorrect. #2068
- Fix: Ensure that functions in wp-staging-optimizer.php are declared only one time #2079
- Fix: Remove some php’s deprecation warnings for php 8.x #2078
- Fix: Remove error in search & replace of serialized data due to strict types during staging PUSH on PHP 8.1 and higher version. #2065
- Fix: Remove warning “Undefined index: networkClone in single-overview.php line: 54” #2097
- Dev: Write the version of the plugin into the header of wpstg.js when creating the dist package with make dev_dist #2095
- Dev: Downgrade phpcs library to fix xss tests #2105
- Dev: Show upload_path in system info #2024 #2147
- Dev: Write the version of the plugin into the header of wpstg.js when creating the dist package with make dev_dist #2095
4.5.0 Release January 05, 2023
- New: Optional feature to split backup files by type (plugins, media, themes) and maximum file size. Use filter `wpstg.backup.isMultipartBackup` to activate this option. Use `wpstg.backup.maxMultipartBackupSize` filter to adjust maximum file size for split backup, default is 2GB #1804
- New: Add filter `wpstg.remoteStorages.chunkSize` (in bytes) to change chunk size of backups upload to remote storages #2047
- New: Add filter `wpstg.remoteStorages.delayBetweenRequests` (in milliseconds) to add delay between requests to upload chunks to remote storages #1997
- New: Add filter `wpstg.backup.tables.non-prefixed` to allow backup and restore of non WordPress prefixed tables #2018
- New: Add option to download backup log files via ACTIONS > Log File #2025
- New: Send mail report if unable to upload backup to remote storage(s) during automated backup #2025
- Enh: Dont show recommendation message on using the same MySQL/MariaDB version while restoring if already the same MySQL/MariaDB version #1997
- Enh: Preserve remote storages options during clone update. #2004
- Fix: Store taskQueue in jobDataDto instead of a separate file #1997
- Fix: Added upload_path in system info #2024
- Fix: BINARY and NULL were not correctly search replaced if restoring the backup on the same site #2043
- Fix: Correct database server type and MySQL/MariaDB version in System Info Tab #2043
- Fix: Exclude filters in the UI for the staging site now allow adding dot `.` for extension, file and folder exclusion rules #2053
- Fix: Issue during cleaning of other files in wp-content directory when actual uploads directory is not direct child of wp-content directory #2041
- Fix: UPLOAD path was not correctly search replaced if source and destination site had a different relative upload path #2041
- Fix: Importing a multisite backup with domains as network sites created wrong URLs for network sites if backup is restored into a multisite where network sites are subdirectories #2038
- Fix: Allow database creation during push if multisite and mainsite #2032
- Fix: Preserve scheduled backup plans during push #2032
- Fix: Stop uploading backup to remote storage(s) after failure on certain amount of retries #2025
- Fix: Dont copy google drive option during new or reset clone. This will make sure both sites will have different Refresh token. So revoking refresh token on one site doesn’t break uploading process for the other #2004
- Fix: Fix php warning when null is passed as argument to trim function #2059
- Fix: Improve admin notice when JETPACK_STAGING_MODE is active on staging site #2014
- Dev: Bump minimatch from 3.0.4 to 3.0.8 in /src/assets #2007
- Dev: Make extra_hosts section in docker DRY #2070
- Dev: Split webdriver tests to speed up running and allow parallel execution of them #2057
- Dev: Improve login page authentication message #2058 #2072