добавить фильтр во встраиваемые файлы YouTube?
Привет, ребята, при размещении ссылки на видео YouTube в бэкэнде (в посте или на странице) wordpress автоматически создает код для встраивания для меня.
Можно ли добавить к этому фильтр? Я бы хотел изменить ширину и высоту всех встроенных видео на 100%?
Например,
<object width="100%" height="100%">
<param name="movie" value="http://www.youtube.com/v/rBa5qp9sUOY?version=3">
<param name="allowFullScreen" value="true">
<param name="allowscriptaccess" value="always">
<embed src="http://www.youtube.com/v/rBa5qp9sUOY?version=3" type="application/x-shockwave-flash" width="100%" height="100%" allowscriptaccess="always" allowfullscreen="true">
</object>`
Есть идеи, как это решить?
Изменить: Или, по крайней мере, возможно добавить имя класса в тег объекта, чтобы я мог использовать javascript для влияния на высоту встроенное видео?
Обновление: Спасибо, я попробовал следующий фрагмент кода, но он не работает?
add_filter('oembed_result','oembed_result', 10, 3);
function oembed_result($html, $url, $args) {
// $args includes custom argument
// modify $html as you need
//return $html;
}
Если return $html является комментарием, видео на YouTube не должно отображаться правильно, однако оно появляется!
1 answers
Да, есть фильтр для Oembeds. Два (или даже больше) на самом деле: oembed_result
будет вызываться до того, как он будет помещен в кэш (поэтому только один раз за внешнее встраивание), и embed_oembed_html
после кэша (поэтому каждый раз, когда элемент отображается). Если вам нужно изменить его только один раз, oembed_result
, вероятно, ваш друг. Вторым параметром является $url
, поэтому, прежде чем что-то делать, проверьте, не пришло ли оно с Youtube.