IT女子のお気に入りフォルダ

管理人の備忘録と実践を兼ねた(出来るだけ)役に立つ情報を配信するブログです。

Contact Form7に独自のショートコードを追加する方法


Contact Form7内に画像を表示しようとしたとき、PHPコードを使うことができないので画像パスを指定するのに困りました。テーマパスの取得にはget_template_directory_uri()と書ければ簡単なのに・・・
対応策はいくつかありますが、私はContact Form7に独自のショートコードを追加しています。簡単便利なのでこの方法はおすすめです。

ショートコードの追加はすごく簡単です。テーマのfunctions.phpに以下を記述します。

// Contact Form 7 にショートコードを追加
function get_mytheme_url() {
    return get_template_directory_uri();
}
wpcf7_add_shortcode('show_mytheme_url', 'get_mytheme_url', true);

テーマパスを取得できるショートコードにしてみました。
wpcf7_add_shortcode('表示するときに使う名前', '関数名', true);です。

Contact Form7の管理画面内での記述は以下のようにします。

[show_mytheme_url]

例えば、テーマ配下のimagesフォルダ内の画像を表示したいときは、このショートコードを使って

<img src="[show_mytheme_url]/images/sample.png" alt="サンプル画像" width="200" height="200">

と書けばOKです。