プラカンブログSTAFF BLOG

2019.07.16

WordPressのショートコードを使ってみる

WordPressにはデフォルトの機能でショートコード(Shortcodes)というものがあるのを知っていますか?プラグインを使うときにショートコードを使うことがあったので、機能のことは知っているけど、詳しい使い方を知らなかったので調べて使ってみることにしましたー。

まずはショートコードって何?

検索してみたらWordPress.comに説明ページが

What is a shortcode?

shortcode is a WordPress-specific code that lets you do nifty things with very little effort. Shortcodes can embed files or create objects that would normally require lots of complicated, ugly code in just one line. Shortcode = shortcut.

https://en.support.wordpress.com/shortcodes/

簡単に言うとショートコードはファイルを埋め込んだり、複雑な長いコードを1行のコードで呼び出すことができるWordPress固有のコードのことで、【ショートコード=ショートカット】という感じかと。
ショートコードは通常の投稿、固定ページやカスタム投稿タイプの本文の中で使うことができます。
(エディタは「ビジュアル」、「テキスト」のどちらでも使用可能です。)

そしてショートコードには特に何もしなくて使えるショートコード(登録済みショートコード)と、自前で追加できるタイプのものがあります。

登録済みショートコード一覧

[audio][caption][gallery][playlist][video]
参照:ビルトインおよび追加のショートコード

そして自前で登録できるショートコード。
よく見たり馴染みがあるのはContact Form 7のショートコードだと思います。

[contact-form-7 id=”◯◯◯” title=”お問い合わせ”]

こんなの。

自前のショートコードを作ってみる

ショートコード APIの関数【add_shortcode()】を使って、functions.phpに定型文と登録し追加したショートコードで定型文を呼び出してみます。

CodexのショートコードAPI 関数リファレンスのadd_shortcode()より

function add_shortcode( $tag, $func )

新しいショートコードハンドラー関数を登録します。
$tag は myshortcode のようなユーザーによって記述されるショートコード文字列
(角括弧 [ と ] を除いたもの)です。$func はハンドラー関数名です。

ひとつのショートコードには1つのハンドラー関数のみが存在できます。
同じ $tag 名に対して再び add_shortcode() を呼び出すと以前のハンドラーが上書きされます。

わかりやすく書くと。

function 関数名(){
	return "ショートコードで呼び出される定型文";
}
add_shortcode( 'ショートコード名', '関数名' );

それを実際に使える方にしてみますと、こんな感じ。

function pdc_shortcode(){
	return "プラスデザインカンパニーです♪";
}
add_shortcode( 'pluscode01', 'pdc_shortcode' );

そして呼び出すショートコード名+[](ブラケット)でかこってWYSIWYGエディタに記述します。

[pluscode01]

こんな感じに書きます。

ブラウザにreturnに設定しておいた【プラスデザインカンパニーです♪】と表示されたら成功です!

ブログの最後などに決まって同じ文章を書く場合などにこのショートコードの関数を使って定型文を作っておいておくと便利だと思います!

また上記のfunctions.phpに書いたコードはジェネレーターで作成することができます。
Shortcodes Generator

他に使える関数や制限事項など、詳しい説明は Codexのショートコード_API にあるので参照してみてください。

+dc(な)

この記事は、NAGATOMI が書きました。