web-dev-qa-db-ja.com

テキストウィジットに埋め込む方法は?

私は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でウィジェットに埋め込む方法はありますか。

2
feetwet

ショートコードは、デフォルトではテキストウィジェットではサポートされていません。 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 を参照してください。

4
Gabriel

@Gabrielから提案されたコードは私には機能しませんが、これは機能します。

add_filter( 'widget_text', array( $wp_embed, 'run_shortcode' ), 8 );
add_filter( 'widget_text', array( $wp_embed, 'autoembed'), 8 );
1
Gino