Огромный сборник статей от WPTec для начинающих

Мнение

Счастливые разработчики, счастливая экосистема: нематериальные последствия скачка минимальной версии PHP в WordPress

В течение многих лет WordPress очень немного отставал от времени в поддержке версии PHP… мягко говоря.

Тем не менее, легендарная поддержка WordPress версий PHP до 5.2 – версий, которые давно не поддерживаются самим проектом PHP – не была рождена стратегией «мы ненавидим разработчиков» (хотя вас простят за то, что вы так думали, учитывая реакцию этой политики часто достается от разработчиков). Напротив, это было поистине благородным и прагматичным усилием сделать WordPress и, следовательно, публикацию в Интернете, как можно более широко доступной.

Несмотря на реакцию многих разработчиков (и системных администраторов, заботящихся о безопасности), эта стратегия сработала: WordPress поддерживает более 30% Интернета , и значительная часть этих установок находится на неподдерживаемых версиях PHP . Для этих пользователей дело не в том, что им все равно, что они используют неподдерживаемую версию PHP; они просто не знают или не знают, как решить проблему.

Но ветры прогресса дуют, и в 2019 году WordPress планирует внести изменения. Если все пойдет по плану, PHP 5.6 станет минимально поддерживаемой версией в первой половине года, а минимальная версия будет снова переведена на PHP 7 во второй половине 2019 года.

Здесь есть очевидные преимущества с точки зрения безопасности. Самые старые версии PHP, поддерживаемые WordPress сегодня, перестали получать официальные обновления безопасности давным-давно (PHP 5.2 вышел из строя почти 8 лет назад). Улучшение скорости также будет огромным, особенно в PHP 7. Исходя из моего собственного опыта, у меня есть несколько сайтов, которым когда-то требовалось агрессивное кеширование для предотвращения перегрузки сервера. Начиная с PHP 7, они работают быстрее, чем когда-либо, без какого-либо кеширования.

Скорость и безопасность – две наиболее часто упоминаемые (и наиболее измеримые) причины отказа от минимальной версии, но есть и другие, менее ощутимые преимущества, которые будут выходить далеко за рамки разработки ядра WordPress.

Упрощенная поддержка

Хотя разработчики плагинов никогда не были обязаны поддерживать все версии PHP, которые поддерживает ядро ​​WordPress, многие по-прежнему предпочитают это делать. Это понятно: может быть сложно объяснить пользователю, почему он может установить WordPress в определенной среде разработки, но не может установить определенный плагин.

Для плагинов, которые пытались соответствовать поддержке обратной совместимости ядра, это означает тестирование и поддержку до девяти версий PHP: с 5.2 по 5.6 и с 7.0 по 7.3. (Не было PHP 6. Я не буду утруждать себя объяснением скучных причин почему .)

Путем перехода на 5.6 и, в конечном итоге, на какую-то версию PHP 7+, это вдвое сокращает количество версий, которые разработчики будут вынуждены поддерживать. В некотором роде Core, вероятно, продолжит поддерживать эти старые версии (например, через резервные копии безопасности для старых версий WordPress), но разработчики плагинов могут быть уверены, что им это не нужно – и им не нужно чувствовать какое-либо подобие чувство вины за это тоже.

Более счастливые разработчики

Даже разработчики, которым нравится платформа WordPress в целом, вероятно, признают, что это, возможно, не самая захватывающая кодовая база в мире. За последние несколько лет я видел ряд примеров разработчиков, которые когда-то ограничивались WordPress, а теперь перешли на другие фреймворки и языки: Laravel, JavaScript и Go – все это популярные новые дома для экспатов WordPress.

Повышение минимальной версии не изменит эту апатию или исход в мгновение ока, но даст разработчикам повод для волнения. Современные версии PHP (особенно PHP 7) предлагают по-настоящему интересные новые языковые функции, которые позволяют легко писать производительный, хорошо продуманный и интересный код. Я бы даже сказал, что это забавно. Современный PHP содержит много синтаксического сахара , и, хотя вы не должны основывать свою диету на сахаре, он, безусловно, является приятным удовольствием.

Опять же, маловероятно, что ядро ​​начнет использовать эти новые языковые функции в первый же день. Настоящая выгода состоит в том, что разработчики будут чувствовать себя уполномоченными и защищенными в своих решениях начать использовать эти новые возможности и начнут создавать плагины и темы, которые могут заимствовать идеи из лучших практик более широкого сообщества PHP.

Празднование нематериального

Хотя измеримые обоснования для изменения минимальной версии PHP, безусловно, убедительны, я думаю, что также важно признать эти нематериальные активы и действительно отметить их. Использование этих версий создаст волновой эффект в экосистеме, что позволит разработчикам более комфортно писать современный код. Это снизит нагрузку на поддержку и контроль качества для компаний, которым больше не нужно поддерживать 9 различных версий PHP. Это сделает ядро ​​WordPress более привлекательным местом для внесения вклада.

Гутенберг и все современные инструменты и архитектура, которые он привнес, уже вдохновили разработчиков всей экосистемы и принесли огромное количество новых основных участников. Освоение современного PHP – это еще один шаг вперед, и с учетом других изменений на горизонте (таких как переход от SVN к Git , изменения стандартов кодирования и такие проекты, как Tide, которые охватывают новые языки и архитектуры), я надеюсь, что 2019 год станет годом, когда WordPress предоставит не только лучший в своем классе пользовательский интерфейс, но и лучший в своем классе интерфейс для разработчиков.

Рекомендуем прочитать
Мнение

Плагин Delete Me для WordPress помогает владельцам веб-сайтов предоставить право на забвение GDPR

Мнение

Команда Gutenberg наращивает юзабилити-тестирование в WordCamp US

Мнение

Плагин распространителя теперь в бета-версии: новое решение для синдикации контента WordPress от 10up

Мнение

Gutenberg 1.8 добавляет большую расширяемость для разработчиков плагинов

Подпишитесь на рассылку
и будьте в курсе новостей Wordpress

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *