Всем привет, дорогие друзья, читатели in4wp.ru. Сегодня лазил по блогам, искал интересные блоги. чтобы подписаться. И обратил внимание на то, что многие блоги загружаются достаточно долга. Решил провести некоторые подсчеты, а как быстро загружается наш блог – и был очень удивлен полученным цифрам.
Как оказалось и наш блог не так быстро работает как оказалось. А ведь скорость загрузки сайта является одним из важных параметров. Медленная скорость отпугивает посетителей и НЕ мотивирует читателей оставлять комментарии. НУ, правда ведь?
Итак, о чем мы сегодня с вами пообщаемся:
1. Как проверить скорость работы блога?
2. Список плагинов для ускорения блога!
3. Как ускорить блог без плагинов?
4. Ускорение блога через оптимизацию изображений!
5. НЕ РЕКОМЕНДУЕМЫЙ способ ускорения блога!
6. Выводы
Как проверить и проанализировать скорость загрузки блога
Сервисов для проверки скорости вашего блога на самом деле масса. Я пользовался вот этим – , но есть еще вот такие:
Может быть каким-то вы уже пользовались? Напишите пожалуйста об этом пару слов в комментариях. Почему именно им пользовались. Ну и о результатах проверки тоже любопытно узнать.
Я выбрал пингдом потому что мне понравилась наглядность полученной информации. Наглядно видно какой скрипт не ускорит работу wordpress, а тормозит её. И вот что у меня получилось.

Я как увидел – глаза на лоб полезли. 7.5 секунд? Танунафик!
Ну, скорость мы замерили. Что дальше?
А дальше мы проводим анализ скриптов и стилей, которые подгружаются при загрузке вашего блога. Это все видно прямо на сайте, которым вы проверяете работу блога.

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

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

Как ускорить работу сайта (блога) ручками (без плагинов)?
А теперь самое время узнать как ускорить блог руками, с использованием вставки каких-то кодов. Ну, давайте обо всем по порядку.
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\.0[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>
# 1 день
<filesMatch "\.(html|htm|php)$">
Header set Cache-Control "max-age=172800, private, must-revalidate"
</filesMatch>
</ifModule>
# использование кеша браузеров
FileETag MTime Size
<ifmodule mod_expires.c>
<filesmatch ".(jpg|jpeg|gif|png|ico|css|js)$">
ExpiresActive on
ExpiresDefault "access plus 1 year"
</filesmatch>
</ifmodule>
#Запрет отдачи HTTP-заголовков Vary браузерам семейства MSIE
<IfModule mod_setenvif.c>
BrowserMatch "MSIE" force-no-vary
BrowserMatch "Mozilla/4.[0-9]{2}" force-no-vary
</IfModule> |
Позволю себе заметить, что после применения этого способа скорость загрузки блога возросла в 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. В каждом файле стилей много лишнего. Ведь они созданы чтобы их потом исправлять. Если вы исправлять там, ковырять ничего не собираетесь – оптимизируйте эти файлы следующим образом.
- Заходим на сайт
- Загружаем в него наш CSS файл
- Сервис бесплатно обрабатывает наш файлик и удаляет все лишнее (комментарии, пробелы, переносы и пр.)
На выходе получается файл стилей без ничего лишнего. Он полностью рабочий но чутка не удобен для “ковыряния”. Вы его сохраняете и загружаете обратно на хостинг, заменяя при этом старый файл стилей.
5. Отключение ревизий постов
При написании статей в движке происходит постоянно сохранение резервных копий и соответственно засоряется ваша база данных. Конечно, вы можете с завидной регулярностью пользоваться плагинами для чистки базы, но зачем? Давайте просто отключим эти резервные копии (ревизии)
Открываем wp-config.php и прописываем в него следующее:
define('WP_POST_REVISIONS', false); /* отключаем ревизии */
define('EMPTY_TRASH_DAYS', 0); /* отключаем корзину */ |
Прямо в начало файла можно и добавить. Вот как это получилось у меня:

6. Устанавливаем ТОЛЬКО русский язык для блога
В уже знакомом наш файлике wp-config.php по умолчанию есть вот такая строчка:
define ('WPLANG', 'ru_RU'); |
if (strpos($_SERVER['REQUEST_URI'], 'wp-admin')) define ('WPLANG', 'ru_RU'); else define ('WPLANG', 'ru_RU_lite'); |
6. Редактируем header.php
А теперь мы займемся уменьшением количества запросов к БД. Конечно все это мы делаем в целях ускорения блога. Так вот. Вот вам скрин того что есть у меня в блоге в файле 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-форматов выбрать качество сохранения.
Не рекомендуемый способ ускорения работы сайта!
Способ есть но я бы его не рекомендовал. Смысл в том чтобы отключить обновления 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 (семь) раз!!!

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

Вот, ну, на этом видимо пора прощаться.
Кстати, как вам наши кнопки соц сетей?
Как оказалось не все шаблоны поддерживают такой стиль, видимо скрипты конфликтуют. Покликайте пжлст, давайте проверим работают ли :).
Помните!!! Страницы блога, которые загружаются меееедленно – никогда не выйдут в ТОП. Посмотрите в выдачу. Всё что там есть – загружается в пределах разумного. Так что удачных вам оптимизаций скорости.
Конечно, в самом конце статьи для вас кое-что вкусное и интересное (кому как а мне было страшновато смотреть на это):
С уважением, один из авторов in4wp.ru

Скорость моих сайтов от 1.24 до 3.84. И общая оценка 84-86. Если по _tools.pingdom.com замерять.
В целом, специальные меры по ускорению не проводил. Но изначально “профилактировал”, то есть старался максимум писать в коде и минимум ставить плагинов.
А так, статья, конечно, кладезь технических знаний по ускорению сайта/блога..
Спасибо, рады что понравилось
Автор старался
Меня пока выручает Hyper-Cache. Картинки не сжимаю, каюсь. Похоже, эксперименты завершились удачно? Наберусь смелости, попробую выполнить Ваши советы!
А не забудьте написать нам о ваших успехах в ускорении блога! Если будут вопрос – сразу задавайте!
Давненько не проверял скорость загрузки своего сайта. На глаз вроде нормально, но интересно проверить. Картинки у меня в основном оптимизированы. Плагин кэширования стоит. В кодах я не силен, так чуть чуть. Но заняться файлом “htaccess” не помешало бы. Только не знаю как определить место для предлагаемых кодов.
Александр, спасибо за комментарий. Интересны все-таки результаты ваших замеров. Если не сложно, отпишитесь. А по поводу .htaccess – вставляйте после всего что есть – не ошибетесь.
Проверил скорость загрузки своего сайта не отходя от кассы. как говорится. Результат меньше четырех секунд. А в таблице сложно разобраться. Только понял, что шапка долго грузится, но она большая и кликабельная.
Спасибо за подсказку.
Еще проверил свой новый интернет магазин. Он полнофункциональный, правда партнерский, но этого не видно. Работает самостоятельно. Там вообще скорость загрузки чуть меньше двух секунд.
На вашем блоге ну очень большая шапка. Одна шапка занимает 837кб (почти мегабайт). Это для картинки ну очень много. Как-то оптимизировать его нужно. Оптимизация картинок вообще вещь нужная.
А про магазин – хотелось бы увидеть адресок, посмотреть бы на него.
Хорош магазин
Молодцы. Мне показало скорость загрузки 5 секунд. Скриптов и картинок оооочень много, хоть они и небольшие по объему. Это ведь партнерский магазин или личный оффлайн бизнес?
Сервис показал: 1,95 сек. Магазин партнерский. Но домен мой. Посетитель может оформить заказ прямо на сайте, без каких либо переходов. Прямая ссылка, без рефок, обрезать нечего. Они осуществляют доставку, а я занимаюсь рекламой и получаю комиссионные.
Никак не могу разобраться с файлом htaccess. Дело в том, что я в нем уже вносил изменения по рекомендации друга, а первоначальный вид файла не остался. Вы не скажете, где найти образец этого файла?
ОЧень часто этот сайт вообще отсутствует и его нужно создавать руками. Очень часто этот файлик – пусть, пишите туда что хотите :).
Здравствуйте! Проверьте, пожалуйста, мой сайт narodnaiamedicina.ru и подскажите как улучшить показатели скорости загрузки.
С уважением, Николай Бодарев