The End of PHP 7.3 Was a Victorious Event
Late in 2017, we were able to upgrade our whole platform to PHP 7.4 after a smooth transition from PHP 7.3. Does it not sound terrifying? We are pleased to report that the vast majority of our clients were not required to make any effort whatsoever during the entirety of the procedure. After all, this is the primary motivation for their decision to choose Pagely: they want a completely managed WordPress experience from start to finish.
How We Made It Work
Well, we rolled up our sleeves and tested literally each and every website using PHP 7.3. Behind the scenes, we tested each and every one of these websites with PHP 7.4 to ensure that the upgrade would not cause any issues. We clung to PHP 7.3 for the few websites that exhibited compatibility issues, while the vast majority experienced a seamless transition to PHP 7.4.
Dockerize Every Thing!
The conversion of our fleet to PHP-FPM environments based on Docker has been extraordinarily beneficial. Not only has it added flexibility, such as the ability to choose new PHP versions and fast deliver security upgrades, but it also makes testing new PHP versions a snap.
Thanks to our newly Dockerized PHP strategy, we were able to deploy distinct Docker containers for every application. Then, we could perform our tests under an alternate version, replete with genuine transactional transactions, while the existing version continued to handle live traffic.
This methodology is excellent for end-to-end testing. Compared to alternative tactics, there are several advantages:
- It takes hours to perform compatibility testing; nobody has time for that.
- Cloning sites is arduous and frequently requires direct coordination with site owners.
- “You only live once” (YOLOing) is never a good time.
Our goal is to simplify your hosting experience by providing a fully managed WordPress platform. What better approach to challenge the existing quo than to develop innovative solutions to the pain issues encountered by so many corporate WordPress sites? As the saying goes, need spawns inventiveness!
Putting It into Context
What if I assigned you the responsibility of testing tens of thousands of WordPress sites on a new PHP version? You should be shaking in your boots if you are not already. Even with the available automation and test suites, it is a considerable task.
With our new Docker-based method, we performed fleet-wide compatibility assessments in a matter of days.
When it was time to do the real upgrade from PHP 7.3 to 7.4, we made sure to hold back the possibly problematic sites, and every single site passed further testing and managed the change without a hitch. No snags, no lengthy downtime, nothing but smooth sailing.
We’re extremely pleased with the output, and we hope you used the time you saved by having Pagely handle the heavy work to do something enjoyable or useful. In the end, just a small percentage of sites tested (less than 1%) failed; a result we’re pleased to credit to our platform’s automated upgrades and our team’s ongoing efforts to provide world-class WordPress support.
Future Changes in PHP
PHP 7.4 will approach End-of-Life later this year, around four months after this piece is published.
Considering the tremendous success of our previous testing technique, we want to employ the same approach with PHP 8. Every site presently using the “Stable” version option will be tested for compatibility with PHP 8.0, and every site using the “Latest” version preference will be tested for compatibility with PHP 8.1.
As PHP 8.0 becomes the next stable option, PHP 7.4 will remain the “Sunset” version until the end of the year, allowing you more time to address any compatibility issues that we may discover throughout our testing.
Testing for PHP 8 compatibility and release schedule
Beginning the week of August 8, 2022 (roughly 30 days from now), the mappings for “Sunset”, “Stable”, and “Latest” will be modified as follows:
- The status of PHP 7.4 “Sunset” will remain unchanged until November 28, 2022.
- PHP 7.4 “Stable” will be replaced by PHP 8.0.
- PHP 8.0 “Latest” will be replaced by PHP 8.1.
- When PHP 7.4 officially reaches EOL on November 28, 2022, we will transition “Sunset” to version 8.0.
Getting Ready for Next PHP Version Changes
We are requesting that all Pagely clients check in to the Managed-WP.TM PRO interface and review the PHP version setting for each of your sites.
If you examine your PHP version, you may find that the majority of your sites use PHP 7.4. If you’re presently using PHP 7.4, we advise you to update your option in the Managed-WP.TM portal to “PHP8.0” so that you may upgrade to newer stable versions sooner and have a longer period of time to fall back to PHP7.4 in the event of compatibility concerns.
This only guarantees that you are on the right upgrading route moving ahead. As a general rule, we do not advise maintaining websites on the PHP7.4 choice; PHP7.4 should only be used when necessary.
PHP Compatibility Check- PHP 8.0 (New “Stable” Version is Ready)
After its November 2020 release, PHP 8.0 has been stable for some time. As with each new significant software release, new compatibility modifications accompany the addition of new features and performance enhancements.
The great majority of WordPress plugins and WP Core itself have already been updated for PHP 8.0 compatibility.
It is important to note that PHP 7.4 has not received any performance enhancements or bug fixes beyond security patches for the past seven months, while PHP 8.0 has received all of the aforementioned. Even though the shift from PHP 7.4 to 8.0 is a relatively safe upgrade at this time, we will continue to test each site as we implement the update.
On php.net, you can find comprehensive documentation on compatibility when upgrading to version 8.0 from version 7.4.
PHP 8.1 (Upcoming “Most Recent” Version, Will Be Available Soon)
With the release of WordPress 6.0, preliminary support for PHP 8.1 in WordPress Core became available.
At this time, we only advocate utilizing PHP 8.1 on WordPress 6.0 sites. Even though WordPress 6.0 is largely compatible with PHP 8.1, there is still work scheduled for the WordPress 6.1 milestone before all known problems are eliminated.
In addition to core upgrades, plugins and themes may require additional time to catch up. As we continue to analyze the release notes for the most popular plugins, we have made significant progress on this front. Fortunately, the WordPress Core team is aware of the adjustments required for complete compatibility with 8.1, owing to the wonderful WordPress Community early adopters.
The following links provide further information on these remarkable items:
Here’s a link detailing the migration from PHP 8.0 to 8.1 for general PHP changes outside of what’s being implemented in WordPress core.
If You Don’t Change PHP7.4 to PHP8.0 on Your Own, Contact Us.
We will alter the version mappings as indicated above, but not before testing your sites. If all tests pass, sites set to “Stable” will begin utilizing version 8.0 instead of 7.4 if all tests pass.
Although your “Sunset” PHP version settings will remain same, the underlying version mapping will change from PHP 7.4 to PHP 8.0. Similarly, if your website’s PHP version is set to “Latest,” we will maintain that setting and test things before mapping “Latest” to 8.1.
What Occurs Following November 2022?
At that time, we will reevaluate the condition of WordPress Core and determine which version the preferences should correspond to.
Overall, we aim to make the most recent versions available to you as soon as they are released, assuming WordPress Core can operate on it. Depending on how things pan out, we may offer PHP 8.1 as a “Beta” option soon after its ready!
What Happens if Your PHP Version Is “Locked” to 7.4 or 8.0 due to your version of WP plugins & custom codes?
If your site is restricted to PHP7.4 because of the plugin and custom code did not support PHP8.0 , we highly advise that you check its code to ensure that it is compatible with 8.0. To make the most of the period between now and complete EOL, we advise you to get a head start on this before we contact you directly during testing.
In addition, we recommend update the version of WordPress and plugins. and adhering to the “Stable” or “Latest” version settings going forward. This enables you to be included in the rolling updates without having to manually alter the setting or have it updated by a member of our staff.
Thank you for reading, and please don’t hesitate to contact our Support Team if you have any questions or need assistance – we’re here 24/7.