Верх страницы
Обложка к записи Оптимизация WordPress путём отключения переводов для REST API
Время для прочтения: 0 мин. 6 сек.

Оптимизация WordPress путём отключения переводов для REST API

Если вы используете на своём сайте WordPress REST API и вам НЕ нужны там переводы, например, у вас на его основе реализованы счётчики посещаемости, то ускорить такие запросы, а как следствие и сам сайт, можно при помощи отключения переводов для запросов REST API.

Сниппет до безобразия прост. «Отделяем мух от котлет» и выключаем все переводы:

if ( defined( 'REST_REQUEST' ) && REST_REQUEST ) {
    add_filter( 'override_load_textdomain', '__return_true' );
}

Код необходимо разместить в папке /wp-content/mu-plugins/disable-rest-translations.php, чтобы он всегда был включен и стартовал как можно раньше.

Автор: Кобзарёв Михаил

Русский разработчик с 20-ти летним стажем. Работаю с PHP, ООП, JavaScript, Git, WordPress, Битрикс, Joomla, Drupal, Opencart, DLE, Laravel, Moonshine, SuiteCRM.

Оптимизирую сайты под Google Page Speed, настраиваю импорты для больших магазинов на WooCommerce + WP All Import. Пишу плагины на заказ. Все мои услуги.

Веду блог о разработке, дайджест в телеграмме и в ВК.

Вы всегда можете нанять меня.

Комментарии
Подписаться
Уведомить о
guest

7 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
Максим
Максим
2 лет назад

В сниппете ошибка, одна скобка лишняя

Андрей
Андрей
1 год назад

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

Андрей
Андрей
1 год назад
Ответить на  Андрей

Вернее когда проверяем сразу , и вставляем в functions, выполняется после хука setup_theme. Но тогда еще нет константы REST_REQUEST , и фильтр не поставится , если проверку сделать прямо в фильтре , то тоже , на момент вызовов функции переводов , у нас тоже не определена еще константа REST_REQUEST , и переводы вновь не будут отключены для рест запроса . Тут нужно иначе проверять на рест запрос .

Андрей
Андрей
1 год назад
Ответить на  Андрей

У меня отрабатывыает так https://gist.github.com/andxbes/3be83aa4a9064d2455445008e6ae29fb

Андрей
Андрей
1 год назад
Ответить на  Андрей

кстати REST_REQUEST будет обявлен в функции rest_api_loaded после rest_api_init и по логам все получают переводы до этого хука .

Предыдущая запись

Давайте дружить
в Telegram

Авторский блог вашего покорного слуги в Telegram про web, программирование, алгоритмы, инструменты разработчика, WordPress, Joomla, Opencart, Laravel, Moonshine, фильмы и сериалы