Відео, вбудовані на сайт WordPress, за замовчуванням використовують стандартну URL-адресу youtube.com, яка використовує файли cookie. Через різні закони про файли cookie, включаючи правила GDPR, відвідувачам сайту важливо схвалити будь-які файли cookie під час відвідування вашого сайту. Якщо на вашому сайті відображаються відео YouTube, можете, не знаючи того, порушувати певні правила.

Хорошою ідеєю буде включити на сайт вікно прийняття файлів cookie, яке відвідувачі зможуть використовувати для прийняття або відхилення файлів cookie.
Як вбудувати відео YouTube без файлів cookie
За замовчуванням при вбудовуванні відео Youtube URL-адреса iFrame буде виглядати приблизно так:
https://www.youtube.com/embed/1iI4tAoUzgc
Однак, Ютуб пропонує альтернативний домен, який можна використовувати для показу відео без файлів cookie:
https://www.youtube-nocookie.com/embed/1iI4tAoUzgc
Зверніть увагу, що URL-адреса в основному та ж, за винятком того, що ми змінили youtubeйого на youtube-nocookie. Використовуючи домен youtube-nocookie, ви включаєте «Режим розширеної конфіденційності».
Режим Privacy Enhanced Mode вбудованого програвача Ютуб запобігає впливу переглядів вбудованого контенту Ютуб на перегляд глядачем. Це означає, що перегляд відео, показаного в режимі Privacy Enhanced Mode вбудованого програвача, не буде використовуватися для персоналізації перегляду YouTube ні у вашому вбудованому плеєрі Privacy Enhanced Mode, ні в подальшому перегляді глядачем.
Якщо реклама відображається на відео, показаному в режимі Privacy Enhanced Mode вбудованого плеєра, ця реклама також не буде персоналізованою. Крім того, перегляд відео, показаного в режимі Privacy Enhanced Mode вбудованого програвача, не використовуватиметься для персоналізації реклами, що показується глядачеві за межами вашого сайту або програми.
Джерело: https://support.google.com/youtube/answer/171780
При відключенні відеофайлів Ютуба будь-яка реклама та пов'язані з нею ролики більше не задовольнятимуть глядача. Тому, якщо ви вставляєте власні ролики і є учасником партнерської програми Ютуба, можливо, вам варто зберегти файли cookie. Персоналізація відео може збільшити кількість кліків на рекламу та час перегляду. Просто попереджаємо, перш ніж видаляти їх!
Дивіться також:
Як для зображень Smush покращить рекомендації Google PageSpeed
Примушуйте WordPress використовувати домен Youtube-nocookie.com
Тепер, коли ми знаємо, як вбудовувати відео Ютуба без файлів cookie, наступним кроком буде зміна принципу роботи WordPress. Додавання відео в WordPress зазвичай здійснюється шляхом прямого зв'язування з відео за допомогою блоку Video в Gutenberg або oEmbeds. Ось приблизний скріншот блоку Gutenberg Video:
Потім WordPress застосовує URL для генерації коду Embed (він же iFrame) для працюючого сайту. Проблема в тому, що WordPress завжди бере URL youtube.com, і немає способу змінити його на youtube-nocookie.com без коду користувача.
Будемо сподіватися, що в майбутньому WordPress оновить свій відеоблок, запропонувавши спеціальне налаштування, щоб вам не довелося використовувати код для відключення cookie-файлів.
Змінити WordPress YouTube Embeds
Існує кілька способів змінити вбудовані відео Ютуба на WordPress, щоб запобігти використанню файлів cookie.
Найкращий спосіб - це, ймовірно, підключення до embed_oembed_html. Цей хук фільтрує кінцевий висновок будь-якого oEmbed на сайті. Застосовуючи цей хук, ми можемо гарантувати, що всі відео Ютуба будуть змінені незалежно від того, куди вони вбудовані.
Ось приклад фрагмента, який можна вставити на своєму сайті:
/**
* Modify YouTube Embeds to Disable Cookies.
*
* @link https://www.wpexplorer.com/wordpress-youtube-embeds-nocookie/
*/
add_filter( 'embed_oembed_html', function( $html ) {
if ( str_contains( $html, 'youtube.com' ) ) {
$html = str_replace( 'youtube.com', 'youtube-nocookie.com', $html );
}
return $html;
}, 10 );Важливо: фрагменти, що використовуються у статті, вимагають PHP 8.0+, тому що ми використовуємо сучасну функцію str_contains(). Також передбачається, що відео додаються за допомогою основних функцій WordPress, а не функцій теми користувача або плагіна. Якщо фрагмент не працює, спробуйте переключити теми та вимкнути плагіни, щоб знайти конфлікт.
Зміна вбудованих iFrame та «Catch-All»
Якщо на своєму сайті ви не використовуєте стандартну функціональність WordPress oEmbed, а замість цього вставляли повний код вставки Ютуба у свої пости, то тоді знадобиться інший фрагмент.
Цей фрагмент можна додати як універсальний код для заміни youtube.com на youtube-nocookie.com у пості/контенті сторінки.
/**
* Modify the WordPress content output to modify youtube embed urls.
*/
add_filter( 'the_content', function( $content ) {
if ( str_contains( $content, 'youtube.com/embed' ) ) {
$content = str_replace( 'youtube.com/embed', 'youtube-nocookie.com/embed', $content );
}
return $content;
}, 100 );Попередній код шукатиме youtube.com/embed та замінювати youtube-nocookie.com/embed всередині вашого поста на фронтенді. Таким чином, якщо у вас є будь-які відеовставки, додані вручну, вони також будуть оновлені.
Ви могли помітити, що використовується високий пріоритет «100» для add_filter функції. Причина цього в тому, що код запускається після розбирання будь-яких коротких кодів та блоків. Таким чином, будь-які відео, додані через короткі коди або блоки WordPress, також будуть мати відключені куки.
Джерело: wpexplorer.com





















Коментарі до запису: 0