Как ускорить свой блог на WordPress? Как мега мощно ускорить свой wordpress блог? Оптимизация и изменение темы WordPress.
Как известно поисковая система Google оценивает сайт более чем по 300-м параметрам, а Яндекс пошел ещё дальше и учитывает более 700 факторов, которые влияют на поисковую выдачу. Большинство из низ не известно, но мы совершенно точно знаем как минимум пару десятков наиболее важных параметров, которые должны быть на высоте, если вы хотите чтобы сайт пробился в топ. Один из таких скорость загрузки вашего ресурса.
Кроме того сама характеристика скорости делится на несколько пунктов, а именно:
- Кеш браузера
- Код JavaScript и CSS
- Код HTML
- Размеры изображений и их «вес»
- Сжатие gzip
- Размеры элементов
- Всплывающие окна
- Работа сервера
- Количество элементов на страницу
Начинаем битву за скорость WordPress
Шаг №1. Как проверить скорость загрузки сайта и определить проблемные места?!
Сервисы для анализа сайта
Сервисы для анализа сайта
Для начала мы проверяем свой сайт для этого воспользуемся двумя замечательными бесплатными сервисами. Определение скорости загрузки – Google PageSpeed Tools и анализ сайта PR-CY . Есть и другие, но я думаю это лучшие, они дают наиболее точную оценку.
Используя их, вы поймете, что идеальных сайтов нет! У всех есть своя доля ошибок и проблемных мест.
Шаг №2. Меняем размеры и «вес» изображений на сайте
Как уменьшить изображения
Как уменьшить изображения
Это один из самых важных моментов, так как картинки тормозят загрузку больше всего. И одно из решений это уменьшить их вес. Для этого можно использовать несколько методов.
Уменьшаем размер перед загрузкой на сайт.
Можно менять размер перед «заливкой», для этого применяются графические редакторы или специальные программы. Самый простой откорректировать в банальной «Paint». Уменьшить до нескольких десятков килобайт.
Используем плагины WordPress.
Я пользуюсь именно этим методом в комплексе с первым. Для начала большие изображения уменьшаю в редакторе, а затем они автоматически сжимаются при загрузке на сервер с помощью плагина WP Smush . Он является самым популярным и удобным в обращении. Простой интерфейс и автоматическая работа. Кроме того вы можете сжать уже загруженные изображения до установки данного плагина. Делается это достаточно просто, заходите в библиотеку медиафайлов и возле каждого нажимаете «Smush Now».
При загрузке новых изображений, они корректируются автоматически.
Наряду с WP Smush есть и другие плагины, которые также пользуются спросом. Он вызван тем, что некоторые вызывают конфликты между уже установленными. Поэтому можно выбрать тот, который подходит именно вам. Вот их перечень.
Плагины WordPress для сжатия изображений:
- Плагин WP — EWWW Image Optimizer
- Плагин WP — TinyPNG / TinyJPG
- Плагин WP — Resize Image After Upload
- Плагин WP — ShortPixel Image Optimizer
- Плагин WP — Kraken Image Optimizer
- Плагин WP — Imagify
- Плагин WP — Optimus
- Плагин WP — CW image optimizer
- Плагин WP — SEO Friendly Images
- Плагин WP — Lazy load
- Плагин WP — Compress JPEG and PNG images
- Плагин WP — BJ Lazy Load
- Плагин WP — Prizm Image
Также отмечу, что некоторые имеют как бесплатную версию, так и платную. Основное отличие – количество уже загруженных изображений, которые можно сжать на сервере.
Шаг №3. Оптимизируем отображение картинок на страницах wordpress. Улучшаем «юзабилити»
Пользователь сам определяет размер
Я думаю не стоит обсуждать, что быстрее загрузится картинка в полном размере или её миниатюра. Ответ очевиден! Но миниатюра не дает возможность рассмотреть ваш скрин или фото в полном объеме. Особенно если на них имеются надписи. Как быть!? Есть золотая середина, увеличение картинок по клику мышки, в этом нам поможет плагин wp — . Уверен он лучший в своем роде, у него вообще нет настроек. Установили – он работает – очень удобно и просто.
Итак что мы делаем. Устанавливаем и активируем плагин Auto-highslide . Все изображения должны отображаться в среднем размере, а в разделе ссылка должно стоять – «Медиафайл» — иначе плагин Auto-highslide не будет работать. Смотрите на скрин ниже.
Это очень удобно, размер изображения выбирает сам читатель ваших страниц. Браузер загружает только средний размер и не грузит полновесную картинку, это увеличивает скорость сайта. И при необходимости пользователь сам увеличит изображение в один клик. Юзабилити на пять баллов!!! Очень удобно!
К слову, плагин wordpress — Auto-highslide не доступен для скачивания из админки, вы можете скачать его с нашей группы ВКонтакте в разделе документы . А полная статья о нём .
Шаг №4. Кеширование страниц сайта wp
Настраиваем кеш WordPress
Настраиваем кеш WordPress
Кеширование страниц – это важнейший параметр скорости загрузки сайта. Вы можете иметь ошибки в CSS и JavaScript, но кеш должен быть настроен обязательно. Он способен увеличить скорость загрузки вашего ресурса в несколько раз. Да, да вы не ослышались в несколько раз!
Есть несколько вариантов
Первый – это откорректировать файл.htaccess, но я стараюсь не ковырять код собственных сайтов, чего и вам советую. Лучше доверится специалистам. Однако если вы хотите рискнуть, то в файл.htaccess вставляем следующий код:
FileETag MTime Size
ExpiresActive on
ExpiresDefault «access plus 1 year»
Второй способ , наиболее распространенный – использовать плагин кеширования. Самый простой среди них – это WP Super Cache. Он не конфликтный, простой в настройке и подходит большинству блогов на wordpress.
Скачать WP Super Cache можно из админки. Устанавливаем и активируем.
Настройки WP Super Cache
Всё делаем как на скринах ниже:
И не забывайте сохранять настройки на каждой вкладке!
Есть также и другие плагины wordpress для кеширования:
- Плагин WP — WP-Cache
- Плагин WP — Hyper Cache
- Плагин WP — WP-Cache.Com
- Плагин WP — WP Rocket
- Плагин WP — WP Fastest Cache
- Плагин WP — WP Fast Cache
- Плагин WP — Wordfence Falcon
- Плагин WP — W3 Total Cache
- Плагин WP — Super Static Cache
- Плагин WP — Really Static
- Плагин WP — Next Level Cache
- Плагин WP — Lite Cache
- Плагин WP — Hyper Cache Extended
- Плагин WP — Gator Cache
- Плагин WP — Flexicache
- Плагин WP — Cachify
- Плагин WP — AIO Cache
- Плагин WP — Alpha Cache
- Плагин WP — Bodi0’s Easy Cache
- Плагин WP — Zen Cache (formerly Quick Cache)
- Плагин WP — Quick Cache (Speed Without Compromise)
Среди всех перечисленных, отмечу W3 Total Cache – это самый популярный плагин кеширования, количество его скачиваний зашкаливают. Но он будет тяжелым в настройке для новичков, очень много параметров. Кроме того сайт может слететь при неправильной настройке и слабых серверах. Я читал что разработчики обещают выжать максимум с хостинга при его использовании.
Ускоряем отображение элементов страниц
Шаг №6. Уменьшаем количество HTTP запросов, сжатие gzip
Отличный плагин для ускорения
Отличный плагин для ускорения
Продолжаем ускорять wordpress. Первое что мы делаем в этом разделе – устанавливаем Far Future Expiration Plugin. Это достаточно простой плагин, он уменьшает количество HTTP запросов. Кроме того позволяет использовать gzip сжатие.
Настройки Future Expiration Plugin
Важно!!! Если вы уже используете gzip сжатие с другим плагином, то поставьте галочку Enable Gzip Compression, дабы не было конфликтов. Напомню – если вы установили плагины кеширования, то обратите внимание – они тоже используют gzip. Если у вас стоит W3 Total Cache или WP Super Cache, то галочка также должна стоять в Enable Gzip.
Шаг №7. Оптимизируем CSS, JavaScrit и HTML коды
Как оптимизировать коды на wordpress
При оптимизации кодов и их сокращения варианта два – ковырять блог или установить плагин. Я предложу самый простой из них. Вы уже наверно догадались?! Берем плагин Autoptimize. Он описан в статье .
Устанавливаем, активируем. И сохраняем настройки по умолчанию. Там сложного ничего нет.
У него кстати есть альтернативный вариант – это Better WordPress Minify.
Шаг №8. Как уменьшить время ответа сервера wordpress
Проблема на сервере или на сайте
Вариантов почему время ответа сервера больше чем пол секунды может быть масса, но варианта всего два – либо проблемы на стороне сервера, либо на стороне сайта.
Как решить проблему на сайте.
Для начала используйте инструменты анализа, два наиболее популярных я предложил в начале этой статьи. Сам google рекомендует обратить внимание на проблемные места, а именно сокращение кодов, их оптимизацию, перенос наиболее ресурсозатратных и блокирующих в подвал чтобы время ответа сервера было не более 200 миллисекунд.
Кроме того, почистите спам, очистите корзину, удалите неиспользуемые плагины, метки, записи.
Шаг №9. Уменьшаем количество элементов на странице
Делаем сайт простым и понятным
Обратите внимание на тяжеловесов в сети, сайты с большой аудиторией, наиболее популярные ресурсы. Их отличает простота! Удобное меню, хорошее юзабилити, интуитивно понятная навигация.
То же должно быть и на вашем сайте! Уберите ненужные блоки из сайдбаров, сократите число рубрик, введите иерархию в разделах. В объемных статья добавьте шорткоды, возможно открывающиеся по клику пункты – например как в этой статье. Не используйте длинные HTML коды и скрипты, по возможности смещайте их в низ страницы. По возможности не используйте всплывающие окна – их никто не любит, ни поисковики, ни живые люди!!!
Но есть одно важное уточнение, по мере того как вы будете изменять сайт добавлять что-то новое, новые плагины или элементы меню, сайдбаров и прочего, результаты тестов могут меняться!!!
За сим Всё. Если у вас есть вопросы или дополнения к статье – пишите их в комментариях!
Вконтакте
Ускорение сайта WordPress до максимума. Увеличиваем скорость загрузки сайта.Как известно поисковая система Google оценивает сайт более чем по 300-м параметрам, а Яндекс пошел ещё дальше и учитывает более 700 факторов, которые влияют на поисковую выдачу. Большинство из низ не известно, но мы совершенно точно знаем как минимум пару десятков наиболее важных параметров, которые должны быть на высоте, если вы хотите чтобы сайт пробился в топ. Один из таких скорость загрузки вашего ресурса. Кроме того сама характеристика скорости делится на несколько пунктов, а именно: Кеш браузера Код JavaScript и CSS Код HTML Время ответа сервера Загрузка видимого контента Размеры изображений и их «вес» Сжатие gzip…
Обзор
26 мая 2014 в 19:05Ускоряем Wordpress
- WordPress
Wordpress в стандартной установке довольно медленный. По умолчанию движок не использует некоторые возможности современного Веба для значительного своего ускорения. Существует целая куча плагинов для оптимизации Wordpress"a. Давайте наведем в них порядок и проведем капитальную оптимизацию.
Прежде чем приступить, посмотрим, что показывает голая установка Wordpress по Pagespeed :
Результат 76 из 100 довольно низкий. Посмотрим, насколько можно увеличить этот показатель.
Серверная часть
Nginx
Если Вы еще не используете Nginx, пора переехать на него. Простое и мощное решение. Конфигурация для работы с поддержкой permalinks и кешированием статики:Server { server_name wp.com; root /var/www/wp; # путь к WP index index.php; location ~* ^.+\.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|rss|atom|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$ { access_log off; log_not_found off; expires max; # кеширование статики } location / { try_files $uri $uri/ /index.php?$args; # permalinks } location ~ \.php$ { fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; } }
PHP кеш
Если у Вас нет каких-то особых причин, по которым Вы не можете установить APC, включайте его обязательно. Проверяем наличие APC (в ответ получим список настроек APC):Php -i | grep apc
В версиях PHP после 5.5 есть встроенный модуль opCache, так что APC ставить не прийдется.
Тюнинг Mysql
Wordpress использует InnoDB, а это значит мы можем существенно увеличить производительность MySQL, подстроив ряд параметров (файл my.cnf) под наше железо:Размер буфера InnoDB лучше поставить в половину доступной оперативной памяти:
Innodb_buffer_pool_size = 256M
Не забываем включить кеширование MySQL:
Query_cache_size = 32M query_cache_limit = 1M
Более расширенная настройка MySQL для Wordpress.
Кеширование
Это наиболее важный пункт. Кеширование может дать значительное ускорение сайта и экономию ресурсов сервера. Для наглядности будем использовать ab от Apache . Проверим стандартную установку Wordpress без кеширования. Запросы направляем через локальную сеть, поэтому задержку ничего, кроме самого Wordpress"a не создает:Ab -c 10 -n 500 http://wordpress/
Получаем среднее время на запрос около 50мс:
Total transferred: 4183000 bytes HTML transferred: 4074500 bytes Requests per second: 17.62 [#/sec] (mean) Time per request: 567.421 (mean) Time per request: 56.742 (mean, across all concurrent requests) Transfer rate: 143.98 received
Хром показывает среднее ожидание ответа на уровне 150мс (сервер находится в Нидерландах):
WP Super Cache
Этот плагин позволяет включить кеширование буквально в одно действие. Кроме стандартных настроек, он содержит большое количество параметров для тюнинга кеша. Качаем плагин, активируем его в панели управления и включаем кеш:С включенным WP Super Cache получаем уменьшение среднего времени на запрос в 25 раз(!):
Total transferred: 4293500 bytes HTML transferred: 4146500 bytes Requests per second: 499.01 [#/sec] (mean) Time per request: 20.040 (mean) Time per request: 2.004 (mean, across all concurrent requests) Transfer rate: 4184.61 received
Cреднее ожидание ответа в Хроме уменьшилось в 3 раза:
В качестве серверной альтернативы WP Super Cache можно использовать Varnish . Он позволяет снизить время на обработку запроса еще почти на порядок, но само решение менее гибкое (хорошо подойдет для блогов без элементов динамики).
Стили, скрипты и картинки
Минификация и сжатие
Минификация CSS/JS может сэкономить 10...15% их размера. Для включения минификации статики есть модуль WP Minify . Качайте, активируйте и модуль начнет работать. Gzip позволит уменьшить размер текстовых файлов в несколько раз. В Nginx"e включается так:Server { ... gzip on; gzip_disable "msie6"; gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript; ... }
Оптимизация картинок
Картинки могут составлять очень большую часть общего размера страницы. Lossless сжатие картинок может сэкономить 30...40% их размера. Это умеет делать модуль EWWW Image Optimizer . Для его работы понадобится установить imagemagick и библиотеку gd:Apt-get install imagemagick php5-gd
Хорошие практики и опыт
- Лучше всего выбирать VPS для хостинга Wordpress. На Shared хостинге многое из описанного выше сделать невозможно. Кроме этого, VPS сейчас достаточно дешевый.
- Проверяйте темы с помощью Pagespeed перед использованием
- Очищайте корзину
- Удаляйте старые ревизии постов
- Удаляйте спам-комментарии
- Отключайте трекбеки в моменты, когда все становится совсем медленно
- Раздавайте RSS через feedburner
В результате
У нас получилось голую установку Wordpress разогнать почти в 100 раз по времени генерации страницы (мы включили Varnish) и увеличить показатель по Pagespeed с 76 до 93:Привет, друзья! Сегодня я бы хотел написать о том, как ускорить wordpress. Вы узнаете 10 способов, которые помогли моему блогу работать в несколько раз быстрее.
Для чего нужно ускорять блог?
2. Запретите обновления сайта.
У вас установлен wordpress и много плагинов. Все эти плагины и сам движок время от времени обновляются. И сайт начинает искать эти обновления в интернете. Таким образом, скорость вашего сайта уменьшается. Чтобы этого не было, я советую запретить обновления блога. Для этого есть разные плагины, но ми не будем ставить плагин, а воспользуемся вод таким кодом.
// обновления wordpress
add_filter ("pre_site_transient_update_core",create_function ("$a", "return null;"));
wp_clear_scheduled_hook ("wp_version_check");
// обновления плагинов
remove_action ("load-update-core.php", "wp_update_plugins");
add_filter ("pre_site_transient_update_plugins", create_function ("$a", "return null;"));
Этот код нужно вставить в файл functions.php в самый низ перед вод таким знаком ?>
3. Отключите ревизию постов и удалите корзину.
Например, вы написали статью в блог. Через некоторое время решили ее отредактировать. После этого увеличивается количество ревизий поста. А все эти ревизии нагружают базу данных. Точно также, все статьи, которые вы удалили, автоматически попадают в корзину. И опять же, увеличивается нагрузка на базу. Если вы решили удалить пост, значит, он вам не нужен. И корзина также не нужна.
А теперь обо всем по порядку. Для того, чтобы отключить ревизии, зайдите в wp-includes — default-constants.php
и замените там строчку
define ("WP_POST_REVISIONS", true);
define ("WP_POST_REVISIONS", false);
Чтобы отключить корзину, откройте файл wp-config.php и пропишите там строчку
define ("EMPTY_TRASH_DAYS", 0);
Помните, вы уже вставляли подобный код, чтобы подключить кэширование блога. Так вот, можно сразу выше этого кода прописать строчку для удаления корзины. Вод так это будет выглядеть:
/** Имя базы данных для WordPress */
define ("EMPTY_TRASH_DAYS", 0); /** удаления корзины */
define ("WP_CACHE", true); /** кэширования */
define ("DB_NAME", "a40210_site");
4. Оптимизируйте базу данных для ускорение сайта.
Для этого есть замечательный плагин Optimeze DB
. Скачайте его, установите, а потом активируйте. Дальше зайдите в Панель управления — плагины и нажмите на кнопку «optimize» Потом плагин можно деактивировать, чтобы он не нагружал сайт. И, примерно раз в две недели можете его активировать и нажимать на кнопку «optimize»
.
И еще один совет. Не забывайте указывать ширину и высоту картинки. Так она будет быстрее загружаться.
Вод так неправильно:
А вод так правильно:
Как видно, в последнем варианте появились width и height . Это высота и ширина изображения. Их нужно указывать, несмотря на то, что без них картинка также будет загружаться нормально.
6. Удалите ненужные плагины для ускорение сайта.
Каждый плагин сильно нагружает базу данных. И чем их больше, тем хуже. Поэтому перейдите прямо сейчас в Панель управления – Плагины – Установление плагины
, и посмотрите на каждый из них. Наверняка, некоторые можно заменить простим кодом, а некоторые вообще не нужны. Я лично на своих сайтах стараюсь многие функции реализовывать при помощи кода.
7. Оптимизируйте файл style.css для ускорение сайта.
Для этого нужно перейти на сайт styleneat.com и загрузить или скопировать и вставить туда свой файл стилей. Этот сайт поможет сжать файл, и таким образом стили будут загружаться намного быстрее, а значит и увеличиться скорость сайта. Но перед тем, как сжимать файл, я советую сделать его копию, поскольку после сжатия, сайт может отображаться не совсем правильно.
8. Защитите блог от спама
Это также очень важно для ускорение wordpress. Если спамеры будут сильно атаковать сайт, то это увеличить нагрузку на сервер и соответственно снизится скорость ресурса. Для того, чтобы от спама есть очень много плагинов. Я, например, установил Akismet
, и мне его вполне хватает.
9. Перенесите все скрипты с header.php в footer.php
У каждого сайта есть очень много разных скриптов. Возможно, вы установили, какую-то статистику для сайта, или или еще что-то. Так вот, в инструкции по установлении скриптов часто советуют, что нужно вставлять код в файл header.php перед тегом . Иногда это действительно необходимо, но не всегда. В большинстве случаев коды лучше вставлять в файл foter.php
перед тегом