Описание pre_oembed_result
— Filter
Хук pre_oembed_result позволяет изменить результат, возвращаемый оEmbed, перед его выводом. Он срабатывает при обработке оEmbed-ссылок и позволяет вмешиваться в результат, получаемый от сторонних сервисов и API
Примеры использования
Пример изменения результата оEmbed для добавления кастомного класса к iframe:
add_filter('pre_oembed_result', function($result, $url, $post_id) {
if (is_string($result)) {
$result = str_replace('
В этом примере мы добавляем кастомный класс к iframe, если результат является строкой.
Пример возврата альтернативного контента вместо оEmbed:
add_filter('pre_oembed_result', function($result, $url, $post_id) {
if ($url === 'https://example.com/video') {
return 'Альтернативный контент';
}
return $result;
}, 10, 3);
Здесь мы возвращаем альтернативный HTML-код вместо стандартного оEmbed-контента для конкретного URL.
Пример полного удаления оEmbed-контента:
add_filter('pre_oembed_result', function($result, $url, $post_id) {
return false;
}, 10, 3);
В этом примере мы полностью удаляем оEmbed-контент, возвращая false.
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо изменить результат оEmbed-контента перед его выводом на сайт
– Производительность
Хук может оказывать влияние на производительность, если используется для сложной обработки данных, поэтому старайтесь оптимизировать код
– Предупреждения
Следите за тем, чтобы изменения не нарушали функциональность оEmbed и не приводили к ошибкам в выводе контента
Альтернативы
Тип: filter
Этот хук позволяет изменить результат оEmbed после его получения, но перед его выводом на страницу
Используйте его, если нужно изменить оEmbed-контент, уже полученный от сервиса