✅ Новости WEB и WordPress, темы, плагины. Здесь мы делимся советами и лучшими решениями для веб-сайтов.

Изящно обрабатывать поддержку версий PHP в WordPress

8

Пока я работаю с WordPress, разговоры (и я использую этот термин вольно) о том, какие версии PHP он должен или не должен поддерживать, не прекращались.

  • Суть в том, что некоторые видят в нем такое же большое и популярное приложение, как WordPress, которое поддерживает так много веб-сайтов на основе CMS, что должно иметь возможность использовать его влияние для создания более инновационных решений.
  • Другие видят, что люди не часто обновляются, используют бюджетные хосты или просто не заботятся (не говоря уже о том, чтобы знать), какую версию PHP они используют.

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

Однако бывают случаи, когда я сталкивался с некоторыми людьми, использующими версии PHP даже ниже 5.3.

Что тогда?

Во- первых, на странице требований WordPress конкретно упоминается об этом:

Если вы находитесь в устаревшей среде, где у вас есть только более старые версии PHP или MySQL, WordPress также работает с PHP 5.2.4+ и MySQL 5.0+, но эти версии достигли официального окончания срока службы.

Так что, чтобы было ясно, он работает на старых версиях PHP, но мы, как разработчики, будем сильно ограничены тем, что мы можем делать с языком. И, как упоминается на странице, не следует игнорировать последствия для безопасности и поддержку «конца жизни» версии языка.

Всякий раз, когда я работаю с плагином или чем-то, что будет работать на WordPress, и я знаю, что это должно работать на разных хостах, я предоставляю минимальный уровень поддержки. Обычно это PHP 5.6.20.

Если среда, в которой будет выполняться проект, не поддерживает это, я сообщу об этом и предотвратю запуск проекта. В контексте плагина, вероятно, лучше всего подключиться к функции register_activation_hook.

Для этого вы можете написать что-то вроде этого:

Конечно, это просто, и на дисплее используется стандартный стиль wp_die, но он тоже работает. Если у вас больше опыта или времени, вы также можете запустить проверки немного по-другому и предоставить свой собственный стиль.

Цель этого поста не в том, как это сделать. Вместо этого пункты таковы:

  • определите, какую версию PHP вы собираетесь поддерживать,
  • сравнить версию PHP, работающую на сервере,
  • отображать сообщение, если версия PHP на сервере меньше той, которую вы будете поддерживать,
  • изящно выйти.

Как вы в конечном итоге отобразите это, зависит от вас, но сути приведенного выше кода должно быть достаточно, чтобы вы начали.

Дополнительные примечания

И если вы действительно хотите углубиться в работу со строками в PHP, я рекомендую статью Карла об обработке строк в PHP.

Источник записи: tommcfarlin.com

Этот веб-сайт использует файлы cookie для улучшения вашего опыта. Мы предполагаем, что вы согласны с этим, но вы можете отказаться, если хотите. Принимаю Подробнее