→ Как мега мощно ускорить свой wordpress блог? WordPress: Плагины для ускорения загрузки страниц, поисковая оптимизация Плагин PageSpeed Ninja.

Как мега мощно ускорить свой wordpress блог? WordPress: Плагины для ускорения загрузки страниц, поисковая оптимизация Плагин PageSpeed Ninja.

Скорость и отказоустойчивость – одни из тех факторов, что неизменно влияют на популярность вашего ресурса, ведь даже с лучшим в мире контентом медленно работающий сайт будет раздражать читателей и рано или поздно вы их потеряете. В этой статье мы будем оптимизировать самый популярный блоговый движок - Wordpress, работающий на PHP. А заодно рассмотрим несколько общих моментов в оптимизации сайтов.

1 Тестируем текущую скорость

Чтобы узнать изменилось ли что-нибудь после нашей оптимизации, не помешает замерять для начала текущую скорость загрузки страниц блога, чтоб было с чем сравнивать. Есть несколько инструментов, которые помогут сделать это:

Не забудьте обновить до последней версии PHP и Apache .

3.1 Отключите неиспользуемые сервисы
Вы можете получить больше доступной оперативной памяти, отключив неиспользуемые службы и оптимизировав MySQL и Apache.
  • Удалите ClamD;
  • Настроить SpamD на использование только 1 дочернего процесса;
  • Удалите Mailman, если, конечно, вы не собираетесь запускать почтовый сервис.
3.2 MYSQL Query Cache
Поскольку стабильность и скорость Wordpress довольно сильно зависит от работы БД, стоит убедиться, что настройки в my.cnf соответствуют возможностям сервера. В первую очередь следует установить настройки кэширования запросов, добавив в my.cnf следующие строки:
query_cache_type = 1
query_cache_limit = 2M
query_cache_size = 20M

Чтоб настройки вступили в силу придется перезапустить сервис MySQL сервис.
3.3 Кэш компилятора: XCache или Eaccelerator?
Кэш компилятора увеличивает производительность откомпилированных скриптов на сервере, кэшируя их – это поможет сократить время выполнения PHP скриптов. Стоит попробовать и то и другое решение, однако по результатам опытов увеличение производительности при использовании Xcache на 5% выше, чем с Eaccelerator.
3.4 Увеличьте максимальное число соединений на Apache
Увеличение максимального количества соединений в httpd.conf повысит производительность, т.к. сервер сможет обрабатывать большее количество подключений за раз. Однако, следует изменять этот параметр осторожно, дабы не исчерпать весь объем оперативной памяти и не замедлить работу сервера, потому всегда тестируйте новые настройки прежде чем запускать их в работу. Установим к примеру 150 коннектов:
max_connections = 150

Не забудьте рестартить сервис Apache, чтоб применить настройки.

4 Оптимизация кода и графики

Итак, сервер заработал и теперь настало самое время поиграть с кодом Wordpress.
4.1 Отключите хотлинки
Каждый раз когда вы используете свой сервер для хранения изображений вы существенно больше используете его ресурсов. Довольно часто люди заимствуют ваши изображения, ставя хотлинки на своих серверах. Это не только занимает канал, но и создает определенную нагрузку на сервер.
Добавьте следующий код в .htaccess файл, заменив example.com на имя вашего домена, чтобы отключить использование хотлинков:
< IfModule mod_rewrite .c >
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?example\.com/.*$
RewriteRule .*\.(gif|jpg|png|ico)$ -
4.2 Используйте внешний хостинг для хранения изображений
Хостинг изображений на внешних серверах поможет значительно снизить нагрузку на сервер. В примере ниже вы можете видеть снижение объема используемой оперативной памяти на одном из блогов после переноса изображений на сервис Amazon S3 .

4.3 Сжимайте java-скрипт код
Сжатие javascript довольно простая задача. Поскольку он выполняется при каждом просмотре страницы, вы можете уменьшить размер Javascript, удалив все незаполненное пространство. Вот простой инструмент, который поможет сделать это за вас - JavaScript Compressor .
4.4 Javascript в начале страницы
Часто случается так, что сайт начинает загружаться медленно или вообще останавливается, т.к. другой ресурс, с которого вызывается javascript(на пример Digg badges, Tweetmeme и т.д.), не доступен или оффлайн. Чтобы избежать этого вынесите весь javascript код в конец страницы, а то что по каким-то причинам вынести не удалось – попробуйте заключить в iFrame.
4.5 Используйте кэш браузера
Сам по себе кэш браузера, конечно не сделает ваш блог быстрее, однако поможет снизить нагрузку на сервер, кэшируя часто загружаемые объекты(стили, элементы интерфейса и т.п.).
Попробуйте вставить следующий код в .htaccess файл:
FileETag MTime Size
< ifmodule mod_expires .c >
< filesmatch "\.(jpg|gif|png|css|js)$" >
ExpiresActive on
ExpiresDefault "access plus 1 year"

4.6 Сжимайте статические данные
Вы можете уменьшить размер загружаемой страницы позволив браузеру принимать и передавать данные в сжатом виде. Это также снизит загрузку канала и количество загружаемых данных.
Следующий код в .htaccess может помочь вам в этом:
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0 no-gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html
4.7 Используйте CDN для статических файлов
Если хранить все изображения на одном и том же домене, то браузер будет ожидать их загрузки одного за другим. Допустим на странице их у вас есть 12 штук, если вы разделите их между тремя поддоменами, они будут загружаться одновременно из трех «разных» источников вместо того, чтоб загружаться браузером по очереди из одного.
Можете попробовать перенести все css & javascript файлы на files.yoursite.com , а изображения и временные файлы на static.yoursite.com . Или же просто использовать CDN (Content Delivery Network) – большая сеть серверов, расположенных по всему миру, которые позволят не только хранить ваши файлы на разных поддоменах, а значит загружать их параллельно, но и доставлять пользователю данные с самого близкого к нему сервера. Все это позволит загружать данные намного быстрее.

5 Wordpress

В этой части статьи мы рассмотрим приемы для улучшения производительности, которые можно применить непосредственно к Wordpress.
5.1 Обновитесь до последней версии
Обновления до более новых версий позволяют не только устранять обнаруженные уязвимости, но и улучшают производительность. Для примера в wordpress 2.8 была существенно оптимизирована работа с БД.
5.2 Отключите Post Revisions
Во всех версиях wordpress, начиная с 2.6, редакции ваших статей каждый раз во время правки автоматически сохранялись. Это замедляет работу БД и увеличивает ее размер без особой надобности.
Чтоб отключить post revisions, добавьте следующую строку в wp-config.php :
define("WP_POST_REVISIONS", false);

Чтобы удалить сохраненные ранее ревизии текста, выполните следующий запрос в PHPmyadmin:
DELETE a,b,c
FROM wp_posts a
LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id)
LEFT JOIN wp_postmeta c ON (a.ID = c.post_id)
WHERE a.post_type = "revision"
5.3 Сократите количество запросов
Уберите ненужные запросы, чтоб ускорить генерацию страницы. Например, следующий типичный код, встречающийся во всех темах для wordpress:
< meta http-equiv ="Content-Type" content ="< ?php bloginfo ("html_type" ); ?> ; charset= " />

Мы запросто можем переписать в:
< meta http-equiv ="Content-Type" content ="text/html; charset=UTF-8" />

Уже на два запроса меньше. Довольно просто, не правда ли?
6 Wordpress Plugins
И на последок предлагаю вашему вниманию несколько плагинов, которые могут повысить производительность wordpress. Как только все, описанное выше, будет выполнено, эти плагины помогут добиться еще более высокой производительности.

WP Super Cache
Это, пожалуй, лучший плагин к Wordpress. WP Super Cache создает статические html версии каждой страницы и загружает их каждый раз, обходясь тем самым без запросов к БД. Это значительно увеличивает скорость загрузки страниц и снижает нагрузку на сервер. Строго рекомендуется к установке.

PHP Speedy WP
Этот плагин решает другую проблему, обозначенную в этой статье – удаление незаполненного пространства в CSS & javascript. Однако есть некоторые проблемы совместимости этого плагина с WP Super Cache, кроме того он долгое время уже не обновлялся, потому используйте на свой страх и риск.

Optimize DB
Плагин позволяет оптимизировать таблицы MySQL без помощи PHPmyadmin.

Счастья тебе и твоему уютному бложеку, %username%.

План статьи

Для Google, Яндекса и других поисковых систем скорость загрузки сайта является важным фактором ранжирования. Рассмотрим ускорение загрузки и работы сайта на CMS WordPress. Результаты работы можно увидеть в конце поста.

Цель: Ускорить загрузку и работу сайта на CMS WordPress плагинами (без правки кода).

Шаг 1. Анализ текущей ситуации со скоростью загрузки.

Ускорение этого блога я делал еще в феврале 2015 года, поэтому скриншота прошлого состояния не сохранилось. По памяти помню, что сервис PageSpeed Insights показывал скорость загрузки 50/55 для мобильных/ПК. Состояние было плачевное и я задумался про ускорение.

Проанализируйте свой сайт на WordPress с помощью сервиса Google PageSpeed Insights и если результат загрузки сайта меньше 85 — читайте дальше.

Шаг 2. Устанавливаем плагины для ускорения.

WP Fastest Cache

Плагин для кэширования сайта, сжатия файлов, минимизации и объединения css, js, очень широкий функционал. Плагин в нужной комплектации бесплатный.

Зайдите в админке сайта на WP в «Плагины» -> «Добавить новый». Впишите название плагина, нажмите «Поиск». Первый плагин с изображением животного кошачьего типа — наш плагин. Устанавливаем.

EWWW Image Optimizer

Плагин для оптимизации изображений. Сжимает существующие и загружаемые картинки без потери качества.

Зайдите в админке сайта на WP в «Плагины» -> «Добавить новый». Впишите название плагина, нажмите «Поиск». Первый плагин с изображением молотка, который бьет по картинкам — наш плагин. Устанавливаем.

Шаг 3. Настройка ускорения сайта на WordPress

Настроим кеширование и минимизацию css, js файлов. В панели администратора новым пунктом меню у вас появился WP Fastest Cache. Зайдите по ссылке, внизу вы увидите поле language, установите русский язык. Установите галочки во всех пунктах, как на скриншоте ниже. В другие вкладки плагина можете не заходить — там платные функции, за которые вам вряд ли захочется отдавать деньги.

После этого сожмём картинки на сайте. В панели админки WP наведите на медиафайлы, выберите пункт «Оптимизировать». В выбранном окне воспользуйтесь двумя функциями — оптимизацией картинок из библиотеки и оптимизация других картинок (шаблона, движка и т.д.). Этими действиями вы сжимаете уже существующие изображения на сайте, загружаемые после установки плагина картинки будут сжиматься автоматически при загрузке на сервер.

Всего 2 этих шага существенно ускорит загрузку страниц, что увеличит лояльность поисковых машин и улучшит отношение людей к вашему сайту на WordPress.

Шаг 4. Результаты ускорения сайта.

Результаты шикарные. С 50 сразу стало 81 (опять-таки, по памяти). Почитав рекомендации Гугла нашел множество проблем загрузки, связанной с плагином, который предназначен для красивого вывода программного кода на блоге. После того, как я его снес — это значение поднялось до 91! Вот, что показала Яндекс Метрика — отчет по загрузке страниц:

