• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

関数リファレンス/do shortcode

提供: WordPress Codex 日本語版
移動先: 案内検索

指定されたコンテンツからショートコードを探し、そのフックを使用してショートコードをフィルターします。

使い方

<?php echo do_shortcode( $content ) ?>

パラメータ

$content
文字列) (必須) コンテンツ。この中からショートコードを探す。
初期値: なし

戻り値

(文字列) 
ショートコードのハンドラー関数の出力でショートコードを置き換えた後のコンテンツ。

用例

WordPress コアの shortcodes.php では次のように使われています:

add_filter( 'the_content', 'do_shortcode', 11 );

PHP ファイルの中でショートコードを使う場合(投稿編集時を除きます):

echo do_shortcode( '[gallery]' );

「囲み形式」のショートコードの場合:

echo do_shortcode( '[iscorrect]' . $text_to_be_wrapped_in_shortcode . '[/iscorrect]' );

テキストウィジェットの中でショートコードを使う場合:

add_filter( 'widget_text', 'do_shortcode' );

Landing Page Template のようにショートコードを使う場合:

echo do_shortcode( '[contact-form-7 id="91" title="quote"]' );

ショートコードの出力を変数に格納する場合:

$var = do_shortcode( '[gallery]' );
echo $var;

WordPress に組み込み済みの embed ショートコードには、ひとつ例外があります。このショートコードを do_shortcode で使う場合は次のようなコードにしてください:

$embedurl = 'http://yourembeddableurl.com';
if ( ! empty( $embedurl ) ) {
	$var = apply_filters( 'the_content', "[embed]" . $embedurl . "[/embed]" );
	echo $var;
}

参考

ショートコードタグがひとつも定義されていない場合は、なにもフィルタせずにコンテンツを返します。これはプラグインを無効化すると起こることがあり、そのときは投稿やコンテンツにショートコードがそのまま現れます。

変更履歴

2.5.0 : 新規導入。

ソースファイル

do_shortcode()wp-includes/shortcodes.php にあります。


ショートコード: do_shortcode(), add_shortcode(), remove_shortcode(), remove_all_shortcodes(), shortcode_atts(), strip_shortcodes() /en, shortcode_exists(), has_shortcode(), get_shortcode_regex() /en, wp_audio_shortcode(), wp_video_shortcode(), フック no_texturize_shortcodes /en


関数リファレンステンプレートタグ目次もご覧ください。


最新英語版: WordPress Codex » Function Reference/do_shortcode最新版との差分