Get your WordPress on PHP 7.0 now!

We have just released a new version of our WordPress plugin 3.2.1 the SG Optimizer, which allows you to move to PHP 7.0 with a click.  We encourage all SiteGround customers to utilize this great option and make their WordPress installation run on PHP 7.0 now. PHP 7.0 has been available on our servers for over a year and it is high time that all of our customers take full advantage of the considerable performance boost it provides.

How does it work?

First, you need to install SG Optimizer 3.2.1 or higher version to your WordPress, or simply update it, if you already have an older version of the plugin. Then go to the PHP Config section and see which PHP version are you currently using. If it is below PHP 7.0 you will have an option to start an automated check, which will scan all your active themes and plugins and verify if they are PHP 7.0 compatible.

If everything is compatible you will be able to update your PHP version with a click.

If there are themes and plugins that might not be compatible with PHP 7, you will see them listed on the screen. We recommend that you update any such theme or plugin with a newer available version and redo the check again. In case updating is not an option you may consider disabling unused plugins too.

Once your site uses PHP 7.0 or higher, you will be able to manually switch to other PHP versions too. Right now, the recommended version is 7.0 but you can try 7.1 too right away, as it is available on our servers too. We also give you the option to switch back to previous PHP versions in case you notice issues that were not detected by the plugin check.

The SG Optimizer checks whether your site runs on the recommended PHP version. Right now that’s 7.0 but in the future we will switch to 7.1, 7.2, etc. That would be a constant effort that we’ve committed to do in order to keep SiteGround customers on the latest, safest and fastest PHP version.

Product Development - Technical

Enthusiastic about all Open Source applications you can think of, but mostly about WordPress. Add a pinch of love for web design, new technologies, search engine optimisation and you are pretty much there!

54 Comments

  1. Reply March 16, 2017 / 10:45 Niels TeunisSiteGround Team

    I have one plugin that seems incompatible with PHP7. But the plugin provider (Cornerstone from X-Theme) says that this is a false negative. Nevertheless, I cannot bypass it in SGOptimizer. Or do you have a way to upgrade to PHP7 anyways and take the risk with this plugin?
    Thanks,
    Niels

    • Reply March 17, 2017 / 03:22 Hristo PandjarovSiteGround Team

      You can always change the PHP Version manually from the PHP Version Manager tool in cPanel or by following the instructions in this article: https://www.siteground.com/kb/how_to_have_different_php_versions/

      As to false-positive results, we maintain whitelist of checks and plugins/themes so once confirmed, we will exclude that one from the checks.

      • March 17, 2017 / 09:42 Dawn KruegerSiteGround Team

        Cornerstone is still coming up as incompatible. Hasn't anyone confirmed that this should be whitelisted?

      • March 20, 2017 / 03:24 Hristo PandjarovSiteGround Team

        If you're certain it works fine, you can switch to PHP 7 manually from cPanel - PHP Version Manager 🙂

      • March 17, 2017 / 10:32 Dawn KruegerSiteGround Team

        FYI - I upgraded several X themes with Cornerstone to PHP 7 today manually and no conflicts arose.

      • March 19, 2017 / 13:55 NataliaSiteGround Team

        You can probably whitelist Voice theme, they've confirmed that their theme is compatible with PHP 7.0 (I haven't tried yet however ))

      • March 20, 2017 / 02:39 Hristo PandjarovSiteGround Team

        Thanks for reporting this!

  2. Reply March 16, 2017 / 12:05 Detrina KofrothSiteGround Team

    I am getting an incompatible for Loginizer but I can not find how to disable it or deactivate it on my network

    • Reply March 17, 2017 / 03:22 Hristo PandjarovSiteGround Team

      If you're on Multisite, maybe you need to check whether it's a plugin installed per user or globally.

  3. Reply March 16, 2017 / 14:57 CraigSiteGround Team

    I'm testing this out right now. Since I have three sites on my VPS, do I need to run the test on all three sites before clicking upgrade?

  4. Reply March 16, 2017 / 15:33 CraigSiteGround Team

    Also, just to confirm, since I don't see it in the notes anywhere...

    Clicking 'upgrade' adds a line to the .htaccess file, correct?

    • Reply March 17, 2017 / 03:23 Hristo PandjarovSiteGround Team

      Yes

  5. Reply March 16, 2017 / 17:23 John CopeSiteGround Team

    I'm just blow away by how pro-active you guys are. Awsome!

  6. Reply March 16, 2017 / 21:13 SylviaSiteGround Team

    I followed your directions and pressed the "check compatibility" button. How long does it take?
    It has been over 40 minutes...

    • Reply March 17, 2017 / 03:24 Hristo PandjarovSiteGround Team

      Maybe it has stalled because some plugin you have activated on your account. Although rare, such things happen. Please, open a ticket in your Help Desk and we will check it in details!

  7. Reply March 16, 2017 / 21:18 Kim WallingSiteGround Team

    Where you say above 'Then go to the PHP Config section' is this in the file manager of the cpanel or is it in the front end of WordPress?

    • Reply March 17, 2017 / 03:24 Hristo PandjarovSiteGround Team

      In the WordPress Backend, you can go to SG Optimizer -> PHP Config and do the checks and the switch to PHP 7.0.

      • March 17, 2017 / 14:56 Gwen HarrisonSiteGround Team

        OK I logged into my WordPress Admin panel and I'm just not finding any of this there. So it must be in the Siteground Control Panel?

      • March 20, 2017 / 03:26 Hristo PandjarovSiteGround Team

        You need to have the SG Optimizer plugin installed and activated.

  8. Reply March 17, 2017 / 02:05 Norio “The Tech Assassin” De SousaSiteGround Team

    Great feature, love it!

    It is, however, detecting a false-positive.

    In this file (Peformag Theme from Thrive Themes):
    — performag/partials/category-meta.php

    It's detecting this error on line 12:
    — Using 'break' outside of a loop or switch structure is invalid and will throw a fatal error since PHP 7.0

    But if you look at the code, the break *is* within a loop. (foreach + endforeach)

    Hope this helps 🙂

    Sorry if the code is badly formatted. No idea what you support in your comments.

    • Reply March 17, 2017 / 03:26 Hristo PandjarovSiteGround Team

      Thanks for reporting that, will look into it!

  9. Reply March 17, 2017 / 06:38 AndyRSiteGround Team

    Hi Hristo,
    The php 7 check throws the following errors with pinpoint booking system:
    57 | ERROR | Global with variable variables is not allowed since PHP 7.0
    159 | ERROR | Global with variable variables is not allowed since PHP 7.0
    235 | ERROR | Global with variable variables is not allowed since PHP 7.0
    Since I have more than one site operating with this plugin I'd value your advice on what to do next!

    • Reply March 20, 2017 / 02:42 Hristo PandjarovSiteGround Team

      I would recommend that you contact the plugin developers regarding this matter. They can either update the plugin or tell you how to proceed about the PHP switch. Note, that the plugin is just for convenience, you can always manually change the PHP version from cPanel - PHP Version Manager.

  10. Reply March 17, 2017 / 08:38 StefanSiteGround Team

    I have a problem with All In One Favicon plugin. Do you know the workaround?

    • Reply March 20, 2017 / 02:44 Hristo PandjarovSiteGround Team

      I would recommend contacting the plugin developers to get more info about the error. Note, that you can always change the PHP version manually from the PHP Version Manager tool in cPanel.

  11. Reply March 17, 2017 / 08:51 Clive SherlockSiteGround Team

    (1) I have the latest version of the theme Thesis 2. What can I do about the following?

    Can I still transfer to PHP 7? If not,

    (2) Will changing to PHP 7 affect the login to the site?

    • Reply March 20, 2017 / 03:21 Hristo PandjarovSiteGround Team

      Please, contact the plugin or theme provider for further assistance on that matter.

  12. Reply March 17, 2017 / 12:55 colinSiteGround Team

    Well, my entire theme (High-end) is incompatible: "WARNING | Use of deprecated PHP4 style class constructor is not supported since PHP 7"
    Same error for Layerslider WP.
    For the Revolution Slider: "ERROR | preg_replace() - /e modifier is deprecated since PHP 5.5 and removed since PHP 7.0"
    I paid $50 for this theme. I'm not techie. So it looks like I won't be upgrading. Either that or buy a new theme and cross my fingers that it is compatible, I guess. Ah boy.

    • Reply March 20, 2017 / 03:25 Hristo PandjarovSiteGround Team

      Most paid themes/plugins provide support. You should contact them for more information about how to proceed. Some themes have backwards-compatibility code that triggers such warnings and if that's the case, you can switch your site manually from cPanel - PHP Version Manager.

  13. Reply March 17, 2017 / 14:08 RyanSiteGround Team

    Hi, after running the checker I'm getting an error for the WordPress plugin - Popup Maker
    I reached out to the devs because the plugin was just updated yesterday.

    Their response - "Rest assured, we are 100% compatible with PHP7. These are just warnings and that extra stuff is there for backwards compatibility in case a user has an older version of PHP."

    Do I just disable the plugin and go forward with the update, then re-enable the plugin after or will this cause issues?

    Thanks!

    • Reply March 20, 2017 / 03:26 Hristo PandjarovSiteGround Team

      You can simply switch to PHP 7 from the PHP Version Manager tool in cPanel.

  14. Reply March 17, 2017 / 15:02 VernSiteGround Team

    Hi there Hristo.
    I get this error on my backup site :
    FILE: /home/g2b93042/public_html/backupbridge/wp-content/plugins/js_composer/js_composer.php
    --------------------------------------------------------------------------------------------
    FOUND 1 ERROR AFFECTING 1 LINE
    --------------------------------------------------------------------------------------------
    220 | ERROR | Visibility for magic method __sleep must be public. Found: private
    --------------------------------------------------------------------------------------------

    It looks like it does not run with Visual Composer.

    any clues please.

    Thanks in advance

    • Reply March 20, 2017 / 02:40 Hristo PandjarovSiteGround Team

      Please, update VC to the latest version which for sure is PHP 7 compatible. Once you do that, you can manually switch to PHP7 🙂

  15. Reply March 18, 2017 / 09:13 LarrySiteGround Team

    I installed this and it didn't even give me a chance to see if my site was compatible. I clicked on PHP config and it says: Site is running on PHP 7.0 which is our recommended PHP version or higher.

    I went to cpanel and it shows: Server version: 5.6.28-76.1-log - Percona Server (GPL), Release 76.1, Revision 5759e76

    So, whats going on? All I did was install it. Why isn't there anything in your instructions about this, like: If it doesn't ask to see if your compatible and shows PHP7.0 in the top box.....do this or don't do this.

    C'mon, how about a little effort here?

  16. Reply March 18, 2017 / 09:16 LarrySiteGround Team

    Since I couldn't edit my last comment....Why did I have to install this plugin if my site is already running on PHP 7.0?

    • Reply March 20, 2017 / 03:28 Hristo PandjarovSiteGround Team

      If you're using SG Optimizer just for that - you don't. If your site is already working on PHP 7.0 there's no point checking for compatibility 🙂

  17. Reply March 18, 2017 / 10:25 EddySiteGround Team

    What are the specific benefits of switching? A performance boost is mentioned, but what does that equate to?

    • Reply March 20, 2017 / 02:59 Hristo PandjarovSiteGround Team

      There are multiple articles about the performance improvements in PHP7. It's dramatically faster than the 5 versions. Of course, the effect on each site is different depending on the overall code quality. In addition, PHP7 comes with opcache integrated in it which is great performance boost.

  18. Reply March 18, 2017 / 11:43 EduardoSiteGround Team

    When checking for PHP 7.0 compatibility, I received a notification that the Layers plugin is incompatible with it, so I manually updated the PHP version in cPanel. But I keep receiving the notification from SG Optimizer that I am not running on recommended PHP version and when checking the details, it still has the Layers error, which is below:

    FILE: /home/bike1236/public_html/blog/wp-content/themes/layerswp-master/core/widgets/modules/post.php
    -----------------------------------------------------------------------------------------------------
    FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
    -----------------------------------------------------------------------------------------------------
    15 | WARNING | Use of deprecated PHP4 style class constructor is not supported since PHP 7.
    -----------------------------------------------------------------------------------------------------

    FILE: /home/bike1236/public_html/blog/wp-content/themes/layerswp-master/core/widgets/modules/content.php
    --------------------------------------------------------------------------------------------------------
    FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
    --------------------------------------------------------------------------------------------------------
    15 | WARNING | Use of deprecated PHP4 style class constructor is not supported since PHP 7.
    --------------------------------------------------------------------------------------------------------

    FILE: /home/bike1236/public_html/blog/wp-content/themes/layerswp-master/core/widgets/modules/contact.php
    --------------------------------------------------------------------------------------------------------
    FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
    --------------------------------------------------------------------------------------------------------
    15 | WARNING | Use of deprecated PHP4 style class constructor is not supported since PHP 7.
    --------------------------------------------------------------------------------------------------------

    FILE: /home/bike1236/public_html/blog/wp-content/themes/layerswp-master/core/widgets/modules/slider.php
    -------------------------------------------------------------------------------------------------------
    FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
    -------------------------------------------------------------------------------------------------------
    15 | WARNING | Use of deprecated PHP4 style class constructor is not supported since PHP 7.
    -------------------------------------------------------------------------------------------------------

    Shold I be worried with these errors?

    • Reply March 20, 2017 / 03:29 Hristo PandjarovSiteGround Team

      If you click on the Dismiss notice tab, it will not show again. However, make sure that your running on PHP 7 by checking the PHP Version Manager tool in cPanel.

  19. Reply March 18, 2017 / 20:21 Katherine WakefieldSiteGround Team

    Gave the plugin a try. Installed and hit test. Never did anything, just kept me waiting for 20 minutes. Went into cPanel and upgraded PHP to 7.x just fine.

    • Reply March 20, 2017 / 02:38 Hristo PandjarovSiteGround Team

      Maybe it has stalled on some of the checks. Glad everything works on PHP 7 though!

  20. Reply March 19, 2017 / 14:36 PhilipSiteGround Team

    I switched from GoDaddy to SiteGround earlier this year and I'm seriously impressed. Quick WordPress upgrades, https, Cloudflare and now easy switch between versions of PHP. Keep it coming!!!

  21. Reply March 22, 2017 / 10:14 John H. ThompsonSiteGround Team

    Why should I start my new site on PHP 7?

    Where can I find a "Donate" Button template?

    • Reply March 23, 2017 / 06:45 Angelina MichevaSiteGround Team

      The main advantage of PHP 7 is the performance boost it will provide for your website. You can find more details on the benefits of using PHP 7 in our blog post when we added it on our servers: https://www.siteground.com/blog/php-7-with-opcache/. There are already multiple articles and benchmark tests showing speed improvements compared with results of sites using previous 5 versions. In addition, it is a better choice for security reasons because PHP 7 is relatively new version and it will be supported for a longer period of time in terms of bug fixes, security patches, and maintenance updates.

      In case you need a "Donate" button for a WordPress site you can check the plugin directory for a solution: https://wordpress.org/plugins/

  22. Reply March 24, 2017 / 14:02 John H. ThompsonSiteGround Team

    Thanks Angelina for your excellent reply. I tested my site for compatibility with the SiteGround PHP 7 and found that all had no errors but several had from 1 - 4 WARNINGS AFFECTING 1-4 LINES. Here is a sample:

    FILE: /home/bstumc50/public_html/wp-content/plugins/bloom/subscription/createsend-php-4.0.2/class/serialisation.php
    -------------------------------------------------------------------------------------------------------------------
    FOUND 0 ERRORS AND 4 WARNINGS AFFECTING 4 LINES
    -------------------------------------------------------------------------------------------------------------------
    19 | WARNING | Use of deprecated PHP4 style class constructor is not supported since PHP 7.
    50 | WARNING | Use of deprecated PHP4 style class constructor is not supported since PHP 7.
    62 | WARNING | Use of deprecated PHP4 style class constructor is not supported since PHP 7.
    102 | WARNING | Use of deprecated PHP4 style class constructor is not supported since PHP 7.

    Does this mean that I can go ahead and use PHP 7?

    I learned that there are many choices of Donate Buttons so I am I am looking at the best and easiest choice for me.

    • Reply March 25, 2017 / 14:20 Hristo PandjarovSiteGround Team

      As far as I can see, that code is for backwards compatibility. If that's the only warnings you're getting, you should be safe switching to PHP 7.0 directly from the PHP Manager tool in cPanel.

  23. Reply April 28, 2017 / 07:19 Paul MilesSiteGround Team

    I got the comment after the check on one site that the child theme (same as parent) needed to be updated. But if I update the child theme, surely the modifications I've made to the look of the site will be lost, won't they? (Which is the whole point of having a child theme!) Any suggestions?
    The theme is from Elegant Themes - Chameleon.

    • Reply April 29, 2017 / 00:43 Hristo PandjarovSiteGround Team

      Yes, the idea is generally to update the parent theme while keeping all your modifications in the child one intact. However, if there's old code in the child theme that would trigger warnings. I would recommend checking the difference and updating only what needs to be updated.

  24. Reply May 15, 2017 / 03:47 DaisySiteGround Team

    I have Genesis Framework on my website and I´m getting the following warnings:

    FOUND 0 ERRORS AND 6 WARNINGS AFFECTING 6 LINES
    ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    559 | WARNING | Function name "__genesis_return_content_sidebar" is discouraged; PHP has reserved all method names with a double underscore prefix for future use
    574 | WARNING | Function name "__genesis_return_sidebar_content" is discouraged; PHP has reserved all method names with a double underscore prefix for future use
    589 | WARNING | Function name "__genesis_return_content_sidebar_sidebar" is discouraged; PHP has reserved all method names with a double underscore prefix for future use
    604 | WARNING | Function name "__genesis_return_sidebar_sidebar_content" is discouraged; PHP has reserved all method names with a double underscore prefix for future use
    619 | WARNING | Function name "__genesis_return_sidebar_content_sidebar" is discouraged; PHP has reserved all method names with a double underscore prefix for future use
    634 | WARNING | Function name "__genesis_return_full_width_content" is discouraged; PHP has reserved all method names with a double underscore prefix for future use
    ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    Do you know if Genesis is compatible with php7 or not?

    • Reply May 15, 2017 / 06:52 Angelina MichevaSiteGround Team

      Hi Daisy,

      The errors you are reporting are defined in the Genesis framework. We can suggest you contact their support team directly to check for tips on troubleshooting them. You can also ask them if Genesis is compatible with PHP7. It's quite possible other users have already experienced the same issue, so they can advise you on a workaround to resolve it.

  25. Reply May 18, 2017 / 07:03 Graham PorterSiteGround Team

    Is the SG optimizer plugin compatible with multisite? If so do I need to run the compatibilty - Switch to PHP7 on each site?

    • Reply May 22, 2017 / 00:38 Hristo PandjarovSiteGround Team

      Not yet but we're working to make a propper MS compatibility in the upcoming updates. Depending on your site structure, you can manually change the PHP versions of all of your sites or single ones using the PHP Version Manager tool in your cPanel.

Reply

* (Required)