WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru

Почему перевод в WordPress такой нагружабельный?

Пользуюсь плагином Query Monitor для тестирования. Обратил внимание, что процесс перевода в WP сильно нагружает. Например, админка с русской локализацией выдаёт в среднем такие данные: 0,79S | 45 912kB | 0,1790S, а вот в оригинальной английской, нагрузка и быстродействие (время отклика) лучше в среднем на 15-40%: 0.49S | 34,721kB | 0.1107S Во фронтенде ситуация практически такая-же.
Разница не хилая получается.
Пытался как-то полечить, не выходит. Надеюсь автор сайта обратит внимание на вопрос. Думаю, если оптимизировать, можно прилично разогнать WP.

Что делал. Как я понимаю, перевод производится функциями __(), _e(), и производными от них функциями с очисткой html и attr. Все они работают на основе translate(). А эта функция по-сути подтягивает глобальную global $l10n. Глянул, что выдаёт эта переменная. На моём тестовом сайте (скажем так, не самом крупном), эта переменная содержит более 107000 строк сложного ассоциативного массива, содержащего объекты и массивы.

Я предполагаю, что тормоза связаны с тем, для транслита система должна обойти все 107000 строк в поиске перевода с оригинального английского на текущий язык WordPress. Так как, функция translit() работает без объектного кеша, получается, что если на странице 100-150 строк переводимого текста (а для админки это вообще норма), PHP обрабатывает 107 тысяч строк 100-150 раз.

0
Alexandrov Yan
месяц назад 14

Нет ответов на этот вопрос.

    На вопросы могут отвечать только зарегистрированные пользователи. Вход . Регистрация