Wordpress3.6からmp3プレイヤーなどが記事内にショートコードを書くことで使えるようになっています。これらのショートコードですが記事外。テーマファイルで使いたいケースも結構あります。
で、その記述方法ですがdo_shortcode
というメソッドを使えば可能なようです。
<?php echo do_shortcode('[SHORTCODE]'); ?>
SHORTCODE
の部分を使いたいショートコードに置き換えて下さい。
例:
wordpressの記事内で下記のようなショートコードでmp3プレイヤーを表示しているとします。
[audio mp3="/uploads/sample.mp3"][/audio]
これをテーマファイルで使いたい時は
<?php echo do_shortcode('[audio mp3="/uploads/sample.mp3"]'); ?>
って感じに記述します。
ショートコード内で"(ダブルコーテーション)使われてることも多いので、
do_shortcode
関数の引数は'(シングルコーテーション)を使うのが無難だと思います。
ページの先頭で下記のようにwordpressのwp-blog-header.php
を読み込んでしまえば、
テーマファイルに限らずwordpressの関数が使えるようになるので
<?php require('./wp/wp-blog-header.php'); ?>
<?php echo do_shortcode('[contact-form-7 id="91" title="quote"]'); ?>
みたいにContact Form7プラグインで作ったフォームをテーマファイル外でも使えたりするので便利!
[参考にしました]
- Function Reference/do shortcode « WordPress Codex
- WordPressプラグインなしでも音声・音楽プレイヤーが記事内に埋め込めるようになってました | nekonomemo.net
- WordPress3.9でプラグインなしで音声プレイリストが作れるようになっていたので試してみました | nekonomemo.net
3.9からはプレイリストも出来るようになっているのですね!!
そして、、、、久しぶりにwordpress触るとすごく忘れている!!