Как ускорить загрузку WordPress

Как ускорить загрузку WordPress

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

Важность ускорения ВордПресс

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

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

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

Выбор хостинга

Выбор хостинга

Основная и первостепенная задача во время разработки. Исходить необходимо из требований будущего проекта (функционал, загруженность, планируемая посещаемость, тема). Преимущество имеют SSD хостинги, предоставляющие высокую скорость обработки данных и взаимодействия пользователь-сайт. Если нет необходимости в значительной производительности – не нужно покупать дорогие тарифы.

Основные требуемые параметры.

  • Uptime 99,95% и выше. Данный показатель отображает время непрерывной работы вычислительной системы. Провайдеры, обеспечивающие меньшие характеристики не рекомендуются.
  • Объем оперативной памяти. Чем больше, тем лучше. Системе следует давать столько, сколько она требует. Важно иметь запас памяти для нештатных ситуаций (резких скачков посещаемости). Оптимальное значение – 2 Гб.
  • Частота процессора. Выбирается исходя из функциональности, сложности проекта и количества действий пользователей за единицу времени.
  • Тип носителя и объем дискового пространства. SDD значительно превосходят HDD в скорости работы и надежности – но стоимость аренды значительно дороже. Дисковое пространство – от 2 Гб для небольших блогов до 30 Гб для информационных порталов.
  • Расположение дата-центра. Стоит проанализировать регионы основной части аудитории, чтобы выбрать ближайший сервер. Этот параметр влияет на скорость загрузки страниц.

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

Выбор темы и плагинов

Выбор темы и плагинов

Шаблон должен соответствовать всем стандартам, не иметь ошибок в коде (или минимальное количество). Перед приобретением следует проанализировать скорость загрузки демо-версии. Нужно учитывать – действия с темой осуществляются на раннем этапе разработки ресурса. Замена шаблона работающего сайта может создать трудности с настройкой, редактированием контента, стилей и переиндексацией со стороны поисковиков. Если изначально скорость загрузки страницы не устраивает – необходима замена на более легкую тему. После завершения данного этапа переходят к дальнейшей оптимизации.

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

  • время загрузки расширений;
  • активные и неактивные плагины;
  • количество запросов к базе данных;
  • Проблема в том, что P3 несовместим с версией PHP 7.

Кеширование

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

Плагины

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

  • W3 Total Cache – известный плагин, установленный более чем 1 миллионом человек. Поддерживает множество типов серверов, функцию CDN, мобильные устройства и SSL. Кеширует страницы, изображения, сжимает CSS и JavaScript. Обладает весьма внушительным списком функций для ускорения загрузки WordPress.
  • WP Super Cache – расширение, имеющее несколько режимов кеширования, что позволяет не углубляться в детальные настройки. Активные пользователи плагина – более 2 миллионов человек. Доступна настройка для малоопытных вебмастеров и профессионалов.
  • WP Widget Cache – небольшой плагин с минимальным функционалом. Позволяет кешировать виджеты, чего не может сделать WP Super Cache. Рекомендуется использовать их вместе.

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

Кеширование браузера

Потребуется отредактировать файл «.htaccess», находящийся в корневой папке сайта. Перед внесением изменений нужно сделать резервную копию. Для включения кеша браузера добавляются следующие строки:
ExpiresActive on
ExpiresByType image/jpg "access plus 60 days"
ExpiresByType image/png "access plus 60 days"
ExpiresByType image/gif "access plus 60 days"
ExpiresByType image/jpeg "access plus 60 days"
ExpiresByType text/css "access plus 2 weeks"
ExpiresByType image/x-icon "access plus 2 weeks"
ExpiresByType application/pdf "access access plus 1 month"
ExpiresByType audio/x-wav "access access plus 1 month"
ExpiresByType audio/mpeg "access access plus 1 month"
ExpiresByType video/mpeg "access access plus 1 month"
ExpiresByType video/mp4 "access access plus 1 month"
ExpiresByType video/quicktime "access access plus 1 month"
ExpiresByType video/x-ms-wmv "access access plus 1 month"
ExpiresByType application/x-shockwave-flash "access access plus 1 month"
ExpiresByType text/javascript "access plus 2 weeks"
ExpiresByType application/x-javascript "access plus 2 weeks"
ExpiresByType application/javascript "access plus 2 weeks"

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

Сжатие сайта

Сжатие сайта

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

Популярные методы:

  • optimizilla.com – сервис позволяет сжать изображение от 10 до 40%. За раз доступна оптимизация 20 картинок;
  • TinyPNG/TinyJPG – сайт сжимает изображения до 55%, способен обработать до 20 элементов;
  • WP Smush – популярный плагин, оптимизирующий картинки после того, как они будут загружены в медиа-библиотеку. Процесс проводится вручную или автоматически;
  • EWWW Image Optimizer – еще одно расширение для обработки изображений. Использует утилиты OptiPNG, Jpegtran и pngquant для сжатия картинок.

Помимо графических элементов, следует сжимать другие файлы. Для этого подойдет ранее упоминаемый плагин W3 Total Cache. В арсенале инструментов имеет функции для включения gZIP сжатия. Чтобы включить, нужно перейти: «Главная страница плагина – Настройки – Кеш браузера – Включить HTTP (gzip) сжатие». Если используется Apache, компрессию можно включить, добавив строки в файл «.htaccess»:

<IfModule mod_deflate.c>
  Compress HTML, CSS, JavaScript, Text, XML and fonts
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
AddOutputFilterByType DEFLATE application/x-font
AddOutputFilterByType DEFLATE application/x-font-opentype
AddOutputFilterByType DEFLATE application/x-font-otf
AddOutputFilterByType application/x-font-truetype
AddOutputFilterByType application/x-font-ttf
AddOutputFilterByType application/x-javascript
AddOutputFilterByType application/xhtml+xml
AddOutputFilterByType application/xml
AddOutputFilterByType font/opentype
AddOutputFilterByType font/otf
AddOutputFilterByType font/ttf
AddOutputFilterByType image/svg+xml
AddOutputFilterByType image/x-icon
AddOutputFilterByType text/css
AddOutputFilterByType text/html
AddOutputFilterByType text/javascript
AddOutputFilterByType text/plain
AddOutputFilterByType text/xml
  # Remove browser bugs (only needed for really old browsers)
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
Header append Vary User-Agent
</IfModule>
Для серверов Nginx, добавляется следующий код в файл nginx.conf:
gzip on;
gzip_comp_level 2;
gzip_http_version 1.0;
gzip_proxied any;
gzip_min_length 1100;
gzip_buffers 16 8k;
gzip_types text/plain text/html text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript;
gzip_disable "MSIE [1-6].(?!.*SV1)";
gzip_vary on;
Такие манипуляции помогут сократить время ответа сервера WordPress.

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

Платформа сохраняет практически все файлы в процессе работы. Среди них имеется много мусора: удаленные комментарии, спам, старые редакции, трекбек и пингбек. Первое, что можно предпринять – установить ограничение на количество версий постов или вовсе убрать их сохранение. Для этого вносится код в wp-config.php:

define ( 'AUTOSAVE_INTERVAL', 300 );
define ( 'WP_POST_REVISIONS', false );

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

define ( 'AUTOSAVE_INTERVAL', 300 );
define ( 'WP_POST_REVISIONS', 4 );

Следующий шаг – оптимизация базы данных для увеличения скорости загрузки страниц. Обеспечивается при помощи плагина WP-DB Manager или WP-Optimize. Настроив время повторной очистки, система в автоматическом режиме будет убирать ненужный мусор.

Система CDN

Система CDN

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

  • MaxCDN – система, используемая бизнесом. Стоимость первого терабайта трафика – 39,95 долларов/год. Следующий пакет предоставляется по другому тарифу – 99 долларов/год за терабайт. Сервис легко интегрируется с популярными CMS;
  • Cloudflare – основную известность получила из-за бесплатных тарифов для доставки контента. Работает более 15 лет и за все время не изменяла пропускной способности в тарифах. Также предоставляются платные пакеты с начинающей стоимостью 20 долларов/месяц. Имеет множество других инструментов для анализа и защиты ресурса;
  • Rackspace – сервис с очень гибкой системой тарификации. Позволяет приобрести Гб для CDN за 18 центов. В месяц выходит около 18 долларов – в сумму включена услуга хранения данных (1Гб) и трафик (100 Гб). Для удобных расчетов параметров и цен имеется встроенный калькулятор.

Благодаря копированию статических файлов сайта в своих дата-центрах, удастся уменьшить время ответа сервера и улучшить конверсию.

Работа с файлами CSS и JavaScript

Работа с файлами CSS и JavaScript

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

Чтобы не засорять платформу расширениями, можно воспользоваться многофункциональным W3 Total Cache – в его арсенале имеется несколько инструментов для уменьшения файлов CSS и JavaScript.

Заключение

Проанализировав вышеуказанные рекомендации, можно отметить основные пункты, позволяющие сократить время ответа сервера WordPress:

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

Опыт показывает, что рассмотренные действия помогут увеличить скорость загрузки сайта на 30-60%. Проверка осуществляется через Google Pagespeed.