Кейс: Оптимизация Wordpress под Google PageSpeed

12 3
AlexStep
На сайте с 23.03.2009
Offline
354
8336

Есть некоторый опыт оптимизации сайта на Wordpress под Google PageSpeed. Вот, решил поделиться. Вдруг будет кому-нибудь полезно.

Важный дисклаймер: оптимизация Wordpress под Google PageSpeed не всегда ведет к ускорению сайта и я не несу никакой ответственности за ваши действия со своим сайтом. А еще это не инструкция на все случаи жизни, а мой личный опыт.

Дальше идут пункты, по которым Google PageSpeed проверяет оптимизацию сайта и мои рекомендации по этому поводу.

1. Сократите CSS

Идем сюда http://cssminifier.com/, загружаем содержимое CSS файла, получаем сжатый вариант, загружаем на сервер. Повторяем со всеми CSS файлами не забывая сохранить не сжатый вариант для редактирования.

2. Сократите JavaScript

Идем сюда http://jscompress.com/, загружаем содержимое JS скрипта, получаем сжатый вариант, загружаем на сервер. Повторяем со всеми JS файлами не забывая сохранить не сжатый вариант на всякий случай.

3. Сократите HTML
Устанавливаем плагин WP-HTML-Compression https://wordpress.org/plugins/wp-html-compression/
Лично я не использую данный метод. Оно того не стоит. Тем более если на сайте установленна реклама Адсенс. Есть риск, что это может быть расцененно как изменения кода блоков.


4. Оптимизируйте изображения
Уже имеющиеся изображения можно оптимизировать под Linux при помощи команд

