alt

WordPress - популярная и что важнее, очень мощная система управления контентом (CMS). В настоящее время её используют более 33% всех сайтов в Интернете.

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

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

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

Почему скорость важна для вашего сайта WordPress?

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

Цена этой впечатляющей универсальности - производительность. WordPress действительно может работать довольно медленно, если не настроен правильно.

Медленный сайт - очень большая проблема. Если ваш сайт загружается больше 3-5 секунд вы потеряете значительную часть своей аудитории.

По некоторым данным (в исследовании принимали участие Amazon, Google и другие крупные сайты), задержка загрузки страницы в 1 секунду может привести к потере конверсий на 7%, уменьшению числа просмотров страниц в среднем на 11%.

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

Как итог – снижение поискового (бесплатного) трафика для медленных сайтов.

Как проверить скорость вашего сайта WordPress?

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

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

Вовсе нет!

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

Однако для любого другого пользователя скорость загрузки страниц вашего сайта будет совершенно иной.

Более того, из разных географических точек она будет меняться еще больше. И не стоит отмахиваться мол у вас локальный бизнес и трафик «извне» вас не беспокоит. Этот трафик также имеет значение при ранжировании (места в поисковой выдаче) вашего сайта.

Вот почему я настоятельно рекомендую регулярно проверять скорость вашего сайта.

Кроме того, обращаю ваше внимание, что проверять нужно ВСЕ ЗНАЧИМЫЕ СТРАНИЦЫ вашего сайта по отдельности, а не только домашнюю.

Вот список нескольких бесплатных инструментов для тестирования скорости:

WebPageTest

GTmetrix

PageSpeed Insights

Pingdom Tools

Sitespeed

Из-за кэширования и CDN (Сеть доставки (и дистрибуции) содержимого (англ. Content Delivery Network или Content Distribution Network, CDN), тест следует провести несколько раз, чтобы получить более достоверный результат.

Тест скорости сайта.

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

Вы также можете воспользоваться Google Analytics и Яндекс.Метрикой. В этих системах есть отчеты по времени загрузки страниц вашего сайта.

Хорошее время загрузки страницы составляет менее 2 секунд.

Что замедляет ваш сайт WordPress?

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

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

Вот основные причины медленного сайта на CMS WordPress:

Веб-хостинг

- если сервер вашего веб-хостинга не настроен должным образом или не предназначен для специфики CMS WordPress или вовсе физически устарел (например, использует hdd);

Конфигурация WordPress

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

Размер страницы

- в основном речь идет об изображениях на вашем сайте, которые не оптимизированы по размеру и «весу» и/или вы не используете функцию lazy load, которая позволяет загружать изображения по мере необходимости;

Плагины

- если вы используете «плохонькие» плагины, это может не только значительно замедлить ваш сайт, но и «положить» его вовсе;

Скрипты (внешние сценарии)

- внешние сценарии, такие как реклама (от Google или Яндекс, система комментариев (например, disqus), аналитика на вашем сайте, загрузчики шрифтов и пр. Все это также может оказать огромное влияние на производительность вашего веб-сайта.

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

Как ускорить WordPress сайт?

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

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

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

1. Быстрый хостинг для WordPress

Один из самых простых и важных способов ускорить работу WordPress - начать с прочной основы. А это означает выбор надежного и быстрого хостинга WordPress.

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

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

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

Хорошей практикой я считаю наличие тестового (бесплатного) периода использования серверов хостинга.

Устанавливаете сайт (это может любая тема используемая WordPress по умолчанию, например Twenty Seventeen) и смотрите скорость ответа сервера с помощью этого инструмента от Яндекс.

В итоге вы можете получите что-то вроде:

Время ответа сервера.

Обратите также внимание на наличие других плюшек от хостинга, например, бесплатной регистрации домена и/или SSL-сертификата.

Вот перечень хостинговых компаний, которые я могу рекомендовать:

Hostinger

Beget

Sprinthost

TimeWeb

Hostland

2. Установите плагин кэширования WordPress

Страницы сайта на WordPress являются «динамическими», это означает, что они формируются на лету каждый раз, когда кто-то заходит на ваш сайт.

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

Использование плагина кэширования позволяет решить эту проблему.

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

Статья в тему: «Список основных плагинов WordPress и почему они необходимы»

Существует множество хороших плагинов для кэширования WordPress, я рекомендую использовать бесплатные версии плагинов Cache Enabler или WP Super Cache.

3. Оптимизируйте изображения

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

Но, как это не печально, именно изображения делают сайт неимоверно медленным. Если вы загружаете изображение с вашего смартфона, его вес, скорее всего 5-7МБ – что очень много.

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

Формат изображений, это еще один нюанс, на который нужно обратить внимание.

Я стараюсь использовать два формата изображений: JPEG и PNG.

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

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

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

Вывод: Если наша фотография или изображение имеют много разных цветов, то мы используем JPEG.

Если это более простое изображение или нам нужен прозрачный фон, мы используем PNG.

Большинство моих изображений в формате JPEG.

Оптимизировать изображения на сайте можно с помощью плагинов. Их, в репозитории WordPress, предостаточно.

Для наших целей я предлагаю использовать EWWW Image Optimizer.

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

Кроме того, этот плагин решает (отчасти), другую нашу задачу – использование CDN (сети доставки контента) на нашем сайте, с 7-ю или около того глобальными местоположениями серверов, на которых храняться копий ваших изображений.

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

Другой, отличный вариант работы с изображениями, плагин Imagify.

Каждое изображение, которое я добавляю на страницу или пост, так же как и в первом варианте (плагин EWWW Image Optimizer), автоматически сжимается.

4. Оптимизируйте базу данных

Следующее, что нужно сделать, это убедиться, что база данных WordPress оптимизирована. Если вы никогда не делали этого раньше, первое что вам нужно сделать, это проверить, что у вас нет смешанных таблиц MyISAM и InnoDB.

СПРАВКА: В основном, WordPress использует два разных типа таблиц MySQL: InnoDB и MyISAM. Первый показал себя намного быстрее, поэтому его использовать предпочтительно.

Шаг 1

Войдите в phpMyAdmin и кликните по базе данных mySQL вашего сайта.

Шаг 2

Выполните быстрое сканирование или сортировку столбца «Тип», и вы увидите, какие типы Storage Engine используются в ваших таблицах. В нашем случае, вы можете видеть, что все таблицы используют InnoDB.

Проверка типа таблиц MySQL.

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

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

Внимание: Настоятельно рекомендую сделать резервную копию вашего сайта с помощью плагина UpdraftPlus или средствами вашего хостинг-провайдера.

Как вы можете видеть ниже, в моем случае в базе данных было 324! ревизии. Это очень много.

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

Всегда приятно начать с нового листа.

Примечание: я удаляю плагин сразу после завершения очистки.

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

С помощь плагина Revision Control или Clearfy или в ручную через файл functions.php

Просто добавьте этот код перед закрывающим тегом ?>.

add_filter( 'wp_revisions_to_keep', 'limit_revisions' );
function limit_revisions( $revisions ) {
return 3;
}

Ограничение ревизий в файле wp-config.php

В этом примере я ограничиваю их до 3:

define ('AUTOSAVE_INTERVAL', 300); // секунды

define ('WP_POST_REVISIONS', 3);

Цифра 3 обозначает максимальное количество доступных ревизий. Вы можете изменить её на 0 или false и отключить ревизии полностью.

Сокращаем количество редакций контента до 3.

Важно добавить код над 'ABSPATH', иначе он не будет работать.

5. Избавьтесь от лишних плагинов

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

Обратите внимание! НЕ ЗАБУДЬТЕ СДЕЛАТЬ РЕЗЕРВНУЮ КОПИЮ ПЕРЕД ЛЮБЫМИ МАНИПУЛЯЦИЯМИ С ВАШМ САЙТОМ.

6. Сеть доставки контента (CDN)

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

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

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

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

Вот список лучших бесплатных сервисов CDN для WordPress:

1. CloudFlare

2. Jetpack

3. Swarmify

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

4. Amazon CloudFront – предлагает гораздо больше гибкости и может кэшировать ваш сайт полностью. Несколько WordPress плагинов, которые легко интегрируются с Amazon CloudFront, например, WP Offload S3 Lite делают этот сервис предпочтительным.

5. Incapsula – кэширует весь статический контент. Это означает, что он обрабатывает HTML-файлы, изображения, JavaScript и все остальное.

7. Используйте Google Fonts

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

Вот почему лучше использовать шрифты доступные на CDN. И, как один из вариантов – использовать Google Fonts.

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

DNS-Prefetch

Также, я бы рекомендовал использовать следующую строку в шапке (header.php) вашего сайта(пример ниже). Это также позволит ускорить загрузку шрифтов вашего сайта.

<link rel="dns-prefetch" href="// fonts.googleapis.com /">

Если вы используете плагин Yoast SEO, этот пункт можно пропустить. Плагин сделает это за вас.

8. Уменьшите количество вызовов базы данных

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

<html xmlns="http://www.w3.org/1999/xhtml" dir="<?php language_attributes(); ?>">
<head profile="http://gmpg.org/xfn/11">
<meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?> 
charset=<?php bloginfo('charset'); ?>" />

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

<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
<head profile="http://gmpg.org/xfn/11">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

Примечание: БУДЬТЕ ВНИМАТЕЛЬНЫ ЭТА ПРОЦЕДУРА ТРЕБУЕТ БАЗОВЫХ ЗНАНИЙ О ФАЙЛАХ ШАБЛОНОВ PHP и WORDPRESS.

9. Используйте Lazy Load

Если на вашем сайте много изображений, то ваш сайт может выиграть от «ленивой загрузки».

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

Для «ленивой загрузки» изображений, фреймов и видео вы можете использовать плагин Lazy Load by WP Rocket.

10. Исправьте ошибки HTTPS / SSL

Если вы переключаете свой сайт на HTTPS / SSL, вполне вероятно, что вы можете столкнуться с ошибками смешанного содержимого.

Ошибки смешанного содержимого.

Самый простой способ это исправить - установить плагин, такой как Really Simple SSL.

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

Это может оказать влияние на производительность вашего сайта.

Есть масса вариантов исправить эту ситуацию, но они главным образом касаются работ по замене http на https в базе данных. Что может вызвать некоторые затруднения.

Поэтому может быть использован более простой вариант:

Чтобы настроить перенаправление HTTP на HTTPS, вам нужно добавить следующий код в ваш файл .htaccess.

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

</IfModule>

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

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