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

  • 公開日:2013/9/9
この記事は最終更新日から6年以上が経過しています。


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=&quot;[show_mytheme_url]/images/sample.png&quot; alt=&quot;サンプル画像&quot; width=&quot;200&quot; height=&quot;200&quot;>

と書けばOKです。