私はYouTubeビデオをテキストウィジェットに埋め込もうとしています、そしてWordpress 4.0はレンダリング時に埋め込みを取り除きます。たとえば、これをウィジェットの本体に入れると、次のようになります。
Before
[embed]http://youtu.be/JQ_2De2cnzI&rel=0&showinfo=0&w=120[/embed]
After
それから私がブラウザでdivを調べるとき、私はこれで終わります:
<div class="textwidget">Before
After</div>
Wordpressでウィジェットに埋め込む方法はありますか。
ショートコードは、デフォルトではテキストウィジェットではサポートされていません。 functions.phpに以下を追加してください。
// Enable shortcodes in WP Text Widget
add_filter( 'widget_text', 'shortcode_unautop');
add_filter( 'widget_text', 'do_shortcode', 11);
ビデオURLを[embed]ショートコードでラップする代わりに、テキストウィジェットで次のように使用します。
[video src="http://youtu.be/JQ_2De2cnzI&rel=0&showinfo=0&w=120"]
[video]ショートコードの詳細については、 Codex を参照してください。
@Gabrielから提案されたコードは私には機能しませんが、これは機能します。
add_filter( 'widget_text', array( $wp_embed, 'run_shortcode' ), 8 );
add_filter( 'widget_text', array( $wp_embed, 'autoembed'), 8 );