Оптимізація зображень і медіа

Пришвидшення роботи WordPress за допомогою лінивого завантаження зображень та відео (плагін не потрібен)

Ліниве завантаження зображень та відео у WordPress без плагінів

Відкладене завантаження – один із найпростіших та найефективніших способів пришвидшити завантаження вашого сайту WordPress, особливо на мобільних пристроях, і вам навіть не потрібен плагін для його реалізації. У цьому посібнику ми покажемо вам, як вручну ввімкнути нативне відкладене завантаження зображень та відео за допомогою чистого та легкого коду.

Що таке ліниве завантаження?

Відкладене завантаження — це техніка підвищення продуктивності, за якої медіа-ресурси, такі як зображення та відео, завантажуються лише тоді, коли вони збираються потрапити у область перегляду користувача (тобто стають видимими на екрані). Це зменшує кількість HTTP-запитів під час початкового завантаження сторінки, роблячи сайт швидшим та легшим.

Чому ліниве завантаження критично важливе для продуктивності WordPress

  • Зменшує початкову вагу сторінки: Сторінки завантажуються швидше, оскільки попередньо запитується менше ресурсів.
  • Збереження пропускної здатності: Непереглянуті медіафайли не завантажуються, якщо вони не потрібні.
  • Покращує основні показники веб-сайту: Відкладене завантаження покращує такі показники, як найбільший відбиток вмісту (LCP).
  • Краще SEO та користувацький досвід: Швидкість є фактором ранжування. Швидший сайт утримує зацікавленість користувачів.

Як реалізувати нативне відкладене завантаження зображень

Починаючи з WordPress 5.5, нативне відкладене завантаження автоматично додається до тегів зображень за допомогою loading="lazy" атрибут. Ви можете забезпечити його належну роботу за допомогою мінімальних налаштувань:

<img src="your-image.jpg" alt="description" loading="lazy" width="600" height="400">

Найкраща практика: Завжди уточнюйте width і height щоб уникнути зсувів макета (важливо для оцінки CLS).

Як примусово налаштувати відкладене завантаження для всіх зображень (необов'язково)

Якщо деякі теми або плагіни пропускають додавання loading="lazy", ви можете примусово це зробити за допомогою простого фрагмента JavaScript:

<script> document.addEventListener("DOMContentLoaded", function() { document.querySelectorAll('img:not([loading])').forEach(function(img) { img.setAttribute("loading", "lazy"); }); }); </script>

Додайте цей скрипт до нижнього колонтитула або скористайтеся дочірньою темою, щоб правильно його включити.

ПРОЧИТАЙТЕ  Як оптимізувати зображення для швидшої роботи сайту WordPress

Відкладене завантаження відео без плагінів

Відео важкі. Вбудовування з YouTube або Vimeo завантажує кілька зовнішніх скриптів. Щоб відкладено завантажувати їх без плагінів, замініть iframe на попередній перегляд зображення, на який можна натискати, і завантажуйте відео лише після взаємодії.

Приклад: Відкладене завантаження відео YouTube

<div class="youtube-lazy" data-id="VIDEO_ID"> <img src="https://img.youtube.com/vi/VIDEO_ID/hqdefault.jpg" alt="YouTube preview" loading="lazy"> <div class="play-button"></div> </div> <script> document.addEventListener("DOMContentLoaded", function() { document.querySelectorAll(".youtube-lazy").forEach(function(el) { el.addEventListener("click", function() { let iframe = document.createElement("iframe"); iframe.setAttribute("src", "https://www.youtube.com/embed/" + el.dataset.id + "?autoplay=1"); iframe.setAttribute("frameborder", "0"); iframe.setAttribute("allowfullscreen", "1"); el.innerHTML = ""; el.appendChild(iframe); }); }); }); </script>

Замінити VIDEO_ID з фактичним ідентифікатором відео YouTube.

Корисний стиль (необов'язково)

Додайте трохи базового CSS, щоб це виглядало гарно:

.youtube-lazy { position: relative; cursor: pointer; max-width: 100%; aspect-ratio: 16/9; background: #000; } .youtube-lazy img { width: 100%; height: auto; } .play-button { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 60px; height: 60px; background: url('play-icon.svg') center center no-repeat; background-size: contain; }

Чому б не використовувати плагін?

Плагіни зручні, але часто мають додаткові скрипти, стилі або надмірне навантаження. Ручне відкладене завантаження дає вам:

  • Більше контролю над тим, що завантажується
  • Немає впливу на продуктивність від функцій сторонніх розробників
  • Чистіший вихідний сигнал

Коли варто розглянути плагін

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

  • Кеш LiteSpeed (якщо ваш сервер це підтримує)
  • FlyingPress
  • Perfmatters (преміум)

Але пам’ятайте, що навіть з цими плагінами, перегляд фактичної поведінки лінивого завантаження в DevTools є обов’язковим.

Заключні поради

  • Використайте інструменти розробника браузера, щоб перевірити, чи loading="lazy" застосовується
  • Перевірте свій сайт за допомогою Google PageSpeed Insights
  • Відстеження покращень LCP після ввімкнення відкладеного завантаження
ПРОЧИТАЙТЕ  Загроза WebP для WhatsApp — нерозказана правда

Потрібна допомога експерта у покращенні швидкості WordPress без зайвих плагінів? Спробуйте безкоштовний ручний аудит на SpeedWP Pro — ми оптимізуємо з нуля.