web-dev-qa-db-fra.com

Comment ajouter la classe youtube et le type/html au code oembed?

Comment puis-je ajouter:

class="youtube-player" type="text/html"

à iframe comme:

 function Oembed_youtube_no_title($html,$url,$args){
    $url_string = parse_url($url, PHP_URL_QUERY);
    parse_str($url_string, $id);
    if (isset($id['v'])) {
        return '<iframe class="youtube-player" type="text/html" src="https://www.youtube.com/embed/' .$id['v'].'?vq=large&autohide=1&autoplay=1&fs=1&hl=fr&rel=0&loop=1" frameborder="0" allowfullscreen></iframe>';
    }
    return $html;
}
5
nka

Vous pouvez essayer ceci:

add_filter( 'embed_oembed_html', 'custom_youtube_oembed' );
function custom_youtube_oembed( $code ){
    if( stripos( $code, 'youtube.com' ) !== FALSE && stripos( $code, 'iframe' ) !== FALSE )
        $code = str_replace( '<iframe', '<iframe class="youtube-player" type="text/html" ', $code );

    return $code;
}

pour cibler la sortie HTML oembed de YouTube.

Lorsque j'intègre ce lien YouTube (Kraftwerk) dans le contenu du message

http://youtu.be/VXa9tXcMhXQ

Je reçois cette sortie HTML:

<iframe class="youtube-player" type="text/html"  
        width="625" height="469" 
        src="http://www.youtube.com/embed/VXa9tXcMhXQ?feature=oembed" 
        frameborder="0" allowfullscreen></iframe>

avec le filtre ci-dessus.

6
birgire