Улучшаем скорость WordPress

Сайтостроение WordSmall

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

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

Оптимизация Базы Данных.

Оптимизировать БД можно несколькими способами:

В ручную.
С помощью плагина.

Воспользуемся ручным способом, тем более что сложного тут ничего нет, достаточно минимальных знаний. Переходим в phpMyAdmin, выбираем нашу БД см.№1

Выбар БД

, далее «Отметить все» и выбрать из выпадающего списка «Оптимизировать таблицу» см.№2.

Оптимизировать БД

Через несколько секунд появится сообщение об окончании успешной оптимизации. см.№3.

Оптимизировать БД

Если это кажется трудным способом, можете воспользоваться плагином WP-Optimize.

Отключить ревизии WordPress.

Ревизии — это сохранение записей, при внесении в них каких-либо изменений. То есть, когда вы что-то изменили, уже в существующей записи, и нажали обновить, то изначальное состояние сохраняется в БД.см.№1.

Отключаем ревизии.

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

Отключаем ревизии.

Переходим на сайт по FTP-клиенту, заходим в папку «wp-includes», находим файл default-constants.php, и ищем в нем такой код:

define('WP_POST_REVISIONS', true);

Нам нужно изменить значение «true» на «false». Меняем, сохраняем и все, ревизии мы отключили.

Но вносить изменения прям в системные файлы не рекомендуется. Лучше всего отключить через файл function.php таким образом:

//отключение ревизий
function my_revisions_to_keep( $revisions ) {
    return 0;
}
add_filter( 'wp_revisions_to_keep', 'my_revisions_to_keep' );

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

удаление ревизий

В поле ввода ввести следующий код:

DELETE FROM wp_posts WHERE post_type="revision"

Затем жмем «ok», соглашаемся с подтверждением и через несколько секунд запрос будет выполнен. Появится сообщение см.№3.

ревизии удалены

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

Важно: в коде на запрос удаления ревизий подставлен префикс по умолчанию wp_posts.

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

Пример: bbt_posts, db_posts и т.д.

Удаляем ненужные плагины.

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

Отключаем поиск обновления.

По умолчанию WordPress проводит поиск обновления плагинов, тем, движка. Это может показаться маловажным значением, но это так же относиться к замедлению загрузки сайта. К примеру, пользователь зашел на ваш сайт, открывает какую-нибудь страницу, и как раз в данное время происходит поиск обновления. В результате чего будет замедляться загрузка сайта до окончания поиска.
Поэтому лучше всего отключить обновления и проводить его вручную (в то время когда понадобиться). Здесь нам поможет плагин «Disable All WordPress Updates». Устанавливается плагин стандартным путем и у него нет настроек. Когда требуется проверить наличие обновления, стоит только деактивировать плагин, и поиск будет произведён. Желательно это делать, когда меньше всего посетителей на вашем сайте.

Отключаем Hotlinking

Хотлинк – это ссылка на изображение, загружаемое с чужого ресурса. Простыми словами, человеку понравилось изображение с вашего сайта. И допустим он не хочет искать такое же самое тратить на это время. Он просто берет и копирует ссылку на изображение, затем вставляет ее у себя на сайт и в результате получится то, что картинка загружается с вашего сервера на чужом сайте. А если таких людей будет много, которые будут загружать картинки с вашего сервера, ваш сайт начнет плохо грузиться, больше тратить ресурсов. Чтобы такого не случилось, нужно отключить такую возможность.

Переходим на сайт, используя любой FTP-клиент. В корневой папке находим файл «.htaccess» и перед надписью «# END WordPress» вставляем следующий код:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?Доменвашегосайта.ру/.*$ [NC]
RewriteRule \.(gif|jpg|js|css)$ - [F]

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

Кэширование WordPress с помощью WP Super Cache

Это важная часть в улучшении загрузки, поскольку кэширования намного улучшает скорость WordPress. Существует большое количество плагинов которые выполняют это действие. Мы рассмотрим возможно самый популярный WP Super Cache. А так же пару вопросов, что такое кэширования? И какую работу оно выполняет.

Что такое кэширование и принцип работы ?

Это сохранения в буфер обмена (специальная папка) запросов к веб-страницам, с целью повторного их использования без обращения к базе данных. Другими словами, когда посетитель вашего сайта открывает какую-то статью, то происходит принцип кэширования. Он сохраняет копию данной страницы в специальной папке для дальнейшего использования. Второй раз когда будет запрос к этой же странице, WordPress в первую очередь обратится к буферу обмена (специальная папка). Если там будет копия страницы к которой обращается пользователь, то он достанет ее оттуда, не делая запросов к БД. Таким образом улучшается загрузка страниц и в результате меньше нагрузки на сам сервер.

Настройка WP Super Cache.

После установки плагина и активации требуется настроить его для правильной работы. Переходим на вкладку «настройки — WP Super Cache», в первую очередь мы включаем кэширование и жмем «обновить» см.№1

Настройка WP Super Cache

Дальше — переходим на вторую вкладку «настройки», здесь нужно выбрать более подходящий вариант кэширования. См.№2

Настройка WP Super Cache

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

Изначально выбирайте первый, если что-то будет ни так, то переключаемся на второй вариант. Далее нужно выбрать «включить сжатие кэширования» или нет см.№3

Настройка WP Super Cache

Тут все зависит от вашего хостинга. В начале выбираем сжатие — это немного увеличит нагрузку, но ускорит процесс и уменьшит размер файлов кэша. Если будет сильная нагрузка на сервер, начнет больше занимать памяти, тратить больше времени, ресурсов. В этом случае сжатие нужно будет отключить. Следующим шагом отмечаем галочкой пункт «авто перестройка кэша» и «Обновлять страницу при добавлении нового комментария». Теперь жмем кнопку «обновить». После обновления плагин выдаст сообщение, что нужно обновить правила «mod_rewrite». Спускаемся немного вниз и нажимаем «обновить». см.№4.

WP Super Cache

Плагин добавит свои записи в файл «.htaccess» для правильной работы.

Теперь настраиваем очистку кэша как показано на изображении см.№5

Настройки кэша

и нажимаем «сохранить изменения» см.№6.

настройка кэша

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

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

кэш

Если такие строки присутствуют, значит, плагин работает. Вот и все.

В окончании настроек установите права на доступ «755» к папке «wp-content».

Улучшение скорости WordPress. Продолжение следует…

Автор, он же Андрей, он же Admin, он же WordSmall

Лентяй-любитель, окончил высшую школу безделья с многочисленными знаками отличия. Создатель этого небольшого «чудо-блога» о еще более «чудном» контенте.

E-mail Google+ Twitter
Комментариев: 4
  • Вячеслав

    А как сделать, что бы сохранялись не все ревизии, а. к примеру, последние 5?? Полностью отключать не хотелось бы... Спасибо.

    • Андрей

      Можно воспользоваться следующим кодом, который нужно прописать в «wp-config.php» define ('WP_POST_REVISIONS', 5);

  • Вячеслав

    Спасибо, это было то что надо! а то по некоторым страницам было по 200 редакций!

    • Андрей

      Это много, подобного следует избегать.

Добавить комментарий
bold quote code