WordPress 6.1 — последний крупный релиз 2022 года — наконец-то вышел! Этот выпуск является шагом в правильном направлении для полного редактирования сайта, предлагая различные параметры настройки и улучшения в процессе создания контента и создания сайта. Мы рассмотрели некоторые заметные изменения в этом обновлении, с которыми вы можете ознакомиться здесь. Этот пост посвящен изучению улучшений производительности нашей любимой платформы с открытым исходным кодом.
WordPress 6.1 — это коллективные усилия огромной команды разработчиков и участников. Жан Батист Одрас, руководитель группы Triage, поделился некоторыми удивительная статистика о взносах к этому выпуску. Впечатляющий 800 люди по крайней мере от 60 стран а также 180 идентифицированных компаний внес вклад в WordPress 6.1.
В Yoast мы гордимся работой, которую мы проделали, чтобы сделать этот релиз возможным. Из всех компаний, которые внесли свой вклад в 6.1, Yoast занимает второе место с 740 вкладами, сделанными 16 участниками. Сергей Бирюков — член нашей преданной команды разработчиков WordPress — возглавляет список с колоссальными 584 комментариями! Не говоря уже о Bluehost, компании-партнере Newfold Digital, которая также внесла большой вклад в этот релиз, сделав 150 вкладов.
Команда WordPress Core Performance Team проделала невероятную работу, чтобы сделать платформу быстрее в выпуске 6.1. Эта команда, состоящая из представителей Google, 10up, XWP и Yoast, была сформирована в 2021 году для мониторинга, повышения и повышения производительности ядра WordPress и окружающей его экосистемы. Без них эти улучшения были бы невозможны.
Сообщество всегда приветствует улучшения производительности. Мы все знаем о важности хорошей производительности веб-сайта для SEO — быстрый сайт более благоприятен для высокого рейтинга в поисковой выдаче. Это связано с тем, что Google и другие поисковые системы награждают сайты, которые обеспечивают быстрое и плавное взаимодействие с пользователем. Конечно, вам нужен хороший контент для ранжирования. Но среди многих качественных результатов любые небольшие улучшения производительности могут оказаться значительными.
Давайте углубимся в некоторые заметные улучшения производительности в WordPress 6.1!
Содержание
- 1 Огромные улучшения в WP_Query с дополнениями кеширования
- 2 Улучшения REST API
- 3 Улучшения в Cache API
- 4 Улучшения мультимедиа
- 5 Улучшение работоспособности сайта
- 6 Улучшена совместимость с PHP 8x.
- 7 Изменения в процедуре загрузки
- 8 Улучшения производительности в редакторе
- 9 Хотите попробовать другие улучшения производительности?
Огромные улучшения в WP_Query с дополнениями кеширования
добавление кеширования в WP_Query является одним из наиболее значительных улучшений производительности в WordPress 6.1. По сути, каждый раз, когда посетитель запрашивает веб-страницу, его браузер должен сделать запрос к веб-серверу, запрашивая информацию. Сервер должен ответить на этот запрос и получить данные из базы данных (или нескольких) для отправки обратно. Реализуя кэширование в WP_Query
в следующий раз, когда другой посетитель запросит ту же страницу, данные страницы будут извлечены из кеша веб-сайта, а не извлекать данные непосредственно из базы данных.
Эти изменения направлены на сокращение количества запросов к базе данных и ускорение работы сайтов, особенно при использовании постоянного кэширования объектов, такого как Redis или Memcached, поскольку запрос к базе данных не будет выполняться снова, пока кэши не будут признаны недействительными. Благодаря меньшему количеству запросов к базе данных ваши страницы будут загружаться быстрее, что обеспечит лучший пользовательский интерфейс для посетителей.
Это долгожданное и долгожданное улучшение для многих, особенно для разработчиков. Джонни Харрис — участник, который работал над этим улучшением, поделился своим волнением в недавнем твите.
В WordPress 6.1 значительно улучшена производительность базы данных. Запросы к базе данных в WP_Query теперь кэшируются. Тикет, над которым я работал более 5 лет, был объединен. Это должно привести к миллиардам менее повторяющихся запросов к базе данных. https://t.co/ippLh2CM5o
— Джонни Харрис (@thespacedmonkey) 27 сентября 2022 г.
Улучшения REST API
Еще один значительный прирост производительности связан с улучшения REST API. Короче говоря, эти обновления уменьшают количество запросов к базе данных, которые выполняются при каждом запросе REST API, позволяя вашим страницам загружаться быстрее.
Например, WordPress представляет улучшение постконтролер в REST API. При возврате сообщения в ответе REST API пост-контроллер будет запрашивать связанные данные, такие как автор, избранное изображение и текст. Поскольку эти связанные элементы не загружены (готовы к использованию) в кэшах, это может означать, что для каждого поста в ответе REST API будут запросы данных из отдельных баз данных: один для автора, один для избранного изображения и еще один для текста.
Вместо этого в WordPress 6.1 все кэши заполняются одним запросом к базе данных. Это означает, что пост-контроллер в REST API может получать данные из одного запроса к базе данных вместо того, чтобы запрашивать данные из отдельных баз данных, что приводит к меньшему количеству запросов.
Улучшения в Cache API
Cache API получает различные улучшения в этом выпуске. В частности, в этом выпуске для общего пользования доступны несколько функций заполнения частного кэша. WordPress рекомендует авторам плагинов и тем использовать эти функции для повышения производительности своего кода за счет уменьшения количества запросов к базе данных, что повышает скорость загрузки веб-сайта.
Улучшения мультимедиа
WordPress 6.1 автоматически добавит decoding="async"
к атрибутам изображения. Проще говоря, эта функция сообщает браузеру вашего посетителя, что можно загружать изображения немного позже, в пользу другой информации и данных. Это приводит к тому, что страница загружает контент намного быстрее, а также сокращает время рендеринга страницы. Это огромный усилитель производительности для любой веб-страницы, содержащей много изображений. Также хорошо знать, что вы можете удалить эту функцию.
Улучшение работоспособности сайта
WordPress 6.1 представляет два новых Проверка работоспособности сайта для постоянного кэша объектов и кэша страниц.
- Постоянный кэш объектов – Эта новая проверка определяет, использует ли сайт постоянный кэш объектов или нет, и рекомендует его, если это имеет смысл для сайта. Он также ссылается на ресурс поддержки, созданный для проверки. Для хостинг-провайдеров было включено несколько фильтров, чтобы предоставить более конкретные шаги в отношении их среды.
- Кэш полной страницы – Эта новая проверка определяет, использует ли сайт решение для полного кэширования страниц и приемлемо ли время отклика. Он также добавляет пару фильтров для хостинговых компаний, чтобы настроить порог ответа и добавить свои собственные заголовки кеша для обнаружения.
Улучшена совместимость с PHP 8x.
WordPress 6.1 получает важные улучшения совместимости с PHP 8.0 и 8.1. Все это стало возможным благодаря невероятной работе многих разработчиков, особенно Джульетт Рейндерс Фолмер. Некоторые из нас, Йоастеров, тоже внесли свой вклад в это дело, а именно Сергей Бирюков, Каролина и Ари Статопулос!
В выпуске 6.1 продолжались усилия по модернизации кода по обновлению ядра WordPress и набора модульных тестов для PHP 8.0 и 8.1, а также подготовка к PHP 8.2. Ожидается, что версия 8.2 PHP будет выпущена 24 ноября 2022 года. Мы можем ожидать значительных изменений в PHP 8.2, которые могут повлиять на многие темы и плагины.
Большим шагом вперед в этом выпуске является то, что базовые модульные тесты WordPress теперь переходят на PHP 8.1 и 8.2. Хотя полная совместимость с PHP 8.1 и 8.2 все еще находится в стадии разработки, это должно предотвратить появление новых проблем с PHP в ядре WordPress. Все остальные известные проблемы являются уведомлениями об устаревании.
Приятно отметить, что уведомление об устаревании — это не ошибка, а скорее индикатор того, где требуется дополнительная работа для совместимости до PHP 9 (т. е. когда уведомления становятся фатальными ошибками). С уведомлением об устаревании PHP-код продолжит работать, и ничего не сломается.
Изменения в процедуре загрузки
Начиная с WordPress 6.1, send_headers
хук был перемещен немного позже в процедуре загрузки WordPress. Над этим билетом работал наш Сергей Бирюков!
Когда вы запрашиваете страницу, веб-сервер должен отправить обратно некоторые headers
которые содержат техническую информацию о странице, такую как статус ответа. Этому не хватает гибкости, потому что некоторые функции не будут работать, когда headers
отправляются. Двигаясь send_headers
чтобы после того, как WordPress разобрал запрос, эти функции теперь работали правильно. Это изменение может повлиять на разработчиков плагинов, облегчив им управление. header
.
Улучшения производительности в редакторе
В редактор блоков были внесены некоторые оптимизации, чтобы избежать повторных обращений к файловой системе и обработки block.json
файлы. Эти изменения должны повысить производительность загрузки и принести пользу всем сайтам WordPress. Ари Статопулос — еще один член нашей основной команды разработчиков WordPress — отвечал за то, чтобы это произошло!
Хотите попробовать другие улучшения производительности?
Команда WordPress Core Performance создала Плагин Performance Lab чтобы предоставить пользователям ранний доступ к новым модулям производительности, над которыми они работают. Установите его, и вы сможете сами опробовать их последние разработки, увидеть, как они влияют на производительность вашего сайта, и поделиться своими отзывами. Если вы хотите принять еще более активное участие, вы также можете помочь в качестве автора! И если вам интересно узнать больше об улучшениях производительности в 6.1, не забудьте проверить это Ветка руководства по производительности. Он содержит массу полезной информации для разработчиков!