По скриншоту четко видно, что скорость загрузки страниц снизилась с 1 секунды от 0.1 . Отмечу, что улучшились позиции в Google и даже в Яндексе, уменьшилось число отказов (некоторые люди, особенно с мобильным интернетом, не желают долго ждать и покидают сайт, если после перехода на сайт он сразу не начинает загружаться).

Дополнительно

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

Это заметно снижает скорость загрузки и отношение Google к сайту. Простой пример — в моем блоге на главной вы увидите над лентой последних постов текст и небольшое фото. Если бы я поставил в атрибут src тега img ссылку на изображение оригинал разрешением ~1000×2000 и вывел картинку 100×100, серверу пришлось бы загружать изображение 1000×2000, браузер сжал бы ее до нужных размеров, которые я прописал в стилях отображения, но реально-то загружался оригинал. Поэтому я не поленился отресайзить её в Photoshop и только после этого использовать в шаблоне. Загружайте изображения ровно в таком разрешении, в котором хотите её отобразить.

Меньше графики — быстрее сайт.

Графика занимает в сотни и тысячу раз места больше, чем несколько строк в CSS и HTML. Старайтесь делать элементы сайта при помощи этих языков разметки во всех случаях, где это возможно.

Меньше плагинов — меньше запросов к базе данных.

Не ставьте плагины-пустишки, которые нужны для каких-то сомнительных целей, без которых можно обойтись. Поставив всего лишь десяток лишних плагинов, вы заметно увеличите нагрузку на базу данных, а соответственно и снизите скорость работы сайта.

Если у вас возникли проблемы с ускорением сайта на WordPress или возникли вопросы по теме — пишите в комментарии или на почту через форму слева — постараюсь помочь.

Обновленная подборка с бесплатными русифицированными плагинами для сайта на WordPress, которые исправят ошибки кода, закэшируют страницы и сделают загрузку быстрее.

В статье:

Первое, что влияет на впечатление пользователя от сайта - скорость его загрузки. Если сайт не загрузился в первые три секунды, скорее всего пользователь его закроет. Даже если на сайте выстроена идеальная воронка продаж, продумано юзабилити, продается что-то выгодное и полезное, клиент этого не увидит,потому что не дождется загрузки.

Поисковики любят быструю загрузку

Поисковые системы тоже поощряют ускорение загрузки. В Яндексе говорят о том, что более 40% выходят в сеть с 3G-интернетом, так что тяжелые страницы будут загружаться очень медленно. Проблема долгого ответа сервера считается критичной: если среднее время ответа всех страниц дольше трех секунд, вы увидите предупреждение в Яндекс.Вебмастере

Google в июле 2018 запустил алгоритм , он понижает в выдаче сайты, которые загружаются очень долго. Особенно рискуют интернет-магазины, потому что обычно они функционально перегружены.

Многие владельцы сайтов и SEO-специалисты на значительную просадку позиций после обновления алгоритма. Сервисы мониторинга позиции не показывали каких-либо значительных изменений:


График изменений по десктопной и мобильной выдаче

Но сайты, которые действительно долго загружались, просели в выдаче. Интересно, что по анализу Барри Шварца, владельца портала Seroundtable, апдейт больше всего :


Результаты анализа Барри Шварца

Пострадали 42% официальных ресурсов медучреждений, частных сайтов о здоровье и фитнесе, ЗОЖ. Причина такого смещения результатов неизвестна, точнее, нет официального ответа, зато есть версии, о которых мы рассказывали в статье « ».

Даже если ваш сайт далек от темы здоровья, работать над скоростью все равно нужно.

От чего зависит скорость загрузки сайта

Скорость загрузки сайта зависит от нескольких факторов, каждый из них можно ускорить по мере возможностей.

Серверные параметры, хостинг

Время ответа сервера - это время, за которое сеть и сервер вернул первый запрошенный байт HTML-файла. Чем больше это время, тем дольше у пользователя белый экран загрузки вместо сайта. Плохо, если время ответа сервера дольше трех секунд, Яндекс.Вебмастер покажет уведомление о критичной ошибке.

Скорость ответа сервера, верстка, оптимизация CSS и JS влияет на время загрузки основной части сайта.

Часто проблема может быть в том, что не хватает ресурсов хостинга - CPU и скорости дисковой системы. Обычно советуют найти SSD хостинг и использовать сети CDN, чтобы сократить время доставки контента - система выберет ближайший к пользователю сервер.

По словам Джона Мюллера , Google определяет скорость сайта по общей картине, а не по промежуточным этапам. Быстрой загрузки первого байта (TTFB) недостаточно, это не показатель хорошего пользовательского опыта. Важно общее время загрузки и рендеринга, поэтому стоит работать над всеми доступными параметрами.

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


Так что особенно важно следить за скоростью загрузки с мобильных, показатели могут отличаться от десктопных чуть ли не в два раза. Первый экран должен появляться не позднее, чем через полторы секунды, а вся страница не должна загружаться дольше двух секунд.

Почитать по теме:
« »: асинхронная загрузка, jQuery, минификация и объединение кода, кэширование и другие способы.

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

Для этого в корневой директории нужно найти файл wp-config.php, в котором найти строку

Define ("WPLANG", "ru_RU");

И заменить ее на такой код:

If (strpos($_SERVER["REQUEST_URI"], "wp-admin")) define ("WPLANG", "ru_RU"); else define ("WPLANG", "ru_RU_lite");


Вес страницы сайта

От веса HTML-страниц тоже зависит скорость загрузки - тяжелые страницы со сложной функциональностью и тяжелыми медиафайлами будут загружаться долго. Чтобы страница стала легче, можно настроить HTML-элементы с помощью CSS, использовать сжатие медиафайлов, настроить кэширование, минифицировать код страницы.

Об этом в подробностях в статье « »: gzip, brotli, минификация и другие способы.

