WordPress YouTube Z-Index Fix

/ Published in: PHP
Save to your folder(s)

WordPress allows you to embed videos so easily using oEmbed. You can easily add videos to your post just pasting their URL to your post. WordPress handles all the object and embed HTML for you. But this code is missing wmode parameter which is necessary for CSS z-index to work.

Here I will show you how to filter the HTML for the embedded video and add this parameter so easily. For this we will use the oembed_dataparse filter which is run when a user adds a video to the post. Place the following code in your theme's functions.php file:

Copy this code and paste it in your HTML
  1. function stf_embed_filter( $html, $data, $url ){
  2. $html = preg_replace('!(<object[^>]*>)(.*?)</object>!is', "$1$2<param name=\"wmode\" value=\"opaque\"></object>", $html);
  3. $html = preg_replace('!(<embed[^>](.*?)>)(.*?)</embed>!is', "<embed $2 wmode=\"opaque\">$3</embed>", $html);
  4. return $html;
  5. }
  6. add_filter('oembed_dataparse', 'stf_embed_filter', 90, 3 );

URL: http://shailan.com/how-to-make-auto-embedded-videos-obey-z-index/

Report this snippet


RSS Icon Subscribe to comments

You need to login to post a comment.