В першій статті присвяченій оптимізації сайту на WordPress, ми налаштували базове кешування використовуючи опції які надає безкоштовна версія плагіна W3 Total Cache та встановили деякі PHP розширення які дозволили прискорити виконання PHP скриптів сайту. В другій частині ми перейдемо до більш тонкого налаштування плагіну використовуючі розширені налаштування.
Що це “Advanced Settings” у W3 Total Cache ?
Розширені налаштування (Advanced Settings) у W3 Total Cache відкривають доступ до тонкого налаштування кешування та оптимізації для прискорення роботи сайту. Тут можна більш гнучко налаштувати кеш сторінок, об’єктів і бази даних, а також параметри стиснення та об’єднання CSS і JavaScript (minify). Крім того, доступні опції інтеграції з CDN і керування заголовками браузерного кешу. Це дозволяє максимально оптимізувати швидкість завантаження, але потребує уважного підходу до конфігурації.
Налаштовуємо Page Cache (кеш сторінок):
В адмін панелі вашого WordPress сайту перейдіть до “Performance” і потім натисніть на “Page Cache“. Тут ми зможемо більш тонко налаштувати кешування сторінок.
Розділ “General”
- Cache posts page – Активуйте. В WordPress це сторінка сайту на якій відображаються останні статті. Насайтах блогах це зазвичай головна сторінка яка на яку йде сама більша кількість запитів. Кожного разу коли користувач відкриває цю сторінку, сайт генерує її повторно що забирає певний час. Активація цієї опції створює готову версію цієї сторінки що значно зменшує час віддачи сторінки користувачу.
- Don’t cache front page – Деактивуйте. Відключає кешування для головної сторінки сайту. Зазвичай це “posts page” якщо не вказано використовувати будь яку іншу сторінку.
- Cache feeds: site, categories, tags, comments – Активуйте, що і радять зробити розробники W3TC.
- Handle XML mime type – Активуйте.
- Cache SSL (HTTPS>) requests – Активуйте. Для встановлення безпечного (HTTPS) з’єднання браузер користувача та сервер домовляються один з одним і виконують певні обчислення, це викликає затримку. Кешування SSL запитів дозволяє мінізувати час необхідний для встановлення HTTPS з’єднання.
- Cache URI with query string variables – деактивуйте. Опція дозволяє кешувати сторінки до яких передаються додаткові параметри. Зазвичай це сторінки з результатами пошуку, тощо.
- Cache 404 (not found) pages – Деактивуйте, якщо у вас використовуєть кешування “Disk Enhanced”. В разі використання іншого типу кещування: “Disk Basic”, “APCu”, “Memcache” тощо, опцію можна активувати, але обов’зково перевірте який код віпдвіді повертає сервер коли виконується звернення до сторінок які не існують. В разі відповіді “200”, вимкніть опцію т.я. це зашкодить просування сайту в пошукових системах.
- Don’t cache pages for logged in users – Активуйте. Користувачі які авторизувались на вашому сайті не будуть отримувати сторінки з кешу. Для таких користувачів сторінки будуть генеруватись. Якщо вам необхідно віддавати сторінки з кешу для всіх окрім певної категорії авторизованих користувачів, використовуйте опцію “Don’t cache pages for following user roles”.
- Don’t cache pages for following user roles – Якщо необхідно, щоб сторінки не кешувались (постійно генерувались) для певної категорії користувачів, активуйте необхідні категорії, та відключить опцію Don’t cache pages for logged in users.
- Cache alias hostnames – Якщо до сайту можна доступитись через кілька різних доменів/піддоменів. Додайте всі домені та піддомени в поле “Additional home URLs“, так ктивуйте опцію.
Якщо до вашого сайту можна доступитись використовуючи різні домені, краще налаштуйте HTTP/HTTPS перенаправлена на один конкретний домен.
- Automatically Prime The Page Cache – Активуйте. Створює кеш сторінок автоматично на базі параметрів які налаштовуються нижче, не очікуючи коли користувач відкриє сторінку. Це може створювати сплески навантаження, в такому випадку спробуйте збільшити інтвервал через який створюється кеш та/або зменшити кількість сторінок для яких оновлюється кеш (див. “Update interval“, “Pages per interval” ).
- Update interval – інтвервал через який оновлюється/створюється кеш сторінок (в секундах). Збільшіть, якщо оновлення еншу викликає сплески навантаження.
- Pages per interval – кількість сторінок для яких створюється кеш. Зменшіть, якщо оновлення кешу викликає сплески навантаження
- Sitemap URL – вкажіть URL до мапи сайту (sitemap.xml). Також можна вказати пріорітет сторінок.
- Preload cache upon publishing a post – Увімкніть
- Preload cache upon updating a post – Увімкніть
Розділ “Purge Policy”
Тут налаштовується політика очистки кешу. Залиште налаштування які пропонуються за замовченням.
Розділ “REST API”
Залиште налаштування які пропонуються за замовченням.
Розділ “Advanced”
В розділі “Advanced” налаштовуються додаткові параметри кешування вашого сайту. Тут можна відключити кешування для певних сторінок сайту, налаштувати час дії кешу, кук і т.д. але більшості користувачів тут нічого не треба змінювати.
/cart/*, /my-account/*, /checkout/*, /addons/*
до “Never cache the following pages“.
Налаштовуємо Minify Settings (мініфікація):
Щоб перейти до налаштувань мініфікації натисніть на “Performance” в лівому верикальному меню WordPress і потім на “Minify”
Розділ “General”
- Rewrite URL Structure – Увімкніть.
- Disable minify for logged in users – Виключіть.
- Minify error notification – Якщо виникають проблеми з мініфікацією увімкніть один з видів сповищень (повідомлення в адмінці, сповіщення по пошті або обидва).
- HTML Minify Settings – Увімкніть.
- Inline CSS minification – Увімкніть.
- Inline JS minification – Увімкніть.
- Don’t minify feeds – Увімкніть.
- Line break removal – Увімкніть, але якщо це ламає вигляд сайту, вимкніть цю опцію. Використовуйте з обережністью.
Ignored comment stems – В більшості випадків нічого не треба додавати.
Розділ “JS”
- JS Minify Settings – Увімкніть.
- Minify Method – Minify Only.
- Minify Engine Settings – Протестуйте. Налаштування “non-blocking” мають дати більше балів в тестах PageSpeed Insights, але також можуть зламати сайт.
- Before </head> : Default (blocking)
- After <body> : Default (blocking)
- Don’t minify feeds – Увімкніть.
- Preserved comment removal – Увімкніть. Ця опція видаляє коментарії з JS щоб зменшити об’єм файлів.
- Line break removal – Увімкніть, але якщо це ламає вигляд сайту, вимкніть цю опцію. Використовуйте з обережністью.
- HTTP/2 push – Активуйте, але перевірте роботу сайту. Працює тільки якщо до сайту доступаються по HTTPS і сервер підтримує протокол HTTP/2. Використовуйте з обережністью.
Розділ “CSS”
- CSS Minify Settings – Увімкніть.
- Minify Method – Minify Only.
- Minify Engine Settings:
- Preserved comment removal – Увімкніть. Ця опція видаляє коментарії з CSS щоб зменшити об’єм файлів.
- Line break removal – Увімкніть, але якщо це ламає вигляд сайту, вимкніть цю опцію. Використовуйте з обережністью.
- @import Handling – Process.
- HTTP/2 push – Активуйте, але перевірте роботу сайту. Працює тільки якщо до сайту доступаються по HTTPS і сервер підтримує протокол HTTP/2. Використовуйте з обережністью.
Розділ “Advanced”
Якщо налаштування мініфікації ломають ваш сайт, виявіть сторіники та файли мініфікація яких спотворює сайт і додайте їх до:
- Never minify the following pages – не застосовувати мініфікацію до сторінок сайту.
- Never minify the following JS files – не застосовувати мініфікацію до JS файлів сайту.
- Never minify the following CSS files – не застосовувати мініфікацію до CSS файлів сайту.
Збережіть налаштування натиснувши на “Save Settings” в правому верхньому кутку.
Налаштовуємо Database Cache (кеш бази даних):
Згідно з рекомендацій розробників плагіну, нічого не треба змінювати.
Налаштовуємо Object Cache (кеш об’єктів):
Згідно з рекомендацій розробників плагіну, нічого не треба змінювати.
Якщо були зроблені зміни в налаштуваннях, збережіть їх натиснувши на “Save Settings” в правому верхньому кутку.
Налаштовуємо Browser Cache (кеш браузера):
В лівому вертикальному меню WordPress натисніть на “Performance” і потім на “Browser Cache”
Розділи “General”, “HTML & XML”, “Media & Other Files”:
-
- Set Last-Modified Header – Увімкніть.
- Set Expires Header – Увімкніть у всіх розділах (General, CSS & JS, Media & Other Files) окрім HTML & XML.
- Set cache control header – Увімкніть.
- Set entity tag (eTag) – Увімкніть.
- Set W3 Total Cache header – Увімкніть. Ця опція дозволяє плагіну W3TC ідентифікувати оптимізовані елементи.
- Enable HTTP (gzip) compression – Увімкніть. Активує компрессію файлів чим зменшує об’єм даних які передаються від сервера до користувача.
- Enable HTTP (brotli) compression – Увімкніть. Brotli робить те саме що і GZIP компреіся але більш ефективно. Для активації ваш сервер має підтримувати PHP розширення brotli (дивись “активувати PHP розширення в cPanel” якщо необхідно активувати розширення). Якщо розширення не підтримається, опцію активувати не можливо.
- Prevent Caching Of Objects After Settings Change – Увімкніть. Змушує браузер користувача завантажити об’єкт повторно, якшо він оновився
- Remove Query Strings From Static Resources – Вимикніть.
- Prevent Caching Exception List – Залиште пустим.
- Don’t Set Cookies For Static Files – Увімкніть.
- Do Not Process 404 Errors For Static Objects With WordPress – Вимкніть. Активація цієї опції дозволить трохи знизити навантаження, але деактивація цієї опції гарантує більшу сумісність з іншими плагінами.
- 404 Error Exception List – Залиште пустим.
- Rewrite URL Structure Of Objects – Вимкніть.
- Expires Header Lifetime – Залиште значення за замовченням. Google радить встановити значення 1 рік (31536000 секунд) для статичних елементів.
Розділ “Security Headers”
Залиште значення за замовченням.
Збережіть налаштування натиснувши на “Save Settings” в правому верхньому кутку.
Налаштовуємо Cache Groups (групи кешу):
- User Agent Groups – використовується для прив’язки мобільних браузерів “useragent” до певної теми сайту. Наймовірніше ваш сайт використовує адаптивну тему, тому сенсу в налаштуванні опцій цього розділу немає. Залиште все як є.
- Manage Referrer Groups – використовується для прив’язки певних реферрерів “referrers” (Google, Yahoo) до певної тем сайту. Залиште як є.
- Manage Cookie Groups – використовується для прив’язки користувачів до певної тем сайту на базі Cookies. Залиште як є.
Завершивши налаштування “Advanced Settings”
Як ми вже писали у минулій статті «Оптимізація сайту на WordPress: W3 Total Cache» присвяченій оптимізації WordPress-сайту, плагін W3 Total Cache є одним із найпотужніших інструментів для кешування. У деяких випадках, щоб досягти максимальної ефективності, може знадобитися звернення до розробників плагіна або теми. Втім, ми сподіваємося, що наші матеріали про оптимізацію WordPress за допомогою W3 Total Cache стануть для вас корисними: допоможуть прискорити роботу сайту та позитивно вплинуть на його позиції в пошукових системах.
Якщо у вас виникають сумніви щодо активації певних налаштувань, пам’ятайте: ви завжди можете безпечно протестувати конфігурацію W3 Total Cache, увімкнувши режим попереднього перегляду. У разі будь-яких проблем достатньо вимкнути цей режим і повернутися до попередніх параметрів.
Однак для стабільної та надійної роботи сайту важлива міцна технічна база. Купуйте надійний SSD/NVMe-хостинг і забезпечте своєму сайту швидкість та безперебійну роботу.
