¿Cómo envolver el video incrustado oEmbed en etiquetas DIV dentro del_contenido?


9

Estoy haciendo un tema de Wordpress para un sitio web con video tutoriales. Me gustaría poner el video que está incrustado en el contenido (con oEmbed ) en un div aparte.

Un ejemplo

El contenido completo (salida de the_content()) es algo como esto:

<p><iframe src="http://player.vimeo.com/video/0000000" width="900" height="506" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe></p>
<p>This is an Test of a tutorial. Bla bla bla</p>

Y me gustaría hacer esto para:

<div id="video">
<iframe src="http://player.vimeo.com/video/0000000" width="900" height="506" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>
</div>
<div id="content">
<p>This is an Test of a tutorial. Bla bla bla</p>
</div>

He tratado de dividirlo a través de una expresión regular, pero se convirtió en un desastre.

Respuestas:


16

El embed_oembed_htmlfiltro se ejecuta antes de que se genere el HTML de un recurso oEmbed, por lo que puede conectarlo y ajustar la salida de la divsiguiente manera. No puedo pensar en una forma simple de envolver el otro contenido.

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

-3

Si está intentando usar oEmbed en su plantilla de tema de Wordpress, intente esto:

<aside>
    <p>oEmbed video in template test</p>
    <?php echo apply_filters('the_content', "http://vimeo.com/41205967"); ?>
</aside>

Este fragmento mostrará un video de Vimeo.com directamente en su tema, sin tener que crear una publicación manualmente.


Los videos están incrustados en publicaciones. Ese fue el problema.
— Corbatas
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.