当サイト、Codex 日本語版は今後積極的な更新は行わない予定です。後継となる新ユーザーマニュアルは、https://ja.wordpress.org/support/ にあります。
万が一、当サイトで重大な問題を発見した際などは、フォーラムWordSlack #docs チャンネルでお知らせください。</p>

「関数リファレンス/do shortcode」の版間の差分

提供: WordPress Codex 日本語版
移動先: 案内検索
(12:37, 1 September 2013 Djkaz 版 に更新。各セクションにdivタグを埋め込み)
(用例: クリーンアップ。)
 
(2人の利用者による、間の3版が非表示)
2行目: 2行目:
 
== 説明 ==
 
== 説明 ==
 
</div>
 
</div>
[[ショートコード API|ショートコード]] を探し、そのフックを使用してショートコードをフィルタします。
+
 
 +
指定されたコンテンツから[[ショートコード API|ショートコード]]を探し、そのフックを使用してショートコードをフィルターします。
  
 
<div id="Usage">
 
<div id="Usage">
== 使用法 ==
+
== 使い方 ==
 
</div>
 
</div>
 +
 
  <?php echo do_shortcode( $content ) ?>
 
  <?php echo do_shortcode( $content ) ?>
  
 
<div id="Parameters">
 
<div id="Parameters">
== パラメーター ==
+
== パラメータ ==
 
</div>
 
</div>
{{Parameter|$content|文字列|ショートコード名}}
 
  
<div id="Return Values">
+
{{Parameter|$content|文字列|コンテンツ。この中からショートコードを探す。}}
 +
 
 +
<div id="Return_Values">
 
== 戻り値 ==
 
== 戻り値 ==
 
</div>
 
</div>
; (文字列) : ショートコードハンドラからの出力で置き換えられたショートコードの内容。
 
  
<div id="Usage">
+
{{Return||文字列|ショートコードのハンドラー関数の出力でショートコードを置き換えた後のコンテンツ。}}
== 使用法 ==
+
 
 +
<div id="Examples">
 +
== 用例 ==
 
</div>
 
</div>
add_filter('the_content', 'do_shortcode', 11); // shortcodes.php より。
 
  
// ショートコードを PHP ファイル (投稿エディタの外) で使用する
+
WordPress コアの <tt>shortcodes.php</tt> では次のように使われています:
  echo do_shortcode('[gallery]');
+
  add_filter( 'the_content', 'do_shortcode', 11 );
  
// 開始と終了のショートコードがある場合。
+
PHP ファイルの中でショートコードを使う場合(投稿編集時を除きます):
  echo do_shortcode('[iscorrect]'.$text_to_be_wrapped_in_shortcode.'[/iscorrect]');
+
  echo do_shortcode( '[gallery]' );
  
// テキストウィジェットでショートコードを使用する
+
「囲み形式」のショートコードの場合:
  add_filter('widget_text', 'do_shortcode');
+
  echo do_shortcode( '[iscorrect]' . $text_to_be_wrapped_in_shortcode . '[/iscorrect]' );
  
  // Landing Page Template のようにショートコードを用いる場合。
+
テキストウィジェットの中でショートコードを使う場合:
  echo do_shortcode('[contact-form-7 id="91" title="quote"]');
+
  add_filter( 'widget_text', 'do_shortcode' );
 +
 
 +
Landing Page Template のようにショートコードを使う場合:
 +
  echo do_shortcode( '[contact-form-7 id="91" title="quote"]' );
 +
 
 +
ショートコードの出力を変数に格納する場合:
 +
<pre>
 +
$var = do_shortcode( '[gallery]' );
 +
echo $var;
 +
</pre>
 +
 
 +
[[Embeds|WordPress に組み込み済みの <tt>embed</tt> ショートコード]]には、ひとつ例外があります。このショートコードを <code>do_shortcode</code> で使う場合は次のようなコードにしてください:
 +
<pre>
 +
$embedurl = 'http://yourembeddableurl.com';
 +
if ( ! empty( $embedurl ) ) {
 +
$var = apply_filters( 'the_content', "[embed]" . $embedurl . "[/embed]" );
 +
echo $var;
 +
}
 +
</pre>
  
 
<div id="Notes">
 
<div id="Notes">
== ==
+
== 参考 ==
 
</div>
 
</div>
ショートコードタグが定義されていない場合は、なにもフィルタせずに表示します。プラグインを無効化した場合に、ショートコードがそのまま表示されるかもしれません。
 
  
<div id="Change Log">
+
ショートコードタグがひとつも定義されていない場合は、なにもフィルタせずにコンテンツを返します。これはプラグインを無効化すると起こることがあり、そのときは投稿やコンテンツにショートコードがそのまま現れます。
== 改訂履歴 ==
+
 
 +
<div id="Change_Log">
 +
== 変更履歴 ==
 
</div>
 
</div>
* [[Version 2.5|2.5.0]]にて導入されました。
 
  
<div id="Source File">
+
[[Version 2.5|2.5.0]] : 新規導入。
 +
 
 +
<div id="Source_File">
 
== ソースファイル ==
 
== ソースファイル ==
</div><tt>do_shortcode()</tt> は、{{Trac|wp-includes/shortcodes.php}} にあります。
+
</div>
 +
 
 +
<tt>do_shortcode()</tt> {{Trac|wp-includes/shortcodes.php}} にあります。
  
 
<div id="Related">
 
<div id="Related">
== 関連項目 ==
+
== 関連資料 ==
 
</div>
 
</div>
 +
 
{{Shortcode Tags}}
 
{{Shortcode Tags}}
 
{{原文| Function Reference/do shortcode |135103}}<!-- 12:37, 1 September 2013 Djkaz 版 -->
 
  
 
{{Tag Footer}}
 
{{Tag Footer}}
  
 +
{{原文| Function Reference/do_shortcode|150313}} <!-- 13:31, 23 March 2015 Ore4444 版 -->
 +
 +
{{DEFAULTSORT:Do_shortcode}}
 
[[Category:関数]]
 
[[Category:関数]]
 +
 +
[[en:Function Reference/do shortcode]]
 +
[[it:Riferimento funzioni/do shortcode]]

2015年6月15日 (月) 19:46時点における最新版

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

使い方

<?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(), shortcode_exists(), has_shortcode(), get_shortcode_regex(), wp_audio_shortcode(), wp_video_shortcode(), フィルター no_texturize_shortcodes /en


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


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