Чому WooCommerce гальмує і що з цим робити

Червона стрілка вгору на світлій поверхні

WooCommerce має репутацію повільного рушія. Насправді магазин на ньому може працювати швидко, а гальмує зазвичай не він, а те, що навколо нього наростили.

Далі - реальні причини за частотою.

1. Зображення товарів

Найпоширеніша причина і найпростіша у виправленні. У каталог заливають фото прямо з фотоапарата: 4 000 пікселів по ширині і кілька мегабайт вагою. Браузер стискає їх до 300 пікселів на екрані, але завантажує повністю.

Що робити: формат WebP, розумні розміри під реальні місця виводу, відкладене завантаження всього, що нижче першого екрана, і обов'язково задані ширина і висота, щоб верстка не стрибала під час завантаження.

2. Плагіни, яких тридцять

Кожен активний плагін підвантажує свої стилі і скрипти, і дуже часто - на всіх сторінках підряд. Плагін для форми на сторінці контактів вантажиться і на картці товару.

Що робити: інвентаризація. Все, чим не користуються, - видалити. Для решти - обмежити завантаження тими сторінками, де вони справді потрібні.

3. Кошик і оновлення фрагментів

WooCommerce за замовчуванням оновлює вміст кошика запитом до сервера на кожній сторінці. На каталозі з великою кількістю товарів це помітна затримка, яку відвідувач відчуває саме там, де вирішує, купувати чи ні.

Що робити: обмежити цю поведінку сторінками, де кошик реально потрібен.

4. Відсутність кешування

Кожен захід генерує сторінку заново: PHP збирає її з бази. При цьому сторінка товару змінюється раз на місяць.

Що робити: сторінковий кеш для каталогу і карток товарів. Кошик, оформлення і особистий кабінет з кешу виключаються - їх кешувати не можна. Це стандартна настройка, і саме її часто пропускають.

5. Хостинг

Магазин на найдешевшому спільному тарифі впирається в ресурси сервера. Ніяка оптимізація коду не компенсує брак процесорного часу, коли на сервері одночасно живуть сотні сайтів.

Що робити: якщо після всіх оптимізацій сайт все одно повільний і час відповіді сервера високий - причина тут.

6. Важкий конструктор на картках товару

Якщо картки зібрані конструктором, до ваги WooCommerce додається вага конструктора, і так на кожному товарі. Детальніше про це - у матеріалі про конструктор і кастомну тему.

З чого починати. Спочатку виміряйте, потім правте. Без вимірювання легко витратити день на оптимізацію того, що не впливає, і не помітити одну картинку на 4 мегабайти в шапці каталогу.

Порядок, який дає найбільший приріст

  1. Зображення: формат, розміри, відкладене завантаження.
  2. Кешування сторінок з правильними винятками.
  3. Ревізія плагінів.
  4. Обмеження оновлення кошика.
  5. Хостинг, якщо час відповіді сервера залишається високим.

Перші два пункти зазвичай дають більше, ніж усі інші разом.

Коротко

WooCommerce гальмує через зображення, десятки плагінів, відсутність кешу і слабкий хостинг. Найбільший приріст дають правильні картинки і сторінковий кеш з винятками для кошика й оформлення.

Обговорити задачу

Напишіть, що потрібно зробити. Відповім з оцінкою термінів і вартості.

Послуги