БАЗА подписчиков за 1 месяц! (Секретная технология)minimazer

Как ускорить блог на WordPress. Полный набор методов ускорения.


как ускорить блог на wordpress

Всем привет, дорогие друзья, читатели in4wp.ru. Сегодня лазил по блогам, искал интересные блоги, чтобы подписаться. И обратил внимание на то, что многие блоги загружаются достаточно долга. Решил провести некоторые подсчеты, а как быстро загружается наш блог – и был очень удивлен полученным цифрам.

Как оказалось и мой блог не так быстро работает как оказалось. А ведь скорость загрузки сайта является одним из важных параметров. Медленная скорость отпугивает посетителей и НЕ мотивирует читателей оставлять комментарии. НУ, правда ведь?

Итак, о чем мы сегодня с вами пообщаемся:

Но сначала небольшой план статьи:


Как проверить и проанализировать скорость загрузки блога

Сервисов для проверки скорости вашего блога на самом деле масса. Я пользовался вот этим – tools.pingdom.com , но есть еще вот такие:

sitespeed.ru
pr-cy.ru
developers.google.com
webpagetest.org
showslow.com

Может быть каким-то вы уже пользовались? Напишите пожалуйста об этом пару слов в комментариях. Почему именно им пользовались. Ну и о результатах проверки тоже любопытно узнать.

Я выбрал пингдом потому что мне понравилась наглядность полученной информации. Наглядно видно какой скрипт не ускорит работу wordpress, а тормозит её. И у меня получилось что блог загружался целых 8 секунд.

Я как увидел – глаза на лоб полезли. 7.5 секунд, если быть точнее? Танунафик!

Ну, скорость мы замерили. Что дальше?

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

ускоряем блог

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

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

к оглавлению ↑

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

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

WP-Optimize – Можно догадаться уже что этот плагин что-то оптимизирует. А оптимизируем он вашу базу данных. Удаляет все черновики, например. В итоге ваша база данных становиться значительно меньше и как следствие – работает быстрее чем раньше.

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

WP-HTML-Compression – Аналогично из названия уже понятно, что этот плагин сжимает ваши html странички, чем ускоряет загрузку блога.

WP Resized Image Quality – Не особо важен для ускорения сайта лично для меня, хотя может кому как. Поэтому выкладываю. Задача плагина – изменить уровень сжатия загружаемых изображений.

Читайте также:  UTM метки: что это, как их создать, настроить, можно ли генерировать?

Hyper Cache – Кеширует ваш блог, снижает нагрузку на хостинг. По отзывам даже лучше чем WP super cache или total cache. Настроек достаточно много, но они на русском и, в принципе, все должно быть понятно. Если что-то не будет понятно – пишите, обсудим, подскажем. Рекомендую!

Autoptimize – Тоже ничаво такой плагин. Оптимизируем код стилей и js-скриптов вашего блога. Оптимизирует, в смысле сжимает их путем убирания не нужных отступов и пробелов. Опускает все ява скрипты их “хэдера” в “футер”. Чтобы они выполнялись уже после загрузки страницы. Также с помощью этого плагина можно объединить все css файлы в один. Это также ускорит загрузку вашего блога. Рекомендую!

Если вы знаете еще какие-то плагины для ускорения загрузки блога – напишите о них в комментариях и я включу их в этот список. Я заранее благодарен вам!

к оглавлению ↑

Как ускорить работу сайта (блога) ручками (без плагинов)?

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

1. Настройка сжатия gzip.

Я надеюсь вы в курсе что в корне вашего сайта обязательно должен быть файл .htaccess . Так вот в него нужно добавить следующие директивы:

<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE text/css
<IfModule mod_setenvif.c>
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.[678] no-gzip BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
</IfModule>
</IfModule>

После применения этого способа – скорость моего блога по замеру выросла на 10%.

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

Дальше будет кеширование блога. Что такое кеш все знают надеюсь. Это какая-то часть данных сохраняется на вашем же компьютере, и при повторном заходе эти данные не нужно скачивать, а они берутся уже из вашего локального хранилища. Ну, как-то так. Так вот, чтобы это сделать – нам нужно в тот же .htaccess прописать следующее:

<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access 7 days"
ExpiresByType application/javascript "access plus 1 year"
ExpiresByType text/javascript "access plus 1 year"
ExpiresByType text/css "access plus 1 year"
ExpiresByType text/html "access plus 7 day"
ExpiresByType text/x-javascript "access 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType image/jpg "access plus 1 year"
ExpiresByType image/x-icon "access 1 year"
ExpiresByType application/x-shockwave-flash "access 1 year"
<IfModule>
 
# Cache-Control
<IfModule mod_headers.c>
# 30 дней <filesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|swf)$"="">
Header set Cache-Control "max-age=2592000, public"
</filesmatch>
 
# 30 дней
<filesmatch "\.(css|js)$"="">
Header set Cache-Control "max-age=2592000, public"
</filesmatch>
# 2 дня
<filesmatch "\.(xml|txt)$"="">
Header set Cache-Control "max-age=172800, public, must-revalidate"
</filesmatch&gt;
# 1 день
<filesmatch "\.(html|htm|php)$"="">
Header set Cache-Control "max-age=172800, private, must-revalidate"
</filesmatch>  # использование кеша браузеров
FileETag MTime Size
<filesmatch ".(jpg|jpeg|gif|png|ico|css|js)$"="">
ExpiresActive on
ExpiresDefault "access plus 1 year"
 
#Запрет отдачи HTTP-заголовков Vary браузерам семейства MSIE
BrowserMatch "MSIE" force-no-vary
BrowserMatch "Mozilla/4.[0-9]{2}" force-no-vary

Позволю себе заметить, что после применения этого способа скорость загрузки блога возросла в 4 раза! А показатель Perf.Grade вырос с 83 до 94! т.е. скорость загрузки блога оптимизирована практически на 100%!

3. Отключаем хотлинки.

Опять защищаемся от нерадивых вебмастеров. Бывают некоторые индивидуумы, которые не хотят загружать свой сервак. И им лень даже стибрить ваши картинки. Они при публикации статей просто ставят ссылку на ваши картинки, которые находятся на вашем серваке и все. Это называется “Хотлинк”. Его сайт никак не нагружается, а ваш – увы, нагружается. Так вот, чтобы такого не происходило, нужно сделать следующее в том же самом файле .htaccess :

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(www\.)?dvpress\.ru/ [NC]
RewriteCond %{HTTP_REFERER} !^$
RewriteRule .(jpe?g|gif|bmp|png)$ image/nohotlink.png [L]

4. CSS сжатие.

У многих блогов больше одного CSS файла, тем более если учесть что многие плагины используют своё кунг-фу CSS. В каждом файле стилей много лишнего. Ведь они созданы чтобы их потом исправлять. Если вы исправлять там, ковырять ничего не собираетесь – оптимизируйте эти файлы следующим образом.

Читайте также:  Расскажите, а зачем вам нужен блог?

— Заходим на сайт styleneat.com
— Загружаем в него наш CSS файл
— Сервис бесплатно обрабатывает наш файлик и удаляет все лишнее (комментарии, пробелы, переносы и пр.)

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

5. Отключение ревизий постов

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

Открываем wp-config.php и прописываем в него следующее

: define(‘WP_POST_REVISIONS’, false); /* отключаем ревизии */
define(‘EMPTY_TRASH_DAYS’, 0); /* отключаем корзину */

Прямо в начало файла можно и добавить. Вот как это получилось у меня:

ускоряем блог

6. Редактируем header.php

А теперь мы займемся уменьшением количества запросов к БД. Конечно все это мы делаем в целях ускорения блога. Так вот. Открываем его. Как видим, тут есть вот такие фразочки, типа:

<link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="<?php bloginfo ('rss2_url'); ?>" >

Вот смотрите. В таком виде в котором оно сейчас есть – это лишний запрос к БД для получения сведений об RSS ленте. Но все данные нам всегда известны и эти данные не меняются. Зачем тогда этот запрос?

Идем на свой блог и нажимаем комбинацию клавиш CTRL+U – перед нами открывается исходный код нашей страницы. В шапке (где-то сверху) ищем нечто подобное:

Вот что у вас должно быть в этом файле – прямые пути! Вот этой готовой строкой и нужно заменить запрос в файле header.php. Нет лишних запросов – нет проблем. Ради примера решился я посмотрел код известных блоггеров. Вот попался мне Александр Бобрин. Посмотрим что у него в коде:

бобрин ускоряет блог

Что мы видим? Ни одного запроса в базу данных. Видим только абсолютные пути.

А теперь представьте сколько подобных запросов может быть на Вашем блоге? Поэтому рекомендую провести чистку вашего header.php. Код в тегах TITLE трогать нельзя!!!

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

к оглавлению ↑

Ускорение сайта через оптимизацию изображений.

Как правильно оптимизировать изображения? Надеюсь у вас есть фотошоп! Все что нужно это:

  • 1. Открыть картинку в фотошопе.
  • 2. Нажать Файл – Сохранить для WEB (или сочетание клавиш CTRL + ALT + SHIT + S ).
  • 3. Выбрать нужный формат изображения (я чаще всего выбираю PNG) .
  • 4. Для JPG-форматов выбрать качество сохранения.
Читайте также:  Terms Descriptions: Как превратить слова в ссылки?

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

к оглавлению ↑

Не рекомендуемый способ ускорения работы сайта!

Способ есть но я бы его не рекомендовал. Смысл в том чтобы отключить обновления wordpress и всех плагинов, которые есть. Конечно, иногда запросы на наличие обновлений слегка подгружают работу блога. Однако давайте не будем забывать и о безопасности wordpress. Будете пренебрегать безопасностью – скорость вашего взломанного блога уже никому не нужна будет. Но , если вы у нас экстремал, пожалуйста вот способ:

Идем в файл function.php и прописываем туда следующие код, которые запрещает проверку обновлений самого движка wordpress:

remove_action( 'wp_version_check', 'wp_version_check' ); remove_action( 'admin_init', '_maybe_update_core' ); add_filter( 'pre_transient_update_core', create_function( '$a', "return null;" ) );

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

remove_action( 'load-plugins.php', 'wp_update_plugins' ); remove_action( 'load-update.php', 'wp_update_plugins' ); remove_action( 'admin_init', '_maybe_update_plugins' ); remove_action( 'wp_update_plugins', 'wp_update_plugins' ); add_filter( 'pre_transient_update_plugins', create_function( '$a', "return null;" ) );

Ну и большую роль играет хостинг. Если хостинг настроен не качественно – вы будете проигрывать конечно. Кроме этого поинтересуйтесь у вашего хостера, где находятся его сервера. Если сервера находятся в США – вам не поможет никакая оптимизация загрузки,и ваш сайт будет загружаться раза в 4 медленнее чем любой сайт, находящийся на московских серверах. Причина? Удаленность! Пока сигнал дойдет до туда, пока вернется, ну вы меня поняли!

к оглавлению ↑

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

Итак, у нас была полная загрузка главной страницы аж 7.5 секунд и вся страница “весила” порядка 1 мегабайта. Что не есть хорошо. Ах, да, было еще целых 34 запроса.

Что мы сделали:

1. Отказались от ненужных плагинов.
2. Оптимизировали изображения, теперь картинки у меня весят менее 100кб (я думаю этот порог еще уменьшить) – только за счет этого оъем страницы уменьшился почти вдвое!
3. Вы включили gzip сжатие.
4. Мы руками включили кеширование сайта через файл .htaccess. Кстати, после ручных установок плагин Hyper-Cache уже не так эффективен. По изменерениям скорости загрузки блога изменений до включения плагина и после включения плагина не наблюдалось.
5. Мы почистили наш header.php (крайне незначительное увеличение скорости, подобными вещами можно принебрегать, конечно, если ваш блог не тысячник)

Итого у нас получилось ускорить блог практически в 7 (семь) раз!!!

Справедливости ради нужно сказать что лучше делать несколько замеров. Значения будут колебаться по различным причинам. И желательно знать максимальное значение. Мне удалось поймать вот такой максимум:

ускорение сайта

Вот, ну, на этом видимо пора прощаться.

Пользуясь случаем, хочу объявить о том, что у меня есть БЕСПЛАТНЫЙ курс по созданию блога с нуля — ПОЛУЧИТЬ КУРС. Помогаю новичкам в развитии.

Кстати, как вам наши кнопки соц сетей? Как оказалось не все шаблоны поддерживают такой стиль, видимо скрипты конфликтуют. Покликайте пжлст, давайте проверим работают ли :).

Помните!!! Страницы блога, которые загружаются меееедленно – никогда не выйдут в ТОП. Посмотрите в выдачу. Всё что там есть – загружается в пределах разумного. Так что удачных вам оптимизаций скорости.

С уважением, Тумилович Денис

Понравилась статья? Расскажи друзьям:


Мой подарок подписчикам

Подписывайтесь на новости блога и получите подарок - книгу "Как заработать 1000$ в первый месяц". В ней я рассказал свои наблюдения исходя из своего опыта. Я выделил всего ТРИ метода для заработка.

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

Такой e-mail уже зарегистрирован. Воспользуйтесь формой входа или введите другой.

Вы ввели некорректные логин или пароль

Извините, для комментирования необходимо войти.

34 комментария

по хронологии
по рейтингу сначала новые по хронологии

Привет! Классные решения ты советуешь для ускорения блога! Хотелось бы попробовать вписать код в файл .htaccess для кеширования браузера, так как у меня вообще есть глобальная проблема с этим делом! Но...у тебя стоит зашита от копирования и я не могу взять твой предоставленный код! Как можно его заполучить у тебя?

Заранее спасибо

Автор

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

Денис, вопрос не в тему, подскажи как сделать строку авторства без плагина? Есть ли статья у тебя на блоге об этом или такой возможности нет? Информации на твоем блоге очень много и я просто не могу найти

Автор

Все есть, поищи в статьях про защиту от копирования или про хэштеги

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

Автор

Ок, если не получится - обратись в поддержку, решим вопрос.

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

А сейчас все нормально стало

Спасибо за полезную статью. Обязательно ею воспользуюсь.

"3. Отключаем хотлинки."

Вот сей пункт не на всех хостингах работает.

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

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

Автор

Спасибо, тёзка, за ценный каммент. Я что-то не подумал об этом. Подумал, раз у меня нормально все, значит у всех будет нормально работать.

А подобные каменты палюбому скоро вознаграждаться будут! Это всем на заметку!

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

Автор

Александр. Если коды - все еще представляю сложность - обращайтесь. Буду рад помочь.

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

Автор

В любое место, можете пропустить строчку и вставить мой вариант кода.

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

В основном, использую такие же методы ускорения

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

А вот в какое место файла htaccess вставлять приведенный код? Или это не очень существенно?

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

Хочу скопировать код для файла htaccess, возникла проблема. Копирую, сохраняю себе на комп, нарушается форматирование. Пробовал несколько редакторов. Notepad вообще все загнал в одну строчку.

Попробовал сделать форматирование вручную, получается, но не проходят некоторые строчки и отдельные слова, а символ: "L" перевернут вверх ногами. Наверное срабатывает защита и не дает нормально копировать. Можно решить этот вопрос?

Автор

Можно, напишите мне в поддержку.

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

Автор

Прошу пояснить вопрос про отображение страниц сайта. А про pagenavi - ок, распишу.

Денис, у меня проблема именно с wp-pagenavi, почему-то на начальных страницах идет нормальная нумерация 1,2,3 и т.д., все видно, а затем, если переходишь например на 20 страницу, уже пишет только страница 20 из и пропадает почему-то остальная нумерация. Пробовал переустановить плагин, ничего не изменилось. Поэтому и хочу убрать плагин и сделать нумерацию страниц другим методом

Автор

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

Проблему понял. Ок, опишу в статье

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

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

Я на своем блоге использую плагин Better WordPress Minify. Этот плагин помогает совместить и уменьшить CSS и JavaScript файлы. Улучшается совместимость с другими плагинами и с установленной темой. Скорость значительно увеличилась после установки. Рекомендую в общем.

А сегодня я не рекомендую Better WordPress Minify, столкнулась с такой вещью - слишком большая нагрузка на сервер, оказалось - Better WordPress Minify создает, послк исследования сайта, я заказывала его. Пришлось убрать, на 100 запросов меньше стало в секунду.

Хотел уже попробовать, да вовремя увидел второй комментарий. Значит, все таки этот плагин нагружает сервер и использовать его не стоит!!! Будем пробовать другие методы...

Очень полезная статья – добавил в «Избранное». Измерил скорость загрузки своего блога. Получилось – 4,61.

P.S. Не хило ты свой блог ускорил))) В 7 раз...

У в общей сложности получилось в 4 раза ускорение, тоже не хило.

Я в .htaccess включила сжатие и скорость загрузки увеличилась в 3 раза, теперь 2 секунды, фантастиш. Для чистки базы я использую плагин WP Clean Up, похож на WP-Optimize

Посоветуйтесь с тех поддержкой хостинга. Должны что-то подсказать.

На загрузку страницы сильно влияет подключение JS-скриптов в теге . Загрузка страницы останавливает, пока не дозагрузятся JS-файлы. Для ускорения загрузки страницы их необходимо подключать перед закрывающим тегом .