WordPress в 2019 году – что новенького…?

Я не стану повторять сведения о новинках в WowrdPress 5.0 и более… Об этом можно узнать из более авторитетных источников. Расскажу о менее заметных изменениях, а точнее об одном.

Пред-история. В декабре 2018 получаю email от разработчиков WordPress с уведомлением, что с нового (2019) года команда разработчиков WordPress запрещает использовать разработчикам плагинов прямое подключение к файлу wp-load.php, например:

// loadable environment WordPress.
require_once dirname( __FILE__ ) . ‘/../../../../wp-load.php’;

или так, более эстетично:

// loadable environment WordPress.
$uri = $_SERVER[‘REQUEST_URI’];
$params = explode( ‘wp-content’, $uri );
$path = $_SERVER[‘DOCUMENT_ROOT’] . $params[0];
require_once $path . ‘wp-load.php’;

… каюсь – влез с ними в перепалку. Мотивировка команды WordPress – БЕЗОПАСНОСТЬ!!! А если я, как разработчик плагина WatchMan-Site7 – против, то – до свидания. Суть пикировки: использование автономных файлов php в плагине. То есть, любое использование файлов php в плагинах без add_action, do_action – запрещены. И такие ужимки, как описаны мною выше, по подключению в начале автономного файла – среды WordPress – теперь не допускаются. В том числе с – define(‘SHORTINIT’, true);
Вывод: по моему мнению, команда WordPress имеет планы развития своей CMS, в которой нет места этой старой и легкой практики, описанной выше. Подумав и остыв, я говорю: будь я на их месте, я бы поступил также, как они.
Тут нет когнитивного диссонанса. Я за безопасность. Но как она нарушена в моем плагине я пока не вижу. Буду думать…
Но сейчас, я здорово теряю в качестве плагина. Речь идет о функции – console в нижней части основной страницы плагина WatchMan-Site7. Поэтому я решил, (пока я что-то придумаю толковое): в официальном репозитории WordPress хранится версия плагина WatchMan-Site7 по новым правилам, в результате которых console будет выдавать информацию об окружении PHP и только. С моего сайта, в сайдбаре можно скачать “неправильный” вариант плагина, но который выдает в консоли не только все окружение PHP, но и окружение WordPress.

Leave a Reply

Your email address will not be published. Required fields are marked *