Как предотвратить перекрывание контента роликами Youtube в WordPress

Вы замечали, что иногда на сайтах, где размещаются ролики с Ютюба, само видео перекрывает остальной контент? Такое может происходить, если на сайте есть выпадающие меню, плавающие панели, всплывающие лайтбоксы и прочее. И многих дизайнеров такое положение вещей и внешний вид сайта очень расстраивает. В версиях WordPress 2.9 и ниже нужно было добавить к каждому коду для встраивания видео — ?wmode=transparent, однако в новых версиях все достаточно упростилось. Все, что нужно сделать, это скопировать ссылку на видео и оно встроится в запись автоматически. Однако, теперь стало сложнее добавлять тег ?wmode=transparent к каждому видео. Но, не стоит беспокоиться. В этой статье мы поделимся с вами сниппетом, который предотвратит перекрывание контента роликами Youtube и другими медиафайлами.

Пример:

youtubeoembedissue[1]

Все, что нужно сделать, это добавить код в файл functions.php вашей темы или в плагин для сайта WordPress:

function add_video_wmode_transparent($html, $url, $attr) {

if ( strpos( $html, "<embed src=" ) !== false )
   { return str_replace('</param><embed', '</param><param name="wmode" value="opaque"></param><embed wmode="opaque" ', $html); }
elseif ( strpos ( $html, 'feature=oembed' ) !== false )
   { return str_replace( 'feature=oembed', 'feature=oembed&wmode=opaque', $html ); }
else
   { return $html; }
}
add_filter( 'embed_oembed_html', 'add_video_wmode_transparent', 10, 3);
VN:F [1.9.22_1171]
Rating: 0.0/5 (0 votes cast)

Об авторе ADv

Занимаюсь разработкой сайтов и магазинов на WordPress. Оказываю платные помощь и консультации. Skype: advokat_b
Scroll To Top