Редиректы

Редиректы замедляют скорость - сервер устанавливает соединение с одной страницей, получает ответ о перенаправлении и переходит на другую. Если на сайте много 301 редиректов, проверьте по источникам трафика, может, в некоторых случаях стоит заменить ссылку с редиректом на конечную страницу.

Редиректы с HTTP на HTTPS тоже могут тормозить процесс, в этом случае поможет технология HSTS (HTTP Strict Transport Security) - тогда браузер автоматически сделает внутренние редиректы, сразу сделает запрос на HTTPS и перенаправит пользователей на безопасное соединение. Для этого нужно подключить функцию HSTS в личном кабинете хостинга или прописать заголовок HTTP Strict Transport Security. Но советуем сначала протестировать функцию, чтобы убедиться, что все страницы доступны.

Плагины для ускорения загрузки сайта на WordPress

Для владельцев сайтов на WordPress мы составили подборку плагинов, работающих с ускорением, кэшированием страниц и оптимизацией. Все плагины из подборки переведены на русифицированы и бесплатны.

Optimize Database

WordPress создает резервные копии записей при сохранении и редактировании, они все хранятся в базе данных. Чтобы улучшить скорость работы, можно оптимизировать БД - провести ревизию с помощью плагина.

Возможности:

  • удаление резервных копий постов с возможностью выставить допустимое количество копий для хранения;
  • удаляет спам-комментарии, неиспользуемые теги, пингбэки, трекбэки;
  • оптимизирует таблицы базы данных;
  • создает журнал оптимизаций, есть настройка для автоматической оптимизации.

Фрагмент работы с плагином

Совместим вплоть до 5.2.3 версии WordPress, нужна версия PHP 5.0 или выше.

WP-Optimize

Плагин для очистки базы данных, сжатия изображений и кэширования.

Возможности:

  • удаление резервных копий, спам-комментариев, пингбэков, трекбэков;
  • массовое сжатие изображений в формате PNG, JPG, GIF, BMP и TIF;
  • кэширование: специфический кэш для устройств, предварительная загрузка кэша, расширенные правила исключения для файлов;
  • gzip-сжатие HTML, JavaScript и CSS;
  • настройка автоматических очисток по расписанию.

Ускорение с помощью плагина
Пример интерфейса

Работает бесплатно, есть премиум-версия с дополнительными возможностями. Совместим с версиями WordPress от 3.8.

WP Fastest Cache

Плагин создает статические html-файлы с сайта на WordPress и сохраняет их, то есть кэширует страницы.

Возможности:

  • кэширование страниц в браузере для более быстрой загрузки у пользователей, посещавших сайт ранее;
  • gzip-сжатие;
  • оптимизация кода;
  • уменьшение размера файлов css.


Данные работы плагина

Плагин совместим с HTTPS, поддерживает SSL, CDN, Cloudflare. Не работает с режимом Multisite. Совместим с версиями WordPress от 3.3

PageSpeed Ninja

Плагин улучшает производительность сайта на WordPress, работает с десктопным и мобильным отображением.

Возможности:

  • кэширование страниц в браузере и на сервере;
  • gzip-сжатие файлов;
  • оптимизация порядка, котором будут загружаться стили и скрипты;
  • сжатие изображений;
  • предпросмотр изображений в низком разрешении;
  • и другие действия для ускорения загрузки и облегчения веса страницы.

PageSpeed Ninja предлагает действия по ускорению загрузки

Плагин может быть несовместим с некоторыми сайтами, поэтому проверьте совместимость на сайте PageSpeed.Ninja . Введите свой домен, результаты появятся на экране и придут на почту.

Совместим с версиями WordPress от 4.0.1 и выше.

PageSpeed Module

Плагин открывает дополнительные настройки страниц для ускорения загрузки, если на сайте используется веб-сервера с открытым исходным кодом Apache или Nginx.

Возможности:

  • очистка кэша от модулей;
  • включение режим разработчика для обхода кэширования PageSpeed.

Окно настройки плагина

Для работы нужно, чтобы был установлен веб-сервер Apache или Nginx. Плагин совместим с версиями WordPress от 4.4.

Jetpack

Плагин от WordPress.com, он должен работать, чтобы улучшить оформление сайта, обеспечить пользователям безопасную работу, отследить маркетинговые данные. Некоторые оптимизаторы писали, что не видят эффекта, но лучше протестировать самостоятельно.

Возможности:

  • отложенная загрузка изображений для ускорения работы на мобильных устройствах;
  • темы для оформления;
  • поддержка статистики и аналитики;
  • автоматический постинг в соцсети с планированием публикаций;
  • статистика и аналитика сайта
  • Elasticsearch - поиск похожего контента на сайтах;
  • фильтрация спама;
  • ежедневное резервирование;
  • поддержка системы оплаты;
  • двухфакторная аутентификация для входа на сайт;
  • и другие возможности для безопасной работы на сайте и маркетинга.

Некоторые возможности платные, цена зависит от количества подключенных дополнений. Есть бесплатный минимальный тариф.


Загрузка изображений на сайт через плагин

Совместим с версиями WordPress от 5.1, версия PHP от 5.6.

All in One SEO Pack

Плагин работает с ускорением загрузки страниц, но предназначен в целом для автоматизации работы с SEO сайта.

Возможности:

  • поддержка Google AMP для ускорения загрузки мобильных страниц;
  • уведомление Google об изменениях на сайте;
  • автоматическая оптимизация заголовков и генерация метатегов;
  • поддержка Google Analytics;
  • встроенный API, который позволяет дорабатывать плагины под себя;
  • и другая функциональность для SEO.

SEO-меню плагина с модулями

Совместимость с PHP от 5.2.4 версии. Совместим с WordPress от 4.7 версии.

WP Total cache

