WordPressのPHPファイルにContact Form7で作成したフォームを埋め込みたいっす!ショートコードを入れてもフォームが表示されないっす!
Contact Form7で生成されるショートコードを入れるだけでは表示はされないぞ。PHPで出力する方法をお教えしよう!
『Contact Form7』で作成したフォームをWordPressのテンプレートファイル(PHP)に埋め込みたいことってありますよね。主にはLP用のPHPなどが想定されるかと思います。利用しているテーマとは異なるデザインで組んだけど、フォームを個別に作るのは面倒だなどの理由が考えられます。
ショートコードを直接記載しても、意味はありません。きちんとPHPの関数として出力できれば、通常通りに表示は可能です。
PHPの関数としてショートコードを扱う
Contact Form7でフォームを作成すると、[contact-form-7 id="1234" title="お問い合わせフォーム"]
のようなショートコードが発行されます。これをそのままPHPに貼り付けたとしても、[contact-form-7 id=”1234″ title=”Contact form 1″]と表示されるだけで、本来表示させたいフォームは表示されません。
そこでPHPの関数を使うというわけです。上記のショートコードでのPHPに入力するコードがこちらになります。
<?php echo apply_shortcodes( '[contact-form-7 id="1234" title="お問い合わせフォーム"]' ); ?>
もちろんid="1234"
やtitle="お問い合わせフォーム"
の""
内は表示させたい作成フォームによって異なります。
このような形式のコードを利用したいテンプレートファイル(PHP)に埋め込むことで、通常通りのフォームを表示させることが実現できます。
まとめ:PHPファイルにお問い合わせフォームを埋め込む方法
『Contact Form7』は通常ですと、固定ページや投稿ページごとにショートコードを入力するだけで、指定のフォームを表示させることができます。
ですが、PHPファイルでは同様の対応では表示させることはできません。そこはきちんとPHPのルールに従う必要があるわけです。
- フォーム作成後に発行されるショートコードを使用
- PHPの関数として扱うことでショートコードが有効化
コメント(承認制)