В стандартной установке WordPress работает медленно. Движок не способен по умолчанию использовать ряд возможностей, предлагаемых современным Вебом для более ускоренной работы. Есть достаточное количество плагинов, позволяющих оптимизировать WordPress, так что подобрать наиболее подходящий для себя будет несложно.
Прежде чем приступить к наведению порядка и провести капитальную оптимизацию, стоит посмотреть, что показывает голая установка WordPress по Pagespeed. Демонстрируемый результат 76 из 100 можно назвать очень низким. Но этот показатель можно заметно увеличить.
Плагины для серверной части
- Nginx. Если еще не доводилось применять Nginx, стоит попробовать задействовать его, так как он относится к простым и мощным решениям. Имеет отличную конфигурацию для работы с поддержкой permalinks и кешированием статики:
- PHP кеш. При отсутствии серьезных причин, мешающих установить APC, его нужно включить обязательно. При проверке наличия APC можно получить список настроек APC. В версиях PHP после 5.5 присутствует встроенный модуль opCache, так что установка APC ставить не понадобится.
- Тюнинг Mysql. WordPress задействует в своей работе InnoDB, так что есть возможность существенно повысить производительность MySQL, не забыв подстроить некоторые параметры. Например, размер буфера InnoDB есть смысл перенести в половину доступной оперативной памяти и не забыть подключить кеширование.
Кеширование
Можно назвать его самым важным пунктом, так как кеширование может значительно ускорить работу и при этом сэкономить ресурсы сервера. Чтобы пример получился более наглядным, стоит воспользоваться ab от Apache и проверить стандартную установку WordPress без кеширования. Все запросы нужно направлять через локальную сеть, чтобы убедиться, что задержку создает именно WordPress. Среднее время на запрос в этом случае составляет 50мс, а Хром фиксирует среднее ожидание ответа на уровне 150мс. Этот сервер расположен в Нидерландах.
WP Super Cache является отличным плагином для кеширования. С ним можно запустить процесс в одно действие. Имеет не только стандартные настройки, но и множество параметров для тюнинга кеша. После скачивания его нужно активировать в панели управления и включить кеш. Сразу же будет заметно уменьшение среднего времени на запрос в 25 раз. А среднее ожидание ответа в Хроме сразу же сократилось в 3 раза.
Если нужна какая-то серверная альтернатива WP Super Cache, то можно использовать Varnish. С его помощью время на обработку запроса снижается еще почти на порядок. Правда, есть небольшой минус — само решение менее гибкое, но оно отлично подходит для блогов без элементов динамики.
Стили, скрипты и картинки
- Минификация и сжатие. Минификация CSS/JS позволяет экономить 10-15% их размера. Чтобы включить минификацию статики, нужно задействовать модуль WP Minify. С Gzip можно уменьшить размер текстовых файлов в несколько раз.
- Оптимизация картинок. Если картинки составляют внушительную часть общего размера страницы, то поможет Lossless. Он может сэкономить 30-40% их размера. Помогает модуль EWWW Image Optimizer. Чтобы он работал, понадобится установить imagemagick и библиотеку gd.
Полезные рекомендации
Для хостинга лучше всего выбирать VPS, так как Shared хостинг не позволяет сделать большую часть из описанного. К тому же, VPS обходится недорого. Также, стоит вовремя очищать корзину, удалять спам-комментарии и старые ревизии постов, проверять перед использованием темы с помощью Pagespeed, отключать при замедлении трекбеки, раздавать RSS через feedburner.
Заключение
В результате всех проделанных действий WordPress удалось разогнать почти в 100 раз по времени генерации страницы, а показатель по Pagespeed увеличить с 76 до 93. В качестве полезных инструментов и ресурсов можно использовать профайлер Р3, а с удобным чеклистом по оптимизации можно все сохранять в удобном месте.