Плагин справляется с кэшированием HTML-страниц, объединением стилей и скриптов, браузерным кэшированием.

Возможности:

  • тестирование настроек сервера, чтобы подобрать настройки плагина для комфортной работы;
  • импорт настроек, если работаете с несколькими проектами;
  • кэширование страниц и объектов;
  • сжатие CSS и JavaScript;
  • отслеживание работы плагина.

Интерфейс плагина

Нужна версия WordPress 3.2 или выше.

WP Super Cache

Плагин для кэширования HTML-страниц. Не оптимизирует JS/CSS, но с этим справляется следующий плагин из подборки.

Возможности:

  • простое включение и отключение кэширования;
  • настройка сроков и страниц для кэширования;
  • настройка кэширования для мобильной версии;
  • поддержка CDN;
  • сбор статистики по страницам.

Варианты настройки кэширования

Совместим с версиями WordPress от 3.1, минимальное требование - версия PHP 5.2.4 или выше.

Autoptimize

Плагин работает с кодом, скриптами и стилями страницы, ускоряя загрузку. Хорошо справляется в тандеме с предыдущим плагином.

Возможности:

  • оптимизация JavaScript и CSS;
  • исправление кода, блокирующего отображение верха страницы.
  • кэширование и объединение скриптов и стилей;
  • работа с заголовками;
  • перемещение скриптов в нижний колонтитул;
  • упрощение HTML.

Настройки плагина

Совместим с версиями WordPress от 4.0 и выше, версиями PHP от 5.3 и выше.

AMP for WordPress

Плагин ускоряет загрузку страниц, преобразовывая их в AMP. Такие страницы быстро загружаются: все элементы статичны, поэтому их положения и размеры можно определить до загрузки, и макет загружается сразу без перекомпоновки.

Возможности:

  • преобразование страниц в вид AMP, тогда к URL каждой страницы добавится /amp/;
  • отображение сайта как «Native AMP», тогда у каждого адреса будет только одна AMP-версия URL;
  • обновление кэша по расписанию.
Пример страницы с шаблоном AMP

Поддерживает CDN. Совместим с версиями WordPress от 4.9, PHP от 5.4.

Yandex.News Feed by Teplitsa

Плагин упрощает интеграцию сайта с Яндекс.Новостями, включая поддержку турбо.

Возможности:

  • трансляция контента для Яндекс.Новостей;
  • поддержка режима Турбо Страниц.
  • настройка категорий, которые попадут в трансляцию;
  • и другие настройки RSS-ленты для Яндекс.Новостей.

Настройка Турбо-страниц

Совместим с версиями WordPress от 3.9.

Smush Image Compression and Optimization

Плагин уменьшает и сжимает изображения для быстрой загрузки страницы.

Возможности:

  • сжатие изображений при загрузке на сайт;
  • сжатие уже загруженных из любого каталога;
  • установка границ - максимальной высоты и ширины, большие изображения будут сжиматься и подстраиваться под размер;
  • настройка отложенной загрузки;
  • массовая работа с изображениями.

Автоматическое изменение размера

Совместим с версиями WordPress от 4.6, PHP от 5.3 и выше.

Подборка бесплатных русифицированных плагинов поможет выбрать подходящий инструмент, чтобы ускорить загрузку страниц. Это позволит не потерять клиентов, которые не любят ждать долгой загрузки сайта, и не попасть под обновление алгоритма Google, которое опускает медленные сайты в выдаче.

Рано или поздно все начинающие веб-мастера сталкиваются с проблемой скорости загрузки страниц сайта. Владельцы сайтов на платформе WordPress не являются исключением. Спустя месяц-два все сайты на WordPress начинают «тупить», причиной того может стать много факторов. В данной статье мы разберем основные причины и способы как ускорить сайт на wordpress.


Навигация по странице:

10 советов по ускорению загрузки сайта на WordPress

Для того что бы ускорить наш сайт нужно предпринять ряд действий. Для начала давайте проанализируем нашу скорость загрузки страниц с помощью pingdom.com.

Это будет нашей отправной точкой для начала работы. И какой бы не была страшной первоначальная цифра, не беда, благодаря нашему руководству вы снизите скорость загрузки сайта в разы.

Давайте перечислим как возможно ускорить сайт на wordpress:

  • gZIP сжатие;
  • уменьшаем css и JavaScript;
  • сокращение размера заголовка отзыва;
  • очистка базы данных от мусора;
  • убрать лишний JavaScript;
  • использовать кэширование для статического контента;
  • расположение css и JavaScript;
  • пользуйтесь поддоменами для паралельного скачивания;
  • откажитесь от ненужных плагинов;
  • выберите быстрый хостинг для своего сайта.

На первый взгляд работы предстоит много, но разобравшись что к чему это не займет у вас больше полу часа, а «выхлоп» от проделанного пути будет колоссальным. Давайте разберем каждый предложенный пункт более детально и проведем ускорение сайта на WordPress.

Браузеры имеют свойство получать страницы сайта в сжатом, GZip виде. То-есть, при запросе клиента, ваш сервер посылает данные вашей страницы сайта в архиве. После чего браузер пользователя успешно извлекает данные из архива и показывает их на экране монитора. Этот процесс значительно ускорит загрузку вашей страницы , по этому не стоит пренебрегать этим методом.

Как проверить включено ли gzip сжатие

Для того что бы проверить включено ли сжатие на вашем сервере можно воспользоваться сайтом whatsmyip.org который покажет сжимаются ли ваши данные и на сколько эффективно.

Если по результатам проверки вы получите следующее:

Значит ваши данные сжимаются и у вас все правильно работает.

Для формирования страницы мы используем наши каскадные таблицы стилей (CSS) и JavaScript, это все отнимает массу времени для загрузки нашей страницы. Что бы улучшить и ускорить наши стили и скрипты нужно их уменьшить, и придать им минимального размера.

Для того что бы уменьшить объем кода и ускорить загрузку страницы WordPress сайта существует несколько вариантов. Инструкции по которым можно прочитать у нас на сайте.

Чем больше у нас на загружаемой странице компонентов, таких как:

  • картинки;
  • скрипты;
  • флеш анимации и т.д.

тем медленнее она грузиться. Ведь правило протокола HTTP/1.1 ставит ограничение одновременной загрузки компонентов с одного хоста на уровне 2 штук. Таким образом у наши части страницы грузятся медленно и частями. Решение этой проблемы так же есть, и его мы детально разберем в следующей публикации.

Бывает так, что веб-мастер по незнанию или забывчивости забывает чистить базу данных, которая имеет свойство чрезмерно расти, особенно в WordPress.

Загрязненная БД приведет к огромным задержкам при загрузке, из-за того что количество переборов будет очень велико. Правильно настроена корректировка внесения данных в базу и ее от «шлака» поможет вам сохранить скорость и чистоту, позволит неплохо ускорить сайт на wordpress.

В наше время существует масса разных дополнений к нашим страницам, всевозможные виджеты подгружают огромное количество данных из сторонних ресурсов что значительно усложняет загрузку страницы. Главное правило откажитесь от ненужных вам скриптов ! Не стоит бросаться на каждую красивую картинку и каждое дополнение вашего сайта, сначала обдумайте и протестируйте его и проверьте как оно повлияет на вашу скорость.

Совет 6. Использование кэширования позволит как ускорить сайт на wordpress

Используйте кэширование браузера, так же является ключевым моментом ускорения работы WordPress. Добавляйте в кэш как можно больше данных которые будут передаваться пользователю в готовом виде, а не создаваться каждый раз заново, тратя драгоценное время вашего посетителя.

Для использования кеширования существует несколько методов внедрение которых позволит вашим постоянным пользователям уверенно переходить по вашим страницам сайта без значительных задержек.

Для кэширования можно использовать , или другой понравившийся вам плагин.

Совет 7. Правильно располагайте ваши css и JavaScript включения.

Для лучшей загрузки сайта подключайте все свои стили в верхней части документа , в теге . Данная методика позволит браузеру постепенно загружать весь ваш стиль, без потери и нежелательных скачков картинок. Очень не красиво выглядит когда сначала подгружается текст, а уж потом его начинает бросать со стороны в сторону добавляя ему отступы и замещая навигацией и прочей добавочной стилистикой сайта.

В то же время Google рекомендует опускать все файлы стилей вниз документа, якобы они мешают загрузке контента, по сути так оно и есть. Что же выбрать в данном случае? Этот спор поможет решить небольшой эксперимент. Если у вас «тяжелый» CSS файл, с огромным количеством правил, и при загрузке страницы сайта, все элементы прыгают, тогда размещайте в хедере, если же при расположении подключения стилей в футере ничего такого не происходит, тогда лучше оставить его внизу. Нужно из двух зол выбирать меньшее.

Все JavaScript по возможности нужно опускать вниз документа, что бы они срабатывали в самую последнюю очередь и не замедляли загрузки основного контента. Это не так ускорит полную загрузку страницы, как уменьшит затраченное время на формирование основы, приемлемой для просмотра, а уж потом загрузится функционал.

Совет 8. Пользуйтесь поддоменами для параллельного скачивания

Как уже упоминалось существует ограничение на одновременное скачивание компонентов, поэтому используйте как можно больше поддоменов для быстрой загрузки вашей графики. Для вас это будет все тот же хост, а для браузера разные, что позволит ему быстрее загружать ваши данные и размещать в выделенных местах.

Каждый плагин и каждый его модуль замедляет загрузку страницы, откажитесь от лишних, ненужных плагинов действия которого можно заменить внедрением небольшого кода в ваш движок. Это позволит не только ускорить но и обезопасить вас от потенциального взлома.

Пересмотрите свои плагины, по экспериментируйте и отключите их по очереди и проследите за изменениями в скорости загрузки страницы. Если разница большая тогда либо откажитесь полностью, либо попробуйте заменить дополнение на другое схожее по функционалу.

Представлена отдельно.

Вопрос довольно сложный, ведь все хостинг провайдеры обещают вам наилучшую скорость для вас, но не спешите и проанализируйте несколько вариантов. Почитайте отзывы клиентов и постарайтесь выбрать лучший для вас по меркам «цена - качество».

Конечно же лучшим вариантом для большого проекта будет выделенный хостинг или же VPS, затраты на которые значительно выше обычного хоста, но и преимущества огромные.

В заключение: в статье подробно рассказано как ускорить сайт на wordpress,воспользовавшись данными советами вы в разы, а то и в десятки раз сможете ускорить ваш сайт. Затраты на внедрения изменения в основном ложатся на временные активы, а выгода от них выше любых ожиданий.

// echo get_the_post_thumbnail(get_the_ID(), "relatedthumbnail"); // вывожу свой размер миниатюры?>

Представляю наиболее полную инструкцию с способами по ускорению работы сайта на WordPress. Благодаря описанным ниже способам я ускорил загрузку своего сайта с 24,40 секунд до 1,41 секунды. Увеличил скорость загрузки в 17,3 раза! Хороший результат. Чтобы узнать как — читайте полную статью.

Замеры скорости работы сайта я проводил сервисом Pingdom Speed Test . Тестировал главную страницу сайта. Смотрите ниже показатели сайта «до» и «после» улучшений, и короткую и полную инструкцию по ускорению сайта.

Показатели сокрости загрузки сайта

Скриншот замера скорости ПЕРЕД оптимизацией блога:

Скриншот замера скорости после оптимизации и проведенных ниже рекомендаций.
.

