WordPress випустив офіційний плагін, який додає підтримку передової технології під назвою “Speculative Loading” (спекулятивне завантаження), що може допомогти підвищити продуктивність сайту та покращити користувацький досвід для відвідувачів сайту.
Спекулятивне завантаження
Рендеринг означає побудову всієї веб-сторінки таким чином, щоб вона миттєво відображалася (рендеринг). Коли ваш браузер завантажує HTML, зображення та інші ресурси і збирає їх разом у сторінку, це і є рендеринг. Попередній рендеринг – це створення веб-сторінки у фоновому режимі.
Цей плагін дозволяє браузеру попередньо відрендерити всю сторінку, на яку користувач може перейти далі. Плагін робить це, передбачаючи, на яку сторінку користувач може перейти на основі місця наведення курсору.
Chrome надає перевагу попередньому відображенню лише тоді, коли ймовірність переходу користувача на іншу сторінку становить щонайменше 80%. На офіційній сторінці підтримки Chrome для попереднього перегляду пояснюється:
«Сторінки слід показувати лише тоді, коли існує висока ймовірність того, що користувач завантажить сторінку. Ось чому опції попереднього перегляду в адресному рядку Chrome вмикаються лише тоді, коли існує така висока ймовірність (понад 80% часу).»
Chrome
На тій же сторінці для розробників є застереження про те, що попереднє завантаження може не відбутися в залежності від налаштувань користувача, використання пам’яті та інших сценаріїв.
API спекулятивного завантаження вирішує проблему, яку не могли вирішити попередні рішення, оскільки в минулому вони просто попередньо вибирали ресурси, такі як JavaScript і CSS, але не виконували попереднє відображення всієї сторінки.
Офіційний анонс WordPress
Speculation Rules API – це новий веб-аплікатор, який вирішує вищезгадані проблеми. Він дозволяє визначати правила для динамічної попередньої вибірки та/або попереднього перегляду URL-адрес певної структури на основі взаємодії з користувачем у синтаксисі JSON – або, іншими словами, спекулятивно попередньо завантажувати ці URL-адреси перед навігацією. Цей API можна використовувати, наприклад, для попереднього рендерингу будь-яких посилань на сторінці, коли користувач наводить на них вказівник миші.
Офіційна сторінка WordPress цей API описує так:
«API спекулятивних правил – це новий веб-інтерфейс. Він дозволяє визначати правила для динамічної вибірки та/або попереднього перегляду URL-адрес певної структури на основі взаємодії з користувачем у синтаксисі JSON – або, іншими словами, спекулятивно попередньо завантажувати ці URL-адреси перед навігацією.
Цей API можна використовувати, наприклад, для попереднього рендерингу будь-яких посилань на сторінці, коли користувач наводить на них курсор. Крім того, у випадку з API спекулятивних правил, «попередній рендеринг» фактично означає попередній рендеринг всієї сторінки, включно з запущеним JavaScript. Це може призвести до майже миттєвого завантаження, коли користувач натискає на посилання, оскільки сторінка, швидше за все, вже була завантажена повністю. Однак це лише одна з можливих конфігурацій».
Новий плагін для WordPress додає підтримку API Speculation Rules. На сторінках для розробників Mozilla, ресурсі для технічного розуміння HTML, він описується так:
«API спекулятивних правил призначений для підвищення продуктивності майбутніх навігацій. Він націлений на URL-адреси документів, а не на конкретні файли ресурсів, і тому має сенс для багатосторінкових додатків (MPA), а не для односторінкових (SPA).
API Speculation Rules надає альтернативу широко доступній функції <link rel=«prefetch»> і призначений для заміни застарілої функції <link rel=«prerender»>, яка використовується лише в Chrome. Він має багато переваг над цими технологіями, а також більш виразний синтаксис, що налаштовується, для вказівки того, які документи повинні бути попередньо вибрані або попередньо відрендерити».
Плагін Performance Lab
Новий плагін був розроблений офіційною командою WordPress, яка час від часу випускає нові плагіни для тестування користувачами перед можливим включенням в ядро WordPress. Тож це гарна можливість першими випробувати нові технології підвищення продуктивності.
Новий плагін WordPress за замовчуванням налаштований на попередній рендеринг «URL-адрес інтерфейсу WordPress», тобто сторінок, постів і архівних сторінок. Те, як це працює, можна точно відкорегувати в налаштуваннях: Налаштування > Читання > Спекулятивне завантаження
Сумісність з браузерами
Speculative API підтримується Chrome 108, однак специфічні правила, що використовуються новим плагіном, вимагають Chrome 121 або новішої версії. Chrome 121 був випущений на початку 2024 року.
Браузери, які не підтримують цю версію, просто ігноруватимуть плагін і не матимуть жодного впливу на користувацький досвід.
Ознайомтеся з новим плагіном Speculative Loading WordPress, розробленим офіційною основною командою розробників WordPress.
Як Analytics працює з попереднім переглядом
Один розробник WordPress прокоментував питання про те, як Analytics буде обробляти попередній перегляд, а хтось інший відповів, що це залежить від постачальника Analytics, який виявляє попередній перегляд і не зараховує його як завантаження сторінки або відвідування сайту.
На щастя, і Google Analytics, і Google Publisher Tags (GPT) можуть обробляти попередні перегляди. На сторінці підтримки розробників Chrome є примітка про те, як аналітика обробляє попередній перегляд: «Google Analytics обробляє попередній показ, за замовчуванням затримуючи його до активації з вересня 2023 року, а Google Publisher Tag (GPT) вніс аналогічну зміну, щоб затримати запуск реклами до активації з листопада 2023 року».
Можливий конфлікт з розширеннями блокувальника реклами
Є кілька моментів, про які слід знати про цей плагін, окрім того, що це експериментальна функція, яка вимагає Chrome 121 або новішої версії.
Коментар розробника плагіна WordPress про те, що ця функція може не працювати з браузерами, які використовують розширення для блокування реклами uBlock Origin.