How to Change Your PHP Version, for the Account or One Site
Last updated September 6, 2026
PHP is the language WordPress is written in, and the version you run it on decides how fast your site is and whether your plugins work. You can change it for the whole account in one click, or pin a single website to a different version, which is what makes it possible to test an upgrade without dragging the rest of your sites along.
- Takes
- A few seconds
- Downtime
- None
- Per site
- Yes, pin any site to its own
- Where
- Panel → PHP
Which Version to Be On
The one marked (recommended) in the dropdown. It is the newest release we consider safe for WordPress, and it is where new accounts start.
Newer PHP is faster, usually by a wide margin, and gets security fixes that older releases do not. The only reason to be on an older one is a plugin or theme that has not been updated, and that is a reason to plan an upgrade rather than to settle.
Change It for the Whole Account
Open your hosting account and choose PHP. Pick a version, press Apply.

Your sites stay online while it switches. Every website that has not been pinned to its own version moves with this setting.
Pin One Website to Its Own Version
Each website in the list has its own dropdown. Leave it on Default and the site follows the account; choose a version and the site is pinned to it and stops following.
The panel then shows two groups, the sites on the account default and the sites pinned to their own, so “what have I changed here” is one glance rather than a read of every row.
One thing worth knowing about the cost: sites that agree on a version share one PHP process. Leaving everything on the account default costs nothing extra. Pinning a site starts a second process for it, which is a real but small amount of your account’s memory. Pin what you need to pin; there is no reason to pin every site individually.
Turning Extensions On
The core extensions are always on and are not listed: MySQL, GD, cURL, mbstring, XML, Zip, Redis and OPcache. Everything WordPress and the common plugins expect is already there.
Three more are switches, because each one is a decision rather than a default:

| Imagick | Image editing and thumbnails. Most themes expect it, and it produces better-looking resized images than the built-in library. |
| SOAP | Older payment and shipping integrations still ask for it. |
| ionCube Loader | Runs encoded commercial plugins. Off unless one asks for it by name. |
These apply to every website on the account, not to one site. One set of configuration files is written per account and every site runs with them.
exec, shell_exec, SOAP and parse_ini_file among them. They are not off to be awkward: each one widens what code running on your site is allowed to do, and on a shared server that is a decision rather than a default. If a plugin you trust needs one, open a ticket naming the plugin and the function and we will turn it on for your account. If Something Breaks After a Switch
Switch back. It takes the same few seconds, and the version is the only thing that changed.
Then find out what objected before you try again. A plugin that fails on newer PHP normally says so in the site’s error log, which is under Logs in the panel, usually as a fatal error naming a file inside one specific plugin. Update that plugin, or replace it, and try the switch again.
Questions
Will changing PHP take my site offline?
No. Sites keep serving while the switch happens.
Which PHP version does WordPress need?
WordPress runs on anything we offer. The question is really your plugins and your theme, and the answer for well-maintained ones is that they run on the newest.
Can two of my websites run different versions?
Yes. Pin the one that needs to differ; the rest follow the account default.
Why is my staging copy on the old version?
Because it was created that way on purpose, so it starts out identical to the live site. Pin the copy to the new version once it exists. That is the test.
How do I turn on exec or shell_exec?
Open a ticket naming the plugin that needs it. They are per-account and off by default because each one widens what code on your site may do.
Where do I change memory_limit or max_execution_time?
Ask us. Those are per-site and support can raise them for one site without touching the rest of the node. Tell us the domain and what you were doing when you hit the limit.