jpegoptim --all-progressive --strip-all ./*.jpg
optipng -strip all ./*.png


Более подробно о том, как это делается вот здесь /ru/forum/comment/14529684

Для оптимизации новых изображений в будущем установите плагин Compress PNG for WP https://wordpress.org/plugins/compress-png-for-wp/

Если хочется максимально крутой оптимизации изображений, даже лучше чем требует Google, то можно воспользоваться плагином ShortPixel Image Optimizer https://wordpress.org/plugins/shortpixel-image-optimiser/
Но, ShortPixel Image Optimizer оптимизирует бесплатно только 100 файлов в месяц, дальше нужно платить.

5. Удалите из верхней части страницы код JavaScript и CSS, блокирующий отображение

Установите плагин Async Javascript https://wordpress.org/plugins/async-javascript/
Или вручную добавьте атрибут async к вызовам ваших JS скриптов. Это решает вопрос только с JavaScript, замечание по CSS останется. Также нужно убедиться, что после добавления атрибута async все функции на сайте работают корректно.

6. Используйте кеш браузера
Добавляем вот такой код в .htaccess
<ifModule mod_expires.c>

ExpiresActive On

# Cache Images
ExpiresByType image/x-icon "access plus 2592000 seconds"
ExpiresByType image/jpeg "access plus 2592000 seconds"
ExpiresByType image/png "access plus 2592000 seconds"
ExpiresByType image/gif "access plus 2592000 seconds"

# Cache other content types (Flash, CSS, JS, HTML, XML)
ExpiresByType application/x-shockwave-flash "access plus 2592000 seconds"
ExpiresByType text/css "access plus 604800 seconds"
ExpiresByType text/javascript "access plus 2592000 seconds"
ExpiresByType application/javascript "access plus 2592000 seconds"
ExpiresByType application/x-javascript "access plus 2592000 seconds"
ExpiresByType text/html "access plus 600 seconds"
ExpiresByType application/xhtml+xml "access plus 600 seconds"

</ifModule>


7. Включите сжатие
Решается установкой плагина W3 Total Cache https://wordpress.org/plugins/w3-total-cache/

8. Не используйте переадресацию с целевой страницы
С этим не должно быть проблем на Wordpress.

9. Оптимизируйте видимое содержание
У меня не было с этим проблем. Если что можно почитать справку Гугла https://developers.google.com/speed/docs/insights/PrioritizeVisibleContent

10. Сократите время ответа сервера
Установите плагин W3 Total Cache https://wordpress.org/plugins/w3-total-cache/
Проведите оптимизацию работы Wordpress из общих соображений. Например, избавьтесь от лишних плагинов. Возможно нужно будет сменить хостинг.

В итоге, сделав все выше описанное я получил 93/100 по оценке "Для компьютеров" и 75/100 по оценке "Для мобильных".

SeVlad
На сайте с 03.11.2008
Offline
1609
#1
AlexStep:
оптимизация Wordpress под Google PageSpeed не всегда ведет к ускорению сайта

Вот на этом стоило бы и закончить "кейс" ;)

AlexStep:
А еще это не инструкция на все случаи жизни, а мой личный опыт.

А вот за это спасибо. А то ведь народ у нас доверчивый.

AlexStep:
7. Включите сжатие
Решается установкой плагина W3 Total Cache

Точно это то, что ты хотел написать?

Делаю хорошие сайты хорошим людям. Предпочтение коммерческим направлениям. Связь со мной через http://wp.me/P3YHjQ-3.
TF-Studio
На сайте с 17.08.2010
Offline
334
#2

Статья для бложика.

в разделе "Веб-строительство" можно было и больше инфы, тех данных, реальынх примеров.

Это - не кейс

и css никогда не надо вниз убирать

Всё ещё лучший способ заработка для белых сайтов: GoGetLinks (https://www.gogetlinks.net/?inv=fahbn8).
SeVlad
На сайте с 03.11.2008
Offline
1609
#3
TF-Studio:
и css никогда не надо вниз убирать

ключевой момент ты, видимо, упустил:

блокирующий отображение

Хотя по факту выигрыша от этого... Зря потраченные человекочасы. ИМХО

Jaf4
На сайте с 03.08.2009
Offline
804
#4

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

Без сарказма.

New! NVMe VPS от SmartApe.ru (https://goo.gl/eoYYkS)
AlexStep
На сайте с 23.03.2009
Offline
354
#5
TF-Studio:
и css никогда не надо вниз убирать

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

---------- Добавлено 22.06.2016 в 13:49 ----------

SeVlad:
Точно это то, что ты хотел написать?

Это момент с которым я пока до конца не разобрался. Понятно что сжатие это работа веб-сервера. Но, без W3 Total Cache гугл матерится на то, что JS не сжаты, а с W3 Total Cache все ОК. Не силен в серверных делах, если объясните почему так происходит буду рад :)

SeVlad
На сайте с 03.11.2008
Offline
1609
#6
Jaf4:
не надо пинать ТС-а.

Дело не в "пинать". Совершено.

Не конкретно по данному топику, а вообще мысли такие:

Если кто-то чем-то поделился (тем более "кейсом") в профильном разделе, то само собой нужна (ожидается) и реакция от коллег и вопросы и критика. Да, именно критика, которую не нужно путать с ругательством. Чтобы желающие воспользоваться "кейсом" увидели в нём ошибки (если они есть) и прочие нюансы. Что бы в конце-концов не ждали протёртую кашку, а умели выбрать удочку.

Ну и ТСам обсуждение будет полезно - иначе зачем же в форум-то выкладывать?

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

Ну как-то так я думаю.

Jaf4
На сайте с 03.08.2009
Offline
804
#7
SeVlad:

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

у меня нет бложика. Можно мне здесь? :)

AlexStep:


PS 8993 байт моя картинка.
А ваша 83 187 байт. Это больше, чем в 9 раз разница. ☝

H
На сайте с 30.05.2016
Offline
6
#8

Подскажите пожалуйста по поводу W3 Total Cache. Когда я его ставлю себе очень долго начинает работать админка. + первая загрузка страницы проходит намного дольше. Пока посещалка очень маленькая, что думаю плохо скажется на ПФ, так как у большинства посетителей будет очень долгая загрузка. Кто-то сталкивался с таким? Или это я просто не правильно настроил? Вроде как думал головой и читал мануалы, должно быть все ок :)

AlexStep
На сайте с 23.03.2009
Offline
354
#9
Jaf4:

Дайте угадаю, у вас только один CSS файл?

У меня 3 css файла и шрифты с fonts.googleapis.com. Решил с этим не запариваться и видимо по этому оценка ниже.


А ваша 83 187 байт, это больше чем в 9 раз разница. ☝

Это уже проблема администратора данного форума 😂

SeVlad
На сайте с 03.11.2008
Offline
1609
#10
AlexStep:
Это уже проблема администратора данного форума

Ты серьёзно? 😮

12 3

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий