Right now, WordPress recommends being hosted on PHP 7 but it’s not an absolute requirement. However, since adding this as a recommendation more and more people have switched over. Having said that, according to stats provided by W3Techs, usage of PHP 7 currently stands at 3.7% across PHP users and is 8% for WordPress.

So should be be doing more to push WordPress users? Yoast thinks so and is currently forcing a non-dismissible, ‘big, ugly’ admin message to all users who haven’t upgraded.

Before I continue, a reminder that although I work for Automattic, any views here are my own and not that of my employer.

Now that’s out of the way…

PHP 7 provides lots of new features although it’s the increased performance that is the main selling point. However, with just 8% of the WordPress market share it’s obviously not being switched over to quickly. Why? Well, it’s easy to forget that not everyone uses WordPress for commercial reasons, with many people simply running their own personal website and having limited technical knowledge. Many hosts, particularly the cheaper ones, may not have made the leap to PHP 7. Indeed, I use two hosting companies and one of them defaults to PHP 5.4 – you can switch it to PHP 7, though, from their control panel, which is what I’ve done. But how many average users will know how to do this or even particularly want to?

I don’t just have WordPress installed at my host and one of my other software installations broken when I performed the upgrade, as it wasn’t PHP 7 compatible – the threat of something breaking is also very real and even in the WordPress world there are many plugins, for instance, which will not work under PHP 7.

I’ve been following a couple of stories on WP Tavern and have found the attitudes of many frustrating. The first one was that Yoast SEO now displays a banner to nag you to upgrade if you’re not running PHP 7.

Really? That’s going to annoy a lot of Yoast SEO users for sure. Not only that but I was sure this would break the plugin guidelines

Upgrade prompts, notices, and alerts should be limited in scope and used sparingly or only on the plugin’s setting page. Any site wide notices or embedded dashboard widgets must be dismissible.

I reached out to Mika Epstein and she told me that it didn’t, as it was dismissible by upgrading your PHP.  IMHO, this is horribly wrong. Forcing 92% of your users to upgrade PHP (an option that may not be available to a lot of them) before removing (in their own words) a “big, ugly, non-dismissible” banner is wrong.

If I changed one my plugins to display a “big, ugly, non-dismissible” banner asking the user to upgrade to the premium plugin, do you think this would be allowed? I would put money that it wouldn’t. Yet, it can be dismissed – by buying my premium product. Same logic, surely?

Not surprisingly, a thread has appeared in the WordPress.org forum with annoyed users. Even more interesting is that Justin Tadlock, also a member of the WordPress.org administration, tells the Yoast developers that it DOES break the guidelines. He also provides code to users to remove the banner.

Joost himself then responds to Justin to confirm that Mika has agreed that it’s acceptable (for the record, I should now add that Justin is standing firm on this, though).

But, menacingly, after a user tells them that they’re currently unable to upgrade their PHP, he says…

That’s fair and sad at the same time. Mostly because it won’t just be us very soon. It’ll be all of WordPress if I get my way.

There are many people in the community who believe that developers such as Yoast already wield too much power – the fact that that they’ve got away with doing this is already being seen as a demonstration of this and this comment will only make it worse (for the record, I don’t believe this is the case).

As one commenter put it…

There are much better ways for core WordPress to deal with older PHP versions than nagware from smug plugin developers.

I totally agree.

Yet, of those commenting on WP Tavern the overwhelming majority liked the idea., although, they all seemed to be running under PHP 7 so this wouldn’t affect them – I highly suspect the answer would have been different if they hadn’t. And, of course, most of those following WP Tavern are, what I would term, WordPress ‘professionals’.

One even advocates making WordPress PHP 7 only, and damn to those who don’t upgrade…

It’s high time to stop worrying about today’s marketshare and start worrying about tomorrow’s WordPress.

‘Today’s marketshare’, btw, are WordPress users running small businesses and personal blog sites. Changing the name doesn’t change what we’re talking about and, no, WordPress is not about to just cut them off and cast them out – that is not what WordPress does and never will.

There’s no reason the majority of people shouldn’t switch to PHP 7 as soon as it’s available.

And that’s why 8% of users are using it? Or maybe it’s not quite that simple. Or maybe because the people commenting are a bunch of smug, self-righteous developers who are already sat with PHP 7 hosting.

Maybe I’m alone in thinking that between the carrot and stick approach, the former is the best?