Короткое резюме по ускорению сайта на WordPress

Основное влияние на скорость оказали такие факторы как смена хостинга с использованием SSD дисков, оптимизация изображений, включение плагина кеширования W3 Total Cache, оптимизация БД сайта, удаление старых ревизий, включение сжатия файлов на стороне сервера, включение кеша для статичных файлов на стороне браузера. Далее следует полная развернутая инструкция по ускорению сайта на WordPress.

Полная инструкция как ускорить сайт на WordPress

1. Качественный SSD хостинг, быстрый пинг

Хостинг должен быть на SSD дисках. Желательно чтобы сервера хостинга располагались в вашей географической зоне, на которую ориентирован сайт. Если хостинг будет на SSD, но в США, а ваш блог ориентирован на Россию и страны СНГ, то толку от такого SSD будет мало. Так как будет идти долгий пинг для связи с сервером. Поэтому месторасположение дата центра хостинга также важно. Это важный параметр хостинга — быстрый пинг, отклик серверов. И чтобы хостер не делал оверселлинг услуг. Про тип хостинга — конечно лучше брать как VDS (виртуальный выделенный сервер) с необходимыми для вашего сайта параметрами, вместо обычного shared хостинга. Какую именно конфигурацию VDS выбрать — это зависит от нагрузки которую ваш сайт создает не сервер и от размера его суточной аудитории. Я бы советовал брать минимум 1Gb Ram, 1 ядро процессора и 10 Гб SSD. В начале у меня был VDS на обычных HDD дисках, затем я поменял его на SSD VDS хостинг.

Хостинг «До»:

Запретив индексацию сайта этим способом, вы сможете снизить нагрузку на хостинг, следовательно ускорить загрузку сайта, высвободив ресурсы сервера.

5. Настройка файла.htaccess для снижения нагрузки на сервер.

В файле.htaccess - задаются дополнительные команды для хостинга.С помощью специальных настроек можно убрать лишнюб нагрузку на сервер, и ускорить работу сайта.

Настройка №1. Часто с сайтов копируют информацию вместе с картинками, не изменяя адреса картинок. И когда такое происходит картинки лежащие на нашем хостинге загружаются на других сайтах, и это создает ненужную нагрузку на хостинг.

Следующим кодом можно запретить загружать изображения нашего сайта на сторонних сайтах:

RewriteEngine On RewriteCond %{HTTP_REFERER} !^http://(.+.)?yandex.ru/.*$ RewriteCond %{HTTP_REFERER} !^http://(.+.)?undsoft.com/.*$ RewriteCond %{HTTP_REFERER} !^http://(.+.)?yandex.net/.*$ RewriteCond %{HTTP_REFERER} !^http://(.+.)?feedburner.com/.*$ RewriteCond %{HTTP_REFERER} !^http://(.+.)?mail.ru/.*$ RewriteCond %{HTTP_REFERER} !^http://(.+.)?poisk.ru/.*$ RewriteCond %{HTTP_REFERER} !^http://(.+.)?yourdomain.ru/.*$ RewriteCond %{HTTP_REFERER} !^$ RewriteRule .*.(jpe?g|gif|bmp|png)$ - [F]

После добавления этого кода, на чужом сайте вместо вашего изображения будет выходить ошибка.

Настройка №2. В файле.htaccess можно и следует указать кэширование для некоторых объектов сайта (изображений, css и js фалов) чтобы браузер кешировал их на своей стороне и не загружал их каждый раз. Для этого в.htaccess ниже первого кода добавляем следующий код:

FileETag MTime Size ExpiresActive on ExpiresDefault "access plus 1 year"

Настройка №3. Включим gzip сжатие страниц перед отправкой их пользователю. Вставим в.htaccess следующий код:

mod_gzip_on Yes mod_gzip_dechunk Yes mod_gzip_item_include file .(html?|txt|css|js|php)$ mod_gzip_item_include handler ^cgi-script$ mod_gzip_item_include mime ^text/.* mod_gzip_item_include mime ^application/x-javascript.* mod_gzip_item_exclude mime ^image/.* mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*

Настройка №4. Ограничение спама в комментариях. Большинство спам комментариев отправляются автоматически. Этим кодом мы запретим напрямую отсылать комментарии минуя форму комментирования. Теперь спам боты не смогу отправлять комментарии.

RewriteEngine On RewriteCond %{REQUEST_METHOD} POST RewriteCond %{REQUEST_URI} .wp-comments-post.php* RewriteCond %{HTTP_REFERER} !.*yourdomain.ru.* RewriteCond %{HTTP_USER_AGENT} ^$ RewriteRule (.*) ^http://%{REMOTE_ADDR}/$

Настройка №5. Если вы пользуетесь системой FeedBurner, то у вас явно установлены плагины, которые отправляют RSS-контент на сайт FeedBurner. Сегодня вы можете их удалить, потому что перенаправить контент можно и без плагинов, уменьшив нагрузку на хостинг.

RewriteEngine on RewriteCond %{HTTP_USER_AGENT} !FeedBurner RewriteCond %{HTTP_USER_AGENT} !FeedValidator RewriteRule ^feed/?([_0-9a-z-]+)?/?$ http://yourdomain.ru

ВНИМАНИЕ!!! Не забудьте в примерах выше заменить адрес yourdomain.ru на адрес своего сайта.

6. Оптимизация базы данных

Важное значение в скорости работы сайта имеет База Данных. При сохранении постов по нескольку раз WordPress создает ревизии записи — состояния постов в разные моменты их редактирования. В результате со временем база данных содержит большое количество ненужных ревизий постов, и их необходимо очищать и оптимизировать. Сделать это можно с помощью плагина Optimize DB . Установить его можно из админки WordPress. Например запустив его на своем сайте я удалили более 1200 ревизий постов. Что значительно улучшило скорость работы БД.

