Requirement of PHP version being greater than 7.1.3

Lately, I have been reading quite a bit of good things about Sage, and that it incorporates one of the best approaches towards WordPress theme development. So I thought I’d start learning Sage.
I also noticed that one of the prerequisites is ‘PHP >= 7.1.3 (with php-mbstring enabled)’

May be this is a stupid question, but I thought I’d ask anyway. Is this requirement only for the development environment? Or does it apply to the production/hosting environment too?

I mean, there are still a huge number of hosting providers out there who are still stuck on PHP versions < 7, and often it is not in our hands to control the hosting environment. How does the theme behave when installed on such a server. Does it work fine?
How do you guys take care of that?

Also, is there anyone who has submitted a theme built on Sage to the official repository?
I am interested to know that because Sage’s structure seems to be a bit different, and it also involves a templating engine. So, I am curious to know how treats it?

This is the requirement for all environments that Sage finds itself in.

In an incompatible environment Sage should spit an error.

I think if someone is alright with using outdated versions of PHP, then they should be fine with using outdated versions of Sage that still support those PHP versions.

PHP 5.6 (and 7.0) will be EOL by the turn of next year:

Roots has always pushed the bar with keeping things up to date — not just for the sake of doing so, but because it means more secure, better sites. Consider their tagline: “Modern WordPress Development Tools.”

If you take a look around on the forum, I do believe there have been a few who have done so.

Consider their tagline: “Modern WordPress Development Tools.”

Agreed. In fact, it is this stress (on using modern tools) by Roots team, that has got me interested in Sage.
I hope to learn a lot while diving in with Sage.

My concern was whether this limits the penetration of Sage to a wider user-base because as I said earlier many hosting providers are still stuck in the stone ages.
And even if they have PHP version requirements satisfied, I don’t know whether they would have php-mbstring enabled too. (Have to admit I hadn’t;t heard about php-mbstring ever before)

Anyways, I got your point. I guess the only solution is to mention the PHP requirements very prominently to the potential users.

If you take a look around on the forum, I do believe there have been a few who have done so.

Great, I will try to find more details about them.

Thanks for chiming in.

1 Like

phpinfo() should tell you. In my experience, a lot of times it is already enabled.

My perception is that “wide adoption” is not necessarily a primary goal of the Roots project in the sense that support for outdated servers is counter to their mission. By requiring up-to-date software, Roots encourages developers to pressure providers to update their software to more secure, more performant versions. Provider offerings should be driven by developer needs, not the other way around.


Provider offerings should be driven by developer needs, not the other way around.

Agreed that is the way how things should be. Unfortunately, it does not happen all the time though.
For example, web developers still have to slog to make websites compatible to the wildly outdated and incompatible versions of I.E.
High time, that developers start taking up the stand of not supporting such primitive software.
I, on my part, clearly explain to the client that I won’t be supporting outdated versions of IE (IE, 9, 10, 11).
Guess, I will have to take the same root for PHP too :slight_smile: