WordPress テーマの PHP テンプレート上でショートコードを呼び出す方法
更新日: 公開日:2011/08/30
WordPress のショートコードとは「投稿」や「固定ページ」において PHP のプログラムが使えるように、テーマの functions.php に定義したプログラムを呼び出すための機能です。通常ショートコードを呼び出すには [カッコ] で括って、次のようなコードで記します。
ショートコード呼び出し方法
[ショートコード名称]
このショートコード部分は、本文を出力する前に funcsions.php で処理されます。
しかし WordPress のテーマである各種テンプレート PHP ファイルでは、このような書き方をしてもショートコードのプログラムは呼び出せません。これは既にテンプレートファイル自体が PHP プログラムであるため、別途ショートコードを実行する関数を明記しなくてはいけません。
PHP テンプレート上でショートコードを呼び出す方法
ショートコードの呼び出し方法
テーマファイル上でショートコードを呼び出す
<?php echo do_shortcode('[ショートコード]'); ?>
do_shortcode 関数の引数に、利用したいショートコードをシングルクォーテーションで囲んで記述すれば、テンプレートファイルのどこからでもショートコードのプログラムが呼び出せるようになります。
開始・終了の囲み形式の場合
[test]…[/test] のように、ショートコードの開始・終了を表す囲み形式でも、同じように do_shortcode の引数として記述するだけ。ソースコードが読みやすいように、変数を活用すると良いです。
囲み形式のショートコード呼び出し
<?php $scInnerText = 'html タグなどショートコードで挟む内容'; echo do_shortcode('[ショートコード]' . $scInnerText . '[/ショートコード]'); ?>