PHP and WordPress Version Checks Coming to Themes
PHP and WordPress version checks are coming to the WordPress theme system — finally. The feature was pulled into core WordPress three days ago. It will prevent end-users from installing or activating a theme that is incompatible with their current version of PHP or WordPress. The change is slated to land in WordPress 5.5.
This feature has long been on many theme authors’ wish lists, particularly PHP version checking. Plugins authors gained the ability to support specific PHP versions starting with WordPress 5.2. However, theme authors were left feeling like the second-class citizens they usually are when it comes to the addition of core features, waiting patiently as plugin authors received the new and shiny tools they were looking forward to.
Previously, the code for manually handling version checking within individual themes was more complex than in plugins. Theme authors needed to run compatibility checks after theme switch and block theme previews in the customizer using two different methods, depending on the user’s WordPress version. That is assuming theme authors were covering all their bases.
Users had no real way of knowing whether a theme would work on their site before installing and attempting to activate it. It was a poor user experience, even when a theme gracefully failed for the end-user.
This user experience has also held back some theme authors from transitioning to newer versions of PHP. For years, many were supporting PHP 5.2. Slowly, some of these same authors are now making the move toward newer features up to PHP 5.6, which is now the minimum that WordPress supports. However, not many have made the jump to PHP 7 and newer.
Until now, there has been no mechanism for letting the user know they need to upgrade their PHP to use a particular theme.
Some theme authors may choose to continue supporting older versions of PHP, such as 5.6, for a potentially wider user base. However, developers who want to switch to newer features can now do so with the support of the core platform.
Changes for Users

Users who are browsing the WordPress theme directory may begin to notice new information available for some themes. Similar to plugins, visitors should see a WordPress Version and PHP Version listed for some themes. For example, the Twenty Twenty theme now lists the following minimum requirements:
- WordPress Version: 4.7 or higher
- PHP Version: 5.2.4 or higher
Not all themes will have these numbers listed yet. It will take some time before older themes are updated with the data required to populate these fields.
In WordPress 5.5, the admin interface for themes will change. When attempting to install or activate a theme, WordPress will prevent such actions. If a user searches for a theme that has an incompatible WordPress or PHP version, the normal installation button will be replaced with a disabled button that reads “Cannot Install.” If a theme is installed but not activated, the activation link will similarly be replaced with a disabled “Cannot Activate” button. Users will also not be allowed to live preview incompatible themes.

The feature works the same from within the customizer interface as it does via the themes screen in the WordPress admin.
Changes for Theme Authors
The WordPress Themes Team recently announced two new required headers for theme authors to place in their style.css
files. The first required field is Tested up to
, which is the latest version of WordPress the theme has been tested against. The second is a Requires PHP
field, which is the minimum PHP version the theme supports.
It is unclear is why the team decided to require those two fields but not the Requires at least
field, which represents the minimum WordPress version needed. Most likely, theme authors will want to place all three headers in their themes.
Theme authors who will still support versions of WordPress earlier than 5.5 will want to continue using their old compatibility checks. However, this is the first step in phasing such code out.
7 Comments
Thanks Justin for highlighting this. Many of us worked very diligently to make this work.
Hopefully it allows WP to move its minimum PHP requirement in a much less painful manner.
Report
Thanks for the work you all put into this.
Report
That’s good news Justin.
Hopefully it speeds up the shift to higher PHP versions even more.
Thanks for the update.
Report
Progress, progress progress…. and a lot of behind the scenes work done without a doubt – thank you to all involved.
That said – “if” everyone believes that “information” is everything… then please could I stress that in the response note, be included as to WHY the theme was not excepted as per the “Cannot Activate” button. At least this will help the “novice to experts” understand… and… avoid the forums asking the same “WHY”…
just a thought, did I say thank you to all those involved – if not, thank you.
sincerely
Bruce Bennett
(a “novice to expert” apprentice!)
Report
The “Requires at least” tag is already pulled from the readme file of a theme. For several months at least.
Report
It can now be pulled from the
style.css
file with all the other theme info. This went into the theme directory two months ago. The big thing will be the handling of this in core.Report
This is another fantastic thing to be added in WordPress core. I am a theme author and I really appreciate this. I hope all WordPress developers do the same. Truly awesome and thank you so much for the information as you always do.
Report
Comments are closed.