7. Оптимизация кода шаблона (темы)

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

Настройка №1. Найти код, который отвечает за стили в файле header.php:

" type="text/css" media="screen" />

Заменить на:

Внимание!!! Не забудьте изменить yoursite.ru на ссылку своего сайта.

Настройка №2. Изменить код пинбеков:

" />

Настройка №3. Изменение кода RSS ленты:

RSS Feed" href="" />

Заменить с исправлением yoursite.ru на свою ссылку:

Настройка №4. Довольно часто в подвале сайта (footer.php), разработчики тем оставляют совершенно ненужные запросы к Базе данных. Например:

Данный код просто отображает название сайта, что бы лишний раз не обращаться к базе данных разумнее своими руками один раз написать название и не нагружать сайт. Этот же код можно поискать и в других разделах сайта, но прежде чем удалять, подумайте.

1) Если ваш сайт не использует комментарии, не стоит их скрывать с помощью плагинов, это создает совершенно ненужную нагрузку. Так как вам комментарии совершенно не нужны, просто удалите следующий код из файла темы (single.php):

2) Старайтесь не использовать внешние скрипты, такие как, комментарии от Вконтакте, различные виджеты социальных сетей. Да, это выглядит красиво и эффектно, но создает приличную нагрузку на сайт. Из примеров могу сказать что мой сайт значительно грузил код веб-визора от ЯндексМетрики, виджет Add.This. Кнопки соц сетей я поменял на отельный JS плагин.

3) Почистите весь код вашего сайта от комментариев, данные комментарии вставляются с помощью тегов и /*код/. Оставьте только нужное, так как сайту приходится тратить лишние силы на их загрузку…

4) Старайтесь размещать все скрипты в конце страницы перед закрвающим тегом , чтобы сперва загружался основной сайт, а уже потом загружались скрипты.

5) Все дополнительные коды на подобии счетчика сайта от Live Internet, либо Google Analytics стоит размещать в подвале сайта, что бы они так же как и другие скрипты грузились только в самую последнюю очередь.

8. WordPress плагины — для ускорения скорости загрузки сайта

Несколько советов по работе с плагинами, чтобы оптимизировать их нагрузку на сайт.

1) Удалите ненужные плагины. Ненужные плагин Со временем работающие плагины накапливаются, и можно насобирать много ненужных пагинов которые помимо занимаемого места будут создавать ненужную нагрузку на сайт.

2) Деактивируйте ненужные плагины. Постарайтесь использовать как можно меньше Активированных плагинов. Некоторым плагинам не обязательно давать работать постоянно.Например плагин для оптимизации БД можно включать только на период работы с ним.

10. Ускорение сайта с помощью кэширования

Кэширование - от слова кэш, то есть сохранение определенных данных, которые следует постоянно загружать. То есть сайт сохраняет определенные данные, и при переходе на страницу, браузер пользователя просто скачивает сохраненные данные в виде страницы. Сайту не приходится обращаться к серверу и базе данных, потом ждать отклика, собирать нужную информацию и отдавать их монитору вашего читателя.

1) WP Super Cache – лучший и бесплатный плагин для кэширования в WordPress. Рекомендую его установить и использовать. Также хорошие плагины WP Total Cache, WP Rocket.

2) Плагин Autoptimize – рекомендуют использовать вместе с Wp Super Cache. Никаких сверх настроек делать не нужно, просто активируйте плагин, в разделе «Настойки» → «Autoptimize» поставьте галочки, и плагин будет работать. Будьте осторожны, проверьте работоспособность сайта после изменения настроек, что бы предостеречь себя от неприятностей.

3) Плагин WP Widget Cache – позволяет кэшировать виджеты, с чем не справляется плагин Wp Super Cache.

11. Используйте CDN сети для более быстрой загрузки контента

Еще один способ ускорить загрузку сайта — использовать CDN сети, Content Delivery Networks. Каждый раз когда пользователь открывает ваш сайт, он загружает всю информацию с вашего сервера, на котором расположен сайт. Если регион пользователя и регион расположения сервера с вашим сайтом одинаковы, скажем Москва Россия — то все олично. Но если пользователь заходит на Ваш сайт скажем с Азии, или США, то доставка контента к нему уже будет происходить с меньшей скоостью, т.к. тут влияет расстояние. Использование CDN сетей дает возможность загружать файлы вашего сайта (изображения, скрипты, стили) не только с вашего хостинга, а с дата-центров по всему миру. Таким образом заходя на сайт, пользователь автоматически загрузит файлы сайта из наиболее близкой для него точки с серверами CDN сети, что значительно ускорит загрузку сайта.

Можно исюпользовать плагин Jetpack Photon который дает возможность использовать CDN сеть WordPress для загрузки изображений вашего сайта.

Можно использовать другие CDN сети, например MaxCDN, NGENIX или Amazon CloudFront. Я CDN сети не использовал, поэтому в этом пункте ограничися лишь кратким ознакомительным описанием этой технологии.

Подключая свой сайт к CDN сети, все файлы сайта будут загружаться с мощнейших дата-центров по всей планете. Обычно такие услуги платные, стоимость начинается от 9$, и используют их очень популярные сайты с огромной посещаемостью.

Несколько мелочей, которые в также помогут вам ускорить загрузку сайта:

  1. На главной странице сайта выводите только анонсы статей , не нужно выводить полные статьи.
  2. Очень большие статьи разделяйте на страницы с помощью тега .
  3. Не стоит выводить на главной странице больше 5-6 статей.
  4. Не стоит выводить под статьей больше 50 комментариев, пользуйтесь так же переключением страниц между комментариями.
  5. Установите поиск по сайту от Google или Yandex. Сайт будет искать информацию быстрее.

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

 

 

Это интересно: