«

»

Окт 05 2012

Распечатать Запись

Оптимизация wordpress – повышаем скорость загрузки страниц

Оптимизация WordPress: скорость загрузки страницВремена низких скоростей интернета, когда простая html-страничка грузилась несколько секунд, давно прошли. Но и требования пользователей сегодня значительно выросли – страница любой сложности должна грузиться почти моментально, многие не будут ждать 3-4 секунды и уйдут на следующий результат в поисковой выдаче. Поэтому для WP блога крайне важна оптимизация WordPress под ускорение загрузки страниц и, одновременно, снижения нагрузки на хостинг. Для повышения скорости загрузки страниц этого блога на данный момент я использую два плагина: W3 Total Cache и WP Minify. Теоретически достаточно было бы только первого, но в моем случае часть со сжатем и удалением ненужного кода в HTML/CSS/JS работала некорректно, но обо всем по порядку. В качестве инструментов для оценки скорости загрузки использую YSlow от Yahoo и PageSpeed от Goggle. Кстати, эти же инструменты дают подсказки, что можно сделать, чтобы страницы грузились быстрее.

Оптимизация WordPress – плагин W3 Total Cache

Крайне популярный плагин с внушительным списков возможностей:

  1. Кеширование страниц .
  2. Минимизация исходного кода страницы.
  3. Кеширование БД.
  4. Кеширование объектов.
  5. Настройка использования КЕШа браузера.
  6. Перенаправление в зависимости от UserAgent или реферера на другой домен или использование другой темы.
  7. Использование CDN.

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

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

Минимизация исходного кода страницы. Тут идея тоже понятна и прозрачна – удалить все лишнее, начиная от лишних пробелов, переводов строк и комментариев в коде и заканчиваю оптимизацией таблицы стилей и скриптов JS. Но в случае с темой Graphene минимизация JS этим плагином приводила к неработоспособности слайдера. А в случае оптимизации HTML и CSS плагин удалял слишком много лишних по его мнению классов у некоторых тэгов, в результате чего плыли отступы и появлялись элементы скрытые за  display:none; .

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

Про CDN лучше меня скажет википедия. Но если кратко, то это сеть доставки контента. Она как правило, принадлежит какой-то крупной компании (например, amazon) и состоит из множества серверов распределенных по всему миру. Контент находится на каждом из них и при запросе пользователем страницы сайта необходимый для её отображения контент подгружается с ближайшего к пользователю сайта. Тем самым ускоряется загрузка самого сайта для удаленных от вашего хостинг-провайдера пользователей. Особенно это актуально для многоязычных сайтов, где аудитория в силу их специфики разбросана по всему миру и не очень правильно доставлять контент пользователю из США с сервера в Европе. Для большинства же блогов это не самый актуальный вопрос, особенно с учетом того, что CDNяндекса среди поддерживаемых плагином я не увидел, а зарубежные CDN для блога на русском не имеют особого смысла, так как их сервера по России-матушке не распределены.

ИТОГО: Использование плагина W3 Total Cache улучшило оценки скорости PageSpeed с 80 до 90, а по версии Yslow с 50 до 83. Уже хорошо, но для отличного результата явно не хватает минимизации кода, так как WordPress действительно крайне много CSS классов использует. Для настройки внешнего вида это, конечно, хорошо, но используется из них от силы 30%, а остальное надо удалять в итоговом варианте страницы.

Удаление лишнего кода со страниц – плагин WP Minify

В поисках альтернативных плагинов для минимизации исходного кода страницы нашел сий замечательный плагин WP Minify. Так же как W3 Total Cache он умеет минимизировать , но в отличие от последнего делает это явно качественнее, проверяя все взаимосвязи на странице. Кроме того, даже базовые настройки плагина позволяют делать исключения из того, что минимизируется в отличии от W3 Total Cache, где настройка исключений весьма скупа и специфична.Основные настройки плагина WP minify

Настройка этого плагина и включение всех опций в нем позволила повысить оценку скорости для моего блога примерно до 95 как по PageSpeed так и по Yslow! Почему примерно? А потому что оценки для разных страниц блога могут немного отличаться. Например, для постов оценка чуть хуже, так как в них есть кнопочка лайк от вконтакте, которую генерирует скрипт. И генерирует, как оказывается, не совсем оптимально, но ничего с этим не поделаешь. А для главной, например, минусом является измененные в HTML коде размеры изображения. В идеале это можно исправить используя разные картинки для миниатюры (её подгонять под размер 150х150) и внутри поста.

В любом случае оценку 95/100 можно назвать отличной и это положительно скажется как на посетителях, так и на позициях в поисковой выдаче, так как скорость загрузки страниц сайта – это один из факторов ранжирования сайта.

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *