it-swarm.com.de

Wie überschreibe ich das eingebettete YouTube?

Mir gefällt, wie Sie einfach eine URL direkt in den Beitrag einfügen können ... wie zum Beispiel:

http://youtube.com/watch?v=xyz oder http://vimeo.com/123456

Was ich tun möchte, ist, den Standardcode dafür zu ändern, um den Code von hier zu unterstützen: http://embedresponsively.com/

Wie kann ich den youtube und vimeo Code, den ich in functions.php annehme, irgendwie überschreiben?

2
Tallboy

Bei näherer Betrachtung des auf dieser Site bereitgestellten Codes sieht es so aus, als ob die Hauptunterschiede zu dem, was standardmäßig von WordPress ausgegeben wird, die folgenden sind:

  • der Iframe wird mit einem Div umschlossen, das die Klasse embed-container hat.
  • es gibt CSS-Stile, die von dieser Klasse verwendet werden

Um den eingebetteten Iframe in WordPress zu umbrechen, fügen Sie der Datei functions.php Ihres Themas oder einem Funktions-Plugin Folgendes hinzu:

add_filter('embed_oembed_html', 'my_embed_oembed_html', 99, 4);
function my_embed_oembed_html($html, $url, $attr, $post_id) {
return '<div class="embed-container">' . $html . '</div>';
}

und fügen Sie das von http://embedresponsively.com/ generierte CSS zu Ihrem Thema hinzu:

.embed-container { 
position: relative; 
padding-bottom: 56.25%; 
padding-top: 30px; 
height: 0; 
overflow: hidden; 
max-width: 100%; 
height: auto;
} 

.embed-container iframe, .embed-container object, .embed-container embed { 
position: absolute; 
top: 0; 
left: 0; 
width: 100%; 
height: 100%;
}

Ich habe den Filter getestet und es hat einwandfrei funktioniert. Ich habe das CSS allerdings nicht getestet, es liegt an dir, damit zu spielen.

Quelle für den Filter: http://wordpress.org/support/topic/adding-a-wrapping-div-to-video-embeds?replies=2

1
richardmtl