Описание oembed_dataparse
— Filter
Хук oembed_dataparse позволяет изменять данные, получаемые из oEmbed-сервисов перед их выводом. Он срабатывает после того, как WordPress обработал URL для встраиваемого контента, но до его отображения на странице, позволяя модифицировать HTML или другие данные, которые будут возвращены
Примеры использования
Пример изменения HTML-кода для YouTube видео:
add_filter('oembed_dataparse', function($data, $url, $post_id) {
if (strpos($url, 'youtube.com') !== false) {
// Изменяем стиль для YouTube-видео
$data = str_replace('iframe', 'iframe style="border: 2px solid red;"', $data);
}
return $data;
}, 10, 3);
В этом примере мы оборачиваем iframe YouTube в рамку красного цвета.
Пример удаления атрибутов из HTML-кода:
add_filter('oembed_dataparse', function($data, $url, $post_id) {
// Убираем атрибут width и height у встраиваемого контента
$data = preg_replace('/(width|height)="[0-9]+"/', '', $data);
return $data;
}, 10, 3);
Мы удаляем атрибуты width и height из HTML-кода.
Пример добавления кастомного класса к встраиваемому контенту:
add_filter('oembed_dataparse', function($data, $url, $post_id) {
// Добавляем класс 'custom-oembed' к обертке встраиваемого контента
$data = str_replace('
Здесь мы добавляем класс к iframe.
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо модифицировать отображение встраиваемого контента на вашем сайте
– Производительность
Поскольку изменения касаются только вывода HTML, влияние на производительность минимально
– Предупреждения
Будьте осторожны при изменении HTML, чтобы не нарушить его функциональность
Альтернативы
Тип: filter
Этот хук позволяет изменять данные, возвращаемые oEmbed-сервисом до их обработки
Используйте его, если нужно модифицировать данные непосредственно перед их отправкой в oEmbed