
Легке вставлення YouTube і Vimeo: генератор фасаду
Вставте посилання на ролики — отримаєте готовий блок, який показує прев’ю і підвантажує програвач лише після кліку. Нуль зовнішніх бібліотек: усе, що потрібно, всередині згенерованого коду.
watch?v=, youtu.be, /embed/, /shorts/, youtube-nocookie.com. Vimeo: vimeo.com/ID, player.vimeo.com/video/ID, приватні vimeo.com/ID/ХЕШ. Мітка часу ?t= / &start= переноситься у фасад.
Необов'язкові уточнення через вертикальну риску: URL | Заголовок | URL прев'юшки.
Ш:В або Ш/В. Йде у CSS-властивість aspect-ratio.
hqdefault існує для будь-якого ролика. maxresdefault є лише там, де оригінал завантажили у 720p і вище — інакше картинка просто не відкриється, і глядач побачить порожній прямокутник.
aria-label кнопки та title iframe.
i.ytimg.com у YouTube: її повертає лише oEmbed API, а запит до нього ми зробити не можемо — інструмент працює без мережі. Тому завантажте кадр у медіатеку сайту й вставте посилання. Без нього буде градієнтна заглушка з кнопкою play.
Вставте хоча б одне посилання, щоб отримати код.
Вставляти у Gutenberg-блок «Довільний HTML». Блок містить <style> і <script>: якщо у вас роль без права unfiltered_html або стоїть плагін безпеки, що вирізає скрипти — фасад покаже прев'юшку, але клік не спрацює.
Код збирається у вашому браузері. Ні згенерований блок, ні саме прев'ю не роблять жодного зовнішнього запиту — картинки з i.ytimg.com у прев'ю показані як адреси, а не завантажені.
Один вбудований ролик коштує понад мегабайт до першого кліку
Стандартний iframe YouTube завантажує близько 1,3 МБ у двох десятках запитів до семи сторонніх доменів — ще до того, як відвідувач вирішив дивитися відео. На сторінці з трьома роликами це втричі більше, і майже завжди саме воно псує показники швидкості на мобільних. Фасад вирішує проблему прямолінійно: спершу показується лише картинка-прев’ю з кнопкою відтворення, а справжній програвач вставляється у момент кліку. До кліку сторінка важить на порядок менше. Існує популярна бібліотека для цього, але всі інструкції радять підключати її з чужого CDN — тобто прибрати один зовнішній запит і додати інший. Тут згенерований код повністю самодостатній: стилі й скрипт лежать усередині блоку. Додатковий ефект стосується приватності. Стандартний iframe ставить трекінгові куки ще до перегляду. Домен youtube-nocookie.com відкладає це до моменту відтворення, а фасад — до кліку. Для сайтів, орієнтованих на європейську аудиторію, це прямо стосується вимог щодо згоди на куки.
