Как ускорить WordPress?
11 способов ускорить WordPress
Содержание
- 1 11 способов ускорить WordPress
- 2 Почему вы должны ускорять WordPress?
- 3 Как проверить время загрузки вашего сайта?
- 4 1. Выберите лучшего хостинг-провайдера
- 5 2. Используйте WordPress темы/фреймворки
- 6 3. Уменьшите размер изображений
- 7 4. Минимизируйте файлы JS и CSS
- 8 5. Используйте кэширование на сайте
- 9 6. Используйте CDN
- 10 7. Включите сжатие GZIP
- 11 8. Очистка базы данных WordPress
- 12 9. Деактивируйте или удалите плагины
- 13 10. Сведите внешние сценарии к минимуму
- 14 11. Отключите пингбэки и трекбэки
- 15 Ускорение WordPress — 18 советов по оптимизации сайта
- 16 Инструменты для измерения скорости сайта
- 17 Важность скорости работы сайта в 2018 году
- 18 Техники ускорения WordPress, актуальные в 2018 году
- 19 1.Выбор качественной темы/фреймворка
- 20 2. Настройка кэширования WordPress
- 21 3. Подключение CDN (Content Delivery Network)
- 22 4. Оптимизация базы данных WordPress
- 23 5. Оптимизация изображений с помощью сжатия
- 24 6. Сжатие Gzip/Brotli
- 25 7. Уменьшение количества плагинов WordPress
- 26 8. Оптимизация производительности веб-шрифтов
- 27 9. Оптимизация иконок Font Awesome
- 28 10. Lazy Load для изображений, видео и Disqus
- 29 11. Минификация и объединение CSS и Javascript файлов
- 30 12. Уменьшение количества HTTP запросов
- 31 13. Отключение хотлинков
- 32 14. Отключение Pingback и Trackback
- 33 15. Задание размеров изображений
- 34 16. Решение проблемы медленной загрузки admin-ajax.php
- 35 17. Настройка MySQL сервера
- 36 18. Выбор качественного хостинга для WordPress
Сегодня я опять затрону тему о том, как ускорить ваш сайт, созданный на самой популярной CMS WordPress.
Как ускорить WordPress, безусловно, является горячей темой в наши дни. К счастью, существует множество методов, которые вы можете использовать для выполнения этой работы. Итак, мое намерение состоит в том, чтобы перечислить каждый трюк, который я знаю, что может сделать ваш сайт WordPress намного быстрее.
Почему вы должны ускорять WordPress?
Есть много причин, которые вызывают тревогу, некоторые из которых могут даже вызвать серьезные проблемы для вас:
- Поисковые системы (например, Google) оценивают сайты с более высокой скоростью загрузки, чем сайты с медленной загрузкой. Так что, если вы хотите улучшить свои позиции в поисковой выдаче, улучшение скорости должно быть одним из ваших приоритетов.
- Исследования показали, что скорость загрузки сайта более 2 секунд обычно приводит к тому, что около 47 процентов посетителей закрывают и уходят с сайта. Таким образом, чтобы заинтересовать примерно половину ваших посетителей, вы должны ускорить свой WordPress.
- Интернет-покупатели — самые нетерпеливые посетители: они ожидают, что страница загрузится в течение секунды. Итак, если вы работаете с магазином электронной коммерции на WordPress, вам лучше подготовиться к серьезным улучшениям, чтобы ваш бизнес мог быть более прибыльным.
Как проверить время загрузки вашего сайта?
Прежде всего, вам нужно проанализировать текущее время загрузки вашего сайта. Имейте в виду, что эта скорость может отличаться от страницы к странице, так как она зависит от различных факторов, а именно:
- размер этой самой конкретной страницы,
- сколько запросов генерируется,
- кэшируется ли она или нет,
- и, наконец, какой контент (статический или динамический) она размещает.
Домашняя страница веб-сайта обычно используется в качестве эталона для тестирования времени загрузки. Для того, чтобы проверить скорость веб-сайта, следующие три инструмента широко используются в интернете:
- WebPageTest.org
- Tools.Pingdom.com
- PageSpeed Insights (этот на самом деле не сообщает о времени загрузки страницы, но выделяет элементы, которые вы можете настроить для ускорения WordPress)
Ладно, самое время начать говорить о делах! Вот 11 способов ускорения WordPress:
1. Выберите лучшего хостинг-провайдера
Основным фактором, который влияет на скорость вашего сайта WordPress — это хостинг. Это может показаться хорошей идеей, чтобы разместить свой новый сайт на общем хостинг-провайдера, который предлагает «неограниченную» пропускную способность, пространство, электронную почту, домены и многое другое. Тем не менее, точка, которую мы обычно упускаем в отношении этого предложения, заключается в том, что среды виртуального хостинга не обеспечивают хорошее время загрузки в часы пикового трафика, и большинство из них не обеспечивают 99-процентную бесперебойную работу в любой месяц.
Виртуальный хостинг, как правило, обеспечивает более низкую производительность, потому что вы разделяете одно и то же серверное пространство с бесчисленными другими веб-сайтами, и неизвестно, сколько ресурсов используют другие. Кроме того, вы точно не знаете, насколько хорошо оптимизированы серверы.
К счастью, индустрия веб-хостинга продвинулась вперед с технологиями, и цены на облачных хостинг-провайдеров уменьшились с течением времени. В настоящее время вы можете купить выделенные облачные серверы у TimeWeb, Shneider-Host и даже у Google Compute Engine по номинальной цене. Тем не менее, настройка этих серверов может быть сложной задачей, поскольку вам необходимо настроить сервер с нуля. Есть провайдеры веб-хостинга, такие как Cloudways, которые делают задачу настройки оптимизированных облачных серверов такой же простой, как щелкнуть и запустить.
2. Используйте WordPress темы/фреймворки
WordPress темы с большим количеством динамических элементов, слайдеров, виджетов, социальных иконок и многих других блестящих элементов очень привлекательны для глаз. Но помните об этом: если у них слишком много элементов и большие размеры страниц, то они определенно заставят ваш веб-сервер принять удар.
Лучший вариант здесь — использовать легкие темы, такие как темы WordPress по умолчанию. Тема «twenty fifteen» — это всегда хороший способ начать блог. Для многофункционального веб-сайта вы также можете выбрать тему, которая использует хорошую платформу, такую как Bootstrap или Foundation. Например, все темы, которые делаю я для своих клиентов построены на Bootstrap, что позволяет ускорить Вордпресс.
3. Уменьшите размер изображений
Изображения являются основными участниками увеличения размера данной веб-страницы. Хитрость заключается в том, чтобы уменьшить размер изображения без ущерба для качества.
Если вы вручную оптимизируете изображения с помощью расширения Chrome PageSpeed Insights, Photoshop или любых других инструментов, процесс займет много времени. К счастью, есть плагины, доступные практически для всего, о чем вы можете думать, включая оптимизацию изображений. Стоит упомянуть:
Использование любого из вышеупомянутых плагинов на вашем WordPress сайте значительно уменьшит размеры изображений, тем самым улучшая скорость вашего сайта.
4. Минимизируйте файлы JS и CSS
Если вы запускаете свой сайт через Google PageSpeed Insights tool, вы, вероятно, будете уведомлены о минимизации размера ваших CSS и JS файлов. Это означает, что за счет уменьшения количества вызовов CSS и JS и размера этих файлов можно повысить скорость загрузки сайта.
Кроме того, если вы знаете все о своей WordPress теме, вы можете изучить руководства, предоставляемые Google и сделать некоторые исправления своими руками. Если нет, то есть плагины, которые помогут вам достичь этой цели: наиболее популярным из которых является Autoptimize, который может помочь в оптимизации CSS, JS и даже HTML вашего сайта.
5. Используйте кэширование на сайте
Плагины кэширования в WordPress (например, W3 Total Cache) существуют уже давно, что упрощает сложные задачи добавления правил кэширования к элементам вашего сайта. Сочетание таких плагинов с передовыми механизмами кэширования, такими как Varnish, поможет вам улучшить скорость загрузки вашего сайта и в конечном итоге значительно ускорить WordPress.
6. Используйте CDN
Люди, которые посещают ваш сайт принадлежат к различным местам в мире, и само собой разумеется, скорость загрузки сайта будет отличаться, если посетители расположены далеко от того, где размещен ваш сайт. Существует множество CDN (сетей доставки контента), которые помогают свести скорость загрузки сайта к минимуму для посетителей из разных стран. CDN хранит копию вашего веб-сайта в различных центрах обработки данных, расположенных в разных местах. Основная функция CDN заключается в обслуживании веб-страницы посетителю из ближайшего возможного места. Cloudflare и MaxCDN являются одними из самых популярных сервисов CDN.
7. Включите сжатие GZIP
Сжатие файлов на локальном компьютере может сэкономить много места на диске. Аналогично, для интернета мы можем использовать сжатие GZIP. Этот маневр позволит резко сократить использование полосы пропускания и время, необходимое для получения доступа к вашему сайту. GZIP сжимает различные файлы, так что всякий раз, когда посетитель пытается получить доступ к вашему сайту, их браузеру сначала придется распаковать сайт. Этот процесс в значительной степени снижает использование полосы пропускания.
Вы можете использовать либо плагин, как оптимизация скорости gzip Ninja или добавить следующие коды в вашем файле .htaccess.
8. Очистка базы данных WordPress
Удаление нежелательных данных из базы данных сведет ее размер к минимуму, а также поможет уменьшить размер резервных копий. Также необходимо удалить спам-комментарии, фейковых пользователей, старые черновики вашего контента и, возможно, даже нежелательные плагины, а также темы. Все это уменьшит размер ваших баз данных и веб-файлов, и тем самым ускорит ваш WordPress.
9. Деактивируйте или удалите плагины
Сохранение нежелательных плагинов на ваших сайтах WordPress добавит огромное количество мусора в ваши веб-файлы. Кроме того, это также увеличит размер вашей резервной копии и поставит подавляющее количество нагрузки на ресурсы сервера во время создания резервных копий файлов. Лучше избавиться от плагинов, которые вы не используете, а также искать альтернативные методы использования сторонних сервисов для автоматизации или планирования задач (например, совместное использование ваших последних сообщений в социальных сетях).
IFTTT или Zapier — это два веб-сервиса, которые помогают автоматизировать такие задачи и уменьшить нагрузку на ваш сайт и ресурсы сервера.
10. Сведите внешние сценарии к минимуму
Использование внешних скриптов на веб страницах добавляет большой кусок данных к общему времени загрузки. Таким образом, лучше всего использовать небольшое количество скриптов, в том числе только основные, такие как инструменты отслеживания (например, Google Analytics) или системы комментариев (например, Disqus).
11. Отключите пингбэки и трекбэки
Пингбэки и трекбэки — это два основных компонента WordPress, которые предупреждают вас всякий раз, когда ваш блог или страница получает ссылку. Это может показаться полезным, но у вас также есть такие вещи, как инструменты веб-мастеров Google и другие услуги для проверки ссылок вашего сайта.
Сохранение пингбэков и трекбэков также может создать нежелательную нагрузку на ресурсы сервера. Это так, потому что всякий раз, когда кто-то пытается подключиться к вашему сайту, он генерирует запросы от WordPress вперед и назад. Эта функция также широко используется при таргетинге на веб-сайт с помощью DDoS-атак.
Вы можете отключить все это в «WP-Admin — Настройки — Обсуждение». Просто снимите флажок «Разрешить оповещения с других блогов (уведомления и обратные ссылки) на новые статьи». Это поможет вам ускорить WordPress еще немного.
Подведем итог нашей статьи
Самое большое преимущество снижения времени загрузки вашего веб-сайта заключается в том, что оно значительно улучшит работу ваших посетителей. Дело остается тем же, независимо от того, используют ли они мобильные устройства или ПК. Кроме того, он также улучшит ваше ранжирование в результатах поиска. В конце концов, снижение пропускной способности вашего хостинга и более высокая скорость загрузки сайта на стороне клиента принесет вам пользу как в краткосрочной, так и в долгосрочной перспективе.
Если вы еще не запустили блог, смотрите это руководство: Руководство для первого сайта. Это отличный раздел, который предлагает пошаговое руководство по созданию личного или профессионального блога.
zacompom.ru
Ускорение WordPress — 18 советов по оптимизации сайта
WordPress – отличная CMS для сайта, но она довольно медленная из коробки, если ее не оптимизировать правильно. В этом руководстве, составленном KeyCDN, мы рассмотрим основные способы оптимизации и ускорения сайта на WordPress.
WordPress также одна из самых популярных CMS для сайтов компаний. Более половины сайтов, на которых можно определить систему управления контентом, работают на WordPress. А это более чем 74 миллиона сайтов.
По данным W3Techs, WordPress используется на 60% сайтов с известной CMS. Это 31,6% всех сайтов в мире.
Инструменты для измерения скорости сайта
Один из самых важных инструментов при работе над оптимизацией скорости сайта — тестировщики скорости загрузки (page speed tool). Мы рекомендуем проводить измерения перед началом работ по оптимизации, и в процессе, после каждого внесенного изменения. Это даст лучшее понимание, изменения каких параметров оказывают положительное или отрицательное влияние на производительность.
Есть много инструментов для проверки скорости загрузки сайта, среди которых KeyCDN, который предлагает тесты из 16 точек по всему миру.
Важность скорости работы сайта в 2018 году
В настоящее время скорость сайта влияет не только на позиции в поисковой выдаче, но также обеспечивает лучший пользовательский опыт и повышает конверсию. Еще в 2010 году Гугл сообщил, что скорость загрузки сайта влияет на позицию сайта в результатах поиска. В 2018 году скорость мобильной версии сайта также влияет на ранжирование.
Таким образом, если вы хотите увеличить органический трафик на сайт с десктопной и мобильной версии, вы должны уделить внимание правильной оптимизации сайта на WordPress.
Кроме того, в случае, если у вас интернет-магазин, более высокая скорость работы сайта может увеличить конверсию и принести дополнительную прибыль. Посмотрим на примере.
Сервис Google Impact calculator позволяет оценить примерный уровень роста годового оборота в зависимости от скорости загрузки сайта.
Например, если вы ускорите загрузку сайта с 2,2 секунд до 1,4 секунд, при трафике 200 000 уников в месяц, среднем чеке $50 и конверсии 3%, вы можете получить дополнительно $146 000 годового дохода.
Техники ускорения WordPress, актуальные в 2018 году
Рассмотрим наиболее эффективные рекомендации по оптимизации скорости сайта на WordPress, которые помогут уменьшить время загрузки страницы.
1.Выбор качественной темы/фреймворка
Каждый сайт на WordPress сделан на основе какой-то темы или фреймворка-пейджбилдера. Они обычно содержат много лишнего избыточного функционала. У разработчиков тем разные подходы к созданию своих продуктов, и поэтому темы для WordPress значительно отличаются друг от друга. Например, дефолтные темы WordPress типа Twenty Seventeen обычно сделаны довольно качественно и работают быстро.
Нужно очень тщательно выбирать темы для покупки на маркетплейсах типа ThemeForest или Creative Market. Большинство тем там сделано довольно некачественно, потому что разработчики гонятся за универсальностью и пихают в тему все подряд. Это дает им больше продаж, но темы в итоге выходят тяжелыми и медленными. Зато с красивым интерфейсом покраски кнопок из админки. На таких площадках важнее найти адекватных разработчиков, и пользоваться их темами. Например, Total WordPress theme от ребят из WPExplorer неплохая тема. Имея довольно богатый функционал, сайт на ней, наполненный контентом, загружается в пределах 800 мс.
Фреймворки Thesis Theme framework и Genesis тоже имеют хорошую репутацию, благодаря своей скорости и качеству кода.
2. Настройка кэширования WordPress
Кэширование — еще один мощный инструмент в борьбе за скорость загрузки страниц сайта на WordPress. Кэширование позволяет хранить страницы и записи как статичные файлы, которые быстро отдаются пользователю, не создавая нагрузку на сервер и не тратя время на динамическое формирование страниц.
Кэширование на WordPress организуется с помощью плагинов, которые создают кэш страниц на сервере и в браузере клиента.
Плагины кэширования WordPress
Для кэширования сайта на WordPress чаще всего используются следующие плагины:
- Cache Enabler
- W3 Total Cache
- WP Super Cache
- WP Rocket
Кэширование в браузере – включаем Expire Headers в WordPress
Усилить эффект браузерного кэширования ресурсов можно с помощью технологии leverage browser caching, добавив заголовки expire. Они говорят браузеру, загружать конкретные файлы с сервера или взять их из кэша браузера. Это позволит уменьшить количество запросов к серверу. Некоторые кэширующие плагины WordPress позволяют включить expire headers в настройках, но эту функцию также можно активировать, добавив следующий код в файл .htaccess .
Кэширование WordPress на сервере
Кроме того, что можно включить кэширование сайта на WordPress в браузере, не лишним будет настроить серверное кэширование на хостинге. Это обычно делается на высоконагруженных сайтах. Эффективным инструментом кэширования на сервере является Varnish, особенно в комбинации с кэширующим плагином и подключением CDN.
Предзагрузка (prefetch) популярных доменов
Предварительная загрузка во многом похожа на кэширование, в том плане, что мы говорим браузеру проверить настройки DNS нужных доменов еще до того, как они будут запрошены. Браузер сканирует страницу и запрашивает заданные адреса, которые еще не закэшированы, и в нужный момент они загрузятся быстрее.
Активировать прездагрузку (prefetch) в WordPress можно путем добавления следующего кода в файл header.php между тэгами и . Это неблокирующий загрузку страницы процесс, и он исполняется, когда есть возможность. Приведем некоторые примеры:
Предварительная загрузка шрифтов Google
Предварительная загрузка Google Code (jQuery)
Предварительная загрузка Google Analytics
Remove Query Strings – Удаляем строку запроса со статических ресурсов
Эта настройка может дать положительный эффект, так как окончания файлов типа ?ver=4.7 могут привести к проблемам с кэшированием статики, особенно при использовании прокси и CDN. Удалить Query Strings в WordPress можно несколькими способами.
- Внести следующие изменения в файл functions.php – вставить функцию, которая удалит query strings.
- Если вы используете кэширующий плагин типа W3 Total Cache, для удаления query strings в нем может быть соответствующая настройка.
- Существуют специальные плагины для WordPress, основная функция которых заключается в удалении query strings, такие как Query Strings Remover и Remove Query Strings From Static Resources.
3. Подключение CDN (Content Delivery Network)
Использование CDN может принести пользу любому сайту, независимо от его размера и количества посетителей. Content Delivery Network загружает статические файлы вашего сайта (CSS, Javascript, изображения) с ближайшего к пользователю сервера, снижая время загрузки сайта. Кроме скорости, использование CDN положительным образом влияет на пользовательский опыт посетителей сайта, снижает показатель отказов, увеличивает время, проведенное на сайте, конверсию и даже SEO.
Для использования CDN на WordPress существуют специальные плагины, как правило, провайдер CDN разрабатывает плагин под свою сеть, например, KeyCDN или Селектел.
Загружайте через CDN все, что можно
Убедитесь, что вы грузите с CDN максимально возможное количество файлов, даже самые мелкие, типа фавиконки.
На примере ниже можно видеть, как 100% статики грузятся с CDN
Граватары также можно грузить с CDN.
4. Оптимизация базы данных WordPress
Если не оптимизировать базу данных, WordPress может начать работать медленнее. Среди способов оптимизации БД WordPress удаление и ограничение или отключение редакций записей, удаление старых ревизий, и соблюдение ограничения на 100 страниц в WordPress.
Отключение и лимит ревизий постов WordPress
WordPress создает боьшое количество редакций постов во время их написания. Если за этим не следить, база данных забьется тысячами редакций записей, что отрицательно скажется на скорости ее работы.
Для решения этой проблемы можно ограничить количество сохраняемых ревизий или вообще отключить их.
Отключение редакций постов WordPress
Для того, чтобы отключить создание редакций записей в WordPress, достаточно добавить следующий код в файл wp-config.php . Он изменит интервал автосохранения записей с 60 секунд до 5 минут и отключит создание ревизий. По умолчанию останется только одна предыдущая редакция записи.
Если вы не хотите ковыряться в коде, можно сделать то же самое с помощью бесплатного плагина Disable Post Revision.
Ограничение количества редакций записей в WordPress
Для того, чтобы ограничить количество редакций записей в WordPress, достаточно добавить следующий код в файл wp-config.php . Он изменит интервал автосохранения записей с 60 секунд до 5 минут и установит количество сохраняемых редакций до трех. Можно задать количество ревизий любым числом.
Удаление старых редакций записей из базы данных WordPress
После отключения или ограничения количества редакций нужно почистить базу данных от старых сохраненных ревизий. Для этой цели можно временно установить плагин WP-Optimize.
Этот плагин позволит удалить все ненужные редакции записей, автосохранение черновиков, спам, неодобренные комментарии, временные настройки и прочий мусор. В новой версии плагина он позволяет включить автоочистку по заданному расписанию.
Следите за ограничением на 100 страниц в WordPress
При планировании структуры сайта стоит помнить о том, что WordPress не был предназначен для работы с большим количеством страниц, больше 100. При наличии большого количества страниц на сайте в админке начнутся тормоза из-за нехватки памяти. Впрочем, на фронтенде это никак не отразится. Упоминание об этом ограничении есть в документации WordPress.
Страницы имеют иерархию. И любые действия со страницами требуют загружать целое дерево шаблонов на бэкенде, чтобы определить взаимосвязь страниц друг с другом. Когда же вызывается запись, она никак не связана с другими записями, кроме даты, и для ее обработки не требуется загружать большое количество данных. Стоит помнить, что WordPress планировался как платформа для блогов, а не для многостраничных сайтов.
Решением этой проблемы может быть использование кастомных типов постов. Для этой задачи можно использовать бесплатный плагин Post Type Switcher, если нужно большое количество страниц конвертировать в пользовательские типы записей.
5. Оптимизация изображений с помощью сжатия
На современных сайтах в среднем 56% веса страниц составляют изображения. Следовательно, оптимизация изображения и их сжатие должны быть приоритетной задачей при ускорении сайта на WordPress.
В зависимости от конкретного файла, изображение можно сжать до 70% от первоначального размера. Сжимать изображения можно на этапе подготовки их к публикации в графическом редакторе, либо уже на сайте с помощью специальных плагинов сжатия изображения для WordPress.
6. Сжатие Gzip/Brotli
Gzip это еще одна технология сжатия, которая используется для сжатия страниц, стилей и скриптов на уровне сервера перед отправкой браузеру. Проверить, работает ли сжатие Gzip на сайте WordPress можно с помощью сервиса Check GZIP Compression.
GZIP позволяет сохранить от 50 до 80% трафика, тем самым значительно ускорив скорость загрузки сайта. – Check GZIP compression
Настроить сжатие на сервере Apache можно, добавив следующий код в файл .htaccess
Если вы используете веб-сервер Nginx, сжатие активируется путем включения следующих инструкций в файл настроек nginx.conf .
Кроме этого, можно также внедрить технологию сжатия Brotli на WordPress. Brotli это новый алгоритм сжатия, разработанный Google. Brotli показывает значительное преимущество перед Gzip при сжатии файлов.
7. Уменьшение количества плагинов WordPress
Распространенной причиной тормозов WordPress является большое количество установленных плагинов, которые нагружают сервер. Для поддержания оптимальной производительности сайта на WordPress следует ограничиться минимально возможным количеством плагинов.
Есть плагины, которые позволяют оценить степень влияния установленных плагинов на скорость работы сайта, но они устарели и не поддерживаются разработчиками. Это плагины P3 Plugin Performance Profiler и WP Performance Profiler
При установке новых плагинов на сайт с WordPress следует обратить внимание на дату последнего обновления плагина и на совместимость с текущей версией WordPress. Если плагин давно не обновлялся, вы увидите следующее предупреждение:
Рекомендуется воздержаться от использования подобных плагинов на сайте, поскольку они больше не поддерживаются и могут привести к проблемам с производительностью и безопасностью. Кроме того, если есть возможность реализовать необходимый функционал без использования плагина, посредством редактирования кода, это следует сделать.
Качество плагинов также может значительным образом повлиять на производительность сайта на WordPress. Не все плагины пишутся профессиональными разработчиками, и следует сравнить несколько плагинов, которые решают одинаковую задачу, с целью выбрать самый быстрый и оптимизированный из них.
8. Оптимизация производительности веб-шрифтов
По данным исследований, в 2018 году 57% сайтов используют не стандартные шрифты, это рост на 850% по сравнению с 2011 годом. Очень важно использовать только те шрифты, которые нужны, в форматах WOFF и WOFF2. Сервисы типа Typekit base64 преобразуют шрифты во все возможные форматы, замедляя тем самым скорость загрузки сайта.
По результатам тестов, шрифты Google показывают хороший уровень производительности, потому что используют CDN для загрузки и предоставляются только в форматах WOFF. Open Sans — самый быстрый из 10 популярных шрифтов.
Важно также помнить о разнице между шрифтами Google и безопасными веб шрифтами, она может достигать 200 мс. Это преимущественно из-за скорости загрузки и дополнительных HTTP запросов к серверам Google.
Еще одной возможностью оптимизации может быть перемещение шрифтов Google на вашу CDN. В сравнительных тестах загрузка шрифтов из своей CDN происходит быстрее, чем из Google, потому что производится меньше HTTP запросов, поисков DNS, и дает больший контроль над кэшированием.
Можно пойти еще дальше и поместить все шрифты в отдельный css файл и хранить их в localStorage. Браузерный кэш сбрасывается довольно часто, особенно на мобильных устройствах. А сохраняя файлы в localStorage, можно хранить их у пользователя постоянно. Smashing Magazine сэкономили 700 мс при загрузке страницы с помощью localStorage.
Рекомендуем использовать сервис localFont tool от Jaime Caballero. Можно перетащить свой шрифт в окно и конвертировать его в CSS и Javascript для размещения на сайте WordPress.
9. Оптимизация иконок Font Awesome
Если вы используете Font Awesome, можно ускорить их загрузку, поместив файлы на CDN. Если вы используете тему WordPress с Font Awesome, ее придется немного доработать.
Хранение Font Awesome на своей CDN уменьшит количество запросов к серверу и поисков DNS.
10. Lazy Load для изображений, видео и Disqus
Lazy loading – это технология загрузки объекта только в тот момент, когда он нужен. В случае WordPress это означает, что элемент не загружается до тех пор, пока пользователь не прокрутит страницу до него. Lazy load можно применить для любых элементов страницы, от изображений и видео, до блока комментариев Disqus.
Отложенная загрузка изображений
Для отложенной загрузки картинок на сайте WordPress можно использовать хороший бесплатный плагин BJ Lazy Load. Он заменяет все изображения, ярлыки и фреймы на странице плейсхолдерами и загружает контент по мере приближения его к границе окна при прокрутке пользователем. Это также работает и для текстовых виджетов. Если вы пользуетесь плагином WP Rocket, в нем есть настройки для включения Lazy Load.
Отложенная загрузка видео
Для отложенной загрузки видео на WordPress можно использовать бесплатный плагин Lazy Load for Videos. Он заменяет встроенное видео Youtube и Vimeo кликабельным изображением превью. Если у вас на сайте много видео, этот плагин поможет значительно улучшить скорость загрузки страниц.
Отложенная загрузка Disqus
Disqus – это очень удобная система комментирования, которая очень хорошо борется со спамом. Но стандартный плагин Disqus создает более 10 HTTP запросов, которые могут значительно замедлить загрузку страницы. Чтобы решить эту проблему, разработчик James Joel сделал плагин Disqus Conditional Load, который откладывает загрузку Disqus. Он в том числе не вредит SEO, то есть поисковые системы все равно могут индексировать комментарии.
11. Минификация и объединение CSS и Javascript файлов
Минификация и объединение файлов стилей и скриптов может сыграть значительную роль в ускорении сайта на WordPress.
Минификация
Минификация файлов означает удаление лишних символов из файлов HTML, Javascript, и CSS, таких как:
- Пробелы
- Переносы строки
- Комментарии
- Разделители блоков
Эта оптимизация уменьшает количество загружаемого кода и положительно влияет на скорость сайта.
Объединение (конкатенация)
Конкатенация это процесс объединения нескольких файлов стилей или скриптов в один, для того чтобы минимизировать количество HTTP соединений. Иногда это может дать положительный эффект, но иногда может замедлить загрузку страницы, из-за того, что приходится загружать большие файлы. Эффект от этой функции нужно тестировать в каждом конкретном случае.
Для минификации и конкатенации файлов в WordPress можно использовать плагины, например, WP Rocket
Большинство плагинов кэширования для WordPress имеет настройку для включения этих функций, но можно также использовать отдельные плагины, такие как Better WordPress Minify и Autoptimize. Хорошей практикой в WordPress считается размещение файлов стилей вверху страницы, а файлов скриптов снизу.
12. Уменьшение количества HTTP запросов
Уменьшение количества HTTP запросов, которые делает сайт на WordPress в момент загрузки, очень важно для оптимизации скорости.
Рассмотрим несколько важных способов по уменьшению количества запросов к серверу.
Если вы используете у себя на сайте систему комментирования WordPress, по умолчанию она формирует отдельный HTTP запрос для каждого граватара. Если у вас много комментариев на странице, она будет генерировать огромное количество нужных и ненужных редиректов.
Есть несколько способов решения этой проблемы.
Вариант 1 — отключить граватары
Можно просто отключить все граватары пользователей, и использовать локальные аватары. Не идеальное решение, но рабочее.
Для этого нужно установить бесплатный плагин WP User Avatar. И в настройках включить опцию «Отключить Граватары и использовать только локальные аватары»
Вариант 2 – использовать Disqus
Можно использовать комментарии Disqus вместе с плагином lazy load Disqus. Кажется странным, что подключать дополнительный плагин, скрипты, делать вызов к сторонним сервисам предпочтительнее использования родного функционала. Но если сравнить скорость на записи с 5 или более комментариями, окажется, что Disqus быстрее из-за меньшего количества HTTP запросов.
Отключение Emoji
С выходом WordPress 4.2 появилась поддержка Emoji. Это привело к добавлению лишнего скрипта wp-emoji-release.min.js?ver=4.3.1 в хедере. Этот скрипт создает дополнительный HTTP-запрос, от которго нужно избавиться, если вы не собираетесь использовать Emoji.
В инструкции ниже покажем, как отключить Emoji и избавиться от лишнего HTTP запроса.
В настройках «Написание» отключите “convert emoticons”.
Вариант 1 – WordPress плагин
Установите бесплатный плагин для WordPress “Disable Emojis” by Ryan Hellyer. Этот плагин отключает функционал emoji в WordPress 4.2.
Вариант 2 – функция WordPress
Чтобы не перегружать сайт лишними плагинами, можно избавиться от emoji путем добавления в functions.php следующего кода:
Отключение скриптов на странице
Обычно мы стараемся избавиться от лишних плагинов, но есть один плагин Gonzalez, который позволяет отключать неиспользуемые скрипты на уровне страницы или всего сайта. Например, плагин Contact Form 7 загружает свои скрипты на всех страницах сайта, а не только на той, где используются формы. То же самое с плагинами шаринга в соцсети. Отключив ненужные на данной странице скрипты, можно избавиться от нескольких лишних HTTP запросов. Плагин не бесплатный, но своих денег стоит.
Отключаем Embeds
С версии 4.4 в WordPress загружается новый скрипт wp-embed.min.js , который позволяет упростить вставку видео, изображений, твитов, и т.п. Например, WordPress автоматически преобразует URL в YouTube вставку и сделает превью в визуальном редакторе. Но не всем нужна подобная функция, можно просто скопировать готовый код для вставки с YouTube или Twitter. Проблема с этой функцией в том, что она загружает свой скрипт на каждой странице. Есть несколько способов избавиться от него.
Вариант 1 – WordPress плагин
Установите WordPress плагин “Disable Embeds” by Pascal Birchler. Он делает следующее:
- Предотвращает других от вставки вашего сайта.
- Не дает вам вставить сайты не из разрешенного списка.
- Отключает все скрипты, связанные с этой функцией.
Вариант 2 – функция WordPress
Можно добавить следующий код в файл functions.php, это отключит функцию вставки.
Отключаем комментарии
Независимо от того, используете вы или нет систему комментариев WordPress, скрипт comment-reply.min.js подключается на каждой странице сайта. Это не всегда оправдано, на сайте могут быть не нужны комментарии вообще или подключен Disqus. Тогда можно отключить этот ненужный скрипт.
Для этого можно добавить следующий код в файл functions.php .
13. Отключение хотлинков
Хотлинкинг это когда кто-то использует изображения с вашего сайта, ссылаясь на них. Это создает ненужную нагрузку на сервер и лишний трафик. Запретить подобные вещи можно, добавив следующий код в файл .htaccess :
После этого изображения на чужих сайтах, которые пытаются сослаться на ваш, будут выглядеть так:
14. Отключение Pingback и Trackback
Pingback и trackbacks считаются устаревшими сейчас, и могут замедлить сайт при загрузке страниц. Есть много современных инструментов, которые позволяют отслеживать ссылки на ваш сайт.
Отключить pingback и trackback можно в настройках обсуждения. Это изменение коснется только новых записей.
15. Задание размеров изображений
Все видели похожие рекомендации при проверке скорости сайта Google Pagespeed:
Optimization suggestion: “By compressing and adjusting the size of … you can save 5.8 KB (51%).”
Эти рекомендации относятся к изображениям на сайте, которые масштабируются браузером. Например, если изображение имеет ширину 500 пикселей, а на странице помещено в колонку шириной 400 пикселей. В результате оно будет уменьшено до 400 пикс.
Правильным решением будет подготовка изображений нужного размера в графическом редакторе перед загрузкой на сайт. Это сэкономит ресурсы сервера и будет соответствовать рекомендациям Google Pagespeed. Еще можно загрузить на сайт изображения в разных размерах для разных устройств.
16. Решение проблемы медленной загрузки admin-ajax.php
В WordPress 3.6 бал представлен WordPress Heartbeat API, который позволил WordPress общаться с сервером и браузером. Это улучшило управление сессиями, контроль ревизий и автосохранение.
WordPress Heartbeat API использует admin-ajax.php для AJAX запросов из браузера. Это может привести к повышенной нагрузке на процессор и большому количеству вызовов PHP. Например, если оставить открытой страницу с админкой, она будет посылать POST запросы к этому файлу постоянно с заданным интервалом.
Существует бесплатный плагин Heartbeat control, который позволяет задать частоту обращений WordPress heartbeat API.
Стоит помнить, что разработчики других плагинов тоже используют этот файл. Если вы заметили задержки в работе сайта, это может быть вызвано плагином, который запрашивает admin-ajax.php . Чтобы разобраться, в чем дело, нужно запустить тестирование скорости загрузки сайта, найти вызов admin-ajax.php и посмотреть информацию о запросе.
Таким образом можно вычислить, какой плагин выполняет запрос. В этом примере это был плагин соцсетей, для которого не было включено кэширование. Как только кэширование плагина активировали, постоянные обращения к admin-ajax.php прекратились.
17. Настройка MySQL сервера
Оптимизация работы сервера баз данных MySQL также очень важна для быстрой работы сайта на WordPress. Настройки MySQL в большой степени зависят от конфигурации серверного окружения на вашем хостинге, поэтому нет универсальных рекомендаций по оптимизации MySQL. Обычно настройки MySQL/MariaDB находятся в файле /etc/my.cnf . Вот несколько параметров, на значение которых стоит обратить внимание:
- tmp_table_size
- query_cache_type
- query_cache_size
- query_cache_size
- join_buffer_size
- max_heap_table_size
Очень полезный инструмент — скрипт MySQL Tuner. Он делает обзор производительности сервера и дает некоторые базовые рекомендации по возможной оптимизации. Вот еще несколько инструментов, которые могут пригодиться при настройке MySQL:
18. Выбор качественного хостинга для WordPress
И последний, но немаловажный фактор оптимизации сайта на WordPress — выбор надежного производительного хостинга. Не рекомендуем использовать дешевые шаред хостинги, которые забиты сайтами. Лучшим решением будет использовать VPS или WordPress хостинг с поддержкой.
Надеемся, наше руководство поможет вам улучшить показатели скорости вашего сайта.
wpgutenberg.top