Як налаштувати W3 Total Cache кешування для WordPress
Один з найскладніших плагінів в плані настройки – W3 Total Cache. При цьому він вкрай корисний для всіх сайтів на WordPress, так як значно підвищує швидкодію ресурсу, скорочує час його завантаження і знижує загальну завантаженість сервера. Витративши трохи часу на вивчення цього матеріалу, ви зможете розібратися з питанням, як налаштувати плагін кешування W3 Total Cache для WordPress.
Як встановити W3TC
Тут все стандартно: через панель адміністратора переходимо у вкладку «плагіни» і додаємо новий – через пошук знаходимо W3 Total Cache і підключаємо. Перед установкою обов'язково видаліть будь-які інші плагіни кешування, якщо користувалися чимось подібним раніше.
Основні налаштування W3 Total Cache
У лівому меню WordPress ви побачите вкладку Performance – перейдіть туди і клікніть на General Settings. Тут пройдемося по основних пунктах, які потрібно налаштувати:
General
Preview mode – включає або вимикає режим попереднього перегляду. Коли ця опція активна, плагін працює тільки для того користувача, який його налаштовує. Буде корисною для тих проектів, які вже деякий час перебувають в мережі і напрацювали якийсь трафік.
Page Cache
Найважливіша опція, включення якої активує режим кешування веб-сторінок. Це, в свою чергу, знижує час відповіді сервера і збільшує швидкість завантаження сторінок.
Також тут ви можете вибрати метод кешування сторінок сайту в пункті Page cache Method. Рекомендуємо ставити Disk: Enhanced, так як в цьому випадку дані кеша будуть зберігатися на серверному накопичувачі – як правило, це SSD. Твердотільні накопичувачі вкрай швидкі, тому ідеально підходять для зберігання кеша – зчитування цих даних буде займати частки секунд, так що користь технології буде відчуватися ще сильніше. Також можна вибрати метод зберігання кешу в оперативній пам'яті – вона ще швидше, але це вельми марнотратно, так як ОЗУ коштує дорого, а обсяги її обмежені. Метод кешування з використанням ОЗУ підійде тільки в тому випадку, якщо на вашому сервері надлишковий запас оперативки.
Minify
Тут у нас 3 пункти, які потребують налаштування:
- Minify – активує мініфікацію коду файлів. Процес мініфікації передбачає зменшення розміру вихідного коду за рахунок видалення зайвих символів і коментарів без шкоди функціональності. На практиці забезпечує приріст швидкості завантаження сайту за рахунок стиснення CSS, JavaScript і HTML.
- Minify mode – рекомендується встановлювати на Auto, так як в цьому випадку W3 Total Cache буде самостійно визначати файли, які необхідно оптимізувати в плані коду, а також автоматично встановить порядок підключення файлів.
- Minify cache Method – метод кешування. Як і у випадку з Page Cache, рекомендованим значенням буде Disk – за умови, що у вас на сервері встановлений SSD або NVMe накопичувач.
Що стосується пунктів HTML minifier, JS minifier і CSS minifier, то для всіх трьох рекомендованим значенням буде дефолтне.
Opcode Cache
Опція, що активує кешування скомпільованого PHP-коду. Рекомендуємо ставити Opcode: Zend Opcache, так як це оптимальний варіант для VPS і VDS. Тут же є пункт Validate timestamps – його відзначаємо прапорцем, щоб кеш коректно оновлювався без необхідності перезавантажувати модуль PHP.
Database Cache
Дозволяє активувати кешування запитів до бази даних. На практиці скорочує час генерації сторінок веб-сайту, є чудовою альтернативою об'єктному кешу, коли з яких-небудь причин останній використовувати не можна. Можна використовувати обидві технології паралельно.
У цій же вкладці можна вибрати database cache Method – рекомендованим буде Memcached. Про технологію Memcached ми маємо окрему статтю, рекомендуємо ознайомитися. Якщо в загальних рисах, то ця технологія дозволяє кешувати дані в ОЗП на основі хеш-таблиць.
Browser Cache
Цей пункт відповідає за клієнтське кешування, що прискорює завантаження сайтів при повторному запиті за рахунок кешування графічних елементів, CSS і JavaScript.
Page Cache
Це налаштування кешування сторінок, куди можна потрапити, перейшовши по шляху Performance > General Settings. Тут нас в першу чергу цікавить вкладка General з такими пунктами:
- Cache posts page – кешування сторінок записів.
- Don't cache front page – відключає кеш основної сторінки за умови, що вона статична.
- Cache feeds: site, categories, tags, comments – кешування фідів (рубрики, мітки, коментарі тощо).
- Cache SSL (https) requests – кешування унікальних SSL запитів. Рекомендується для тих, чий сайт функціонує на базі протоколу https.
- Cache URIs with query string variables – кешування сторінок з параметрами в URL. Корисна опція для інтернет – магазинів з фільтром товарів, а також для веб-сайтів, користувачі якого часто використовують вбудований пошук.
- Don't cache pages for logged in users – відключає кешування для авторизованих користувачів. Дозволяє оптимізувати роботу кеша і знизити навантаження на сервер, рекомендується залишати активованою.
- Don't cache pages for following user roles – відключити кешування для обраних груп користувачів. Рекомендується активувати для облікових записів, що керують сайтом.
Cache Preload
Тут можна задати інтервал між оновленнями кешу, а також вказати кількість сторінок, які будуть кешуватися через задані проміжки часу. Чим вище потужність сервера, тим більше сторінок слід вказувати, але оптимальну для свого сайту цифру ви зможете визначити тільки досвідченим шляхом.
Purge Policy: Page Cache
У цьому блоці можна налаштувати механізм очищення кешу при створенні і редагуванні записів, а також при публікації коментарів. Найкраще залишати значення за замовчуванням.
Advanced
У розширених налаштуваннях цікавить полем є Garbage collection interval, так як тут ми можемо задати інтервал очищення кешу на диску. Чим вище завантаженість вашого проекту, тим нижче значення слід виставляти – це дозволить своєчасно позбавлятися від простроченого кеша, щоб він не перевантажував файлову підсистему.
Minify
Тут ми можемо налаштувати мініфікацію HTML, XML, CSS і JavaScript. Для початку переходимо в General і активуємо такі опції:
- Rewrite URL structure – дозволяє відключити параметри GET для посилань;
- Disable minify for logged in users – за допомогою цієї опції можна відключити завантаження стислих сторінок для користувачів, які пройшли авторизацію;
- Minify error notification – Налаштування error-сповіщень при генерації мініфікованого кеша.
HTML & XML
У цьому блоці ми можемо налаштувати мініфікацію HTML коду сторінок сайту. Як показує практика, серйозного приросту продуктивності від стиснення HTML коду ви не отримаєте, зате активація даної опції може привести до проблем з версткою. Використовувати на свій страх і ризик.
JS
Тут містяться Налаштування мініфікації для файлів JavaScript. Щоб активувати опцію, поставте прапорець навпроти пункту Enable. Далі ви зможете задати параметри завантаження скриптів для різних областей HTML сторінки. Оптимальне значення-Default. Також слід вибрати механізм мініфікації – найкраще ставити Combine only.
Всі інші настройки в цьому розділі можна залишати недоторканими.
CSS
Активуємо мініфікацію W3 Total Cache, ставимо прапорець навпроти Combine only і більше нічого не чіпаємо, немає необхідності.
Advanced
Тут можна вказати розширені параметри мініфікації. Нам цікаві два параметри:
- Update external files every – часовий проміжок між завантаженням і оновленням зовнішніх файлів в мініфікованому кеші;
- Garbage collection interval – інтервал очищення мініфікованого кеша.
Якщо у вас високонавантажений проект, другий параметр слід виставляти з якомога нижчим значенням. Це дозволить знизити завантаженість сервера і збільшити ефективність роботи кеша.
Browser Cache
Дана сторінка містить налаштування кешу браузера, і для більшості випадків можна залишити ті значення, що встановлені за замовчуванням.
Підключення Google Page Speed до W3 Total Cache
Для підключення Google Page Speed необхідно встановити прапорець навпроти пункту "Enable Google Page Speed Dashboard widget". Потім потрібно клікнути на» API key here " і вставити його у відповідне поле. Сам ключ можна отримати на офіційному сайті. Зберігши Налаштування, перейдіть в розділ Debug і вимкніть всі параметри налагодження, так як їх активація лише додає зайвий код на ваш сайт. З метою оптимізації відключаємо.