WordPressのContact Form 7で送信完了画面を設置する方法

今回は、Contact Form 7によるメールフォームを少しカスタマイズして、送信ボタンを押した後に送信完了ページに飛ばす方法をまとめました。

Contact Form 7のメールフォームで、送信ボタンを押すると「ありがとうございます。メッセージは送信されました。」と表示されますが、完了ページに切り替わるわけではないです。なので、固定ページで送信完了ページを用意して、メールが送信されたらその完了ページへ遷移させるというのが、今回の記事の内容です。

Contact Form 7で送信完了画面を用意する方法

今回のカスマタイズの手順から先にまとめます。

Contact Form 7で送信完了画面を用意する手順
  1. 固定ページで完了ページ(サンクスページ)を用意する
  2. functions.phpにコードを追加
  3. サンクスページのheader.phpにnoindexを追加
  4. サンクスページにコンバジョンタグを追加

基本は❶、❷の手順で完了画面の設置と設定は完了です。あとの❸サンクスページのheader.phpにnoindexを追加したり、❹サンクスページにコンバジョンタグを追加する作業は必要であればということでOKです。

固定ページで完了ページ(サンクスページ)を用意する

まずはWordPress管理画面の固定ページで「新規追加」をクリックして、
WordPressのContact Form 7で送信完了画面を設置する方法

thanksなどのスラッグでお問い合わせメール送信完了ページを1つ用意します。
WordPressのContact Form 7で送信完了画面を設置する方法

送信完了画面は、こんな感じでテキストなどを用意しておきましょう。

お問い合わせメールの送信が完了しました。

この度はお問い合わせいただきまして、誠に有り難うございました。
メールでいただいた以下の内容は確認させていただきます。
確認までにお時間かかる場合がありますので、なにとぞご了承くさだいませ。

ブログTOPへ戻る

functions.phpにコードを追加

今回はSTORKの子テーマを使っているという前提で進めますが、管理画面の「外観」から「テーマエディター」へ進み、
WordPressのContact Form 7で送信完了画面を設置する方法

編集するテーマがstork_customであることを確認して、テーマのための関数(functions.php)をクリックします。
WordPressのContact Form 7で送信完了画面を設置する方法

fucntions.phpのファイルの下の方に、下図のようにコードを流し込んで「ファイルを更新」ボタンをクリックします。
WordPressのContact Form 7で送信完了画面を設置する方法

流し込むコードはこんな感じですので、コピペして使ってもらえればと思います。


add_action( 'wp_footer', 'wp_footer_wpcf7mailsent');
function wp_footer_wpcf7mailsent() {?>
<script type="text/javascript">
		document.addEventListener( 'wpcf7mailsent', function( event ) {
		location.replace("<?php echo home_url('/');?>thanks/");
	}, false );
</script><?php
}

ただし、6行目の<?php echo home_url('/');?>thanks/は、❶固定ページで完了ページ(サンクスページ)を用意するで新規追加した送信完了ページのURLに合わせてください。

メール送信完了後の動きを確認

ここまでの手順でメール送信後に完了ページを表示することができるようになりますので、実際に送信して確認してみますが、
WordPressのContact Form 7で送信完了画面を設置する方法

送信ボタンクリックすると「ありがとうございます。メッセージは送信されました。」の完了メッセージが表示された直後に、指定した固定ページ(thanks)に自動で切り替わります。
WordPressのContact Form 7で送信完了画面を設置する方法

以上が送信完了画面を表示する手順です。ここから先のカスタマイズは任意ですので、必要な方は確認してみてくださいね★

header.phpでサンクスページはnoindexにしておく

サンクスページだけにGoogleのクロールを拒否する設定を入れるカスタマイズですが、この作業を行うには以下の2つの方法があります。

  1. All in One SEO Packプラグインを使う
  2. All in One SEO Packを使わず、テーマファイルのPHPを編集する

All in One SEO Pack プラグインを使う

まずは初心者さんにオススメなのがAll in One SEO Packプラグインを使う方法です。このプラグインの使い方は別記事で詳細をまとめますので、そちらを参考にしていただいた上で・・・

具体的な手順は、固定ページのサンクスページの下にAll in One SEO Packというボックスが追加表示されるので、そこの「NOINDEX このページ/投稿」「NOFOLLOW このページ/投稿」にチェックを入れるだけです。
WordPressのContact Form 7で送信完了画面を設置する方法

そうすると、サンクスページページのソースコードに自動で<meta name="robots" content="noindex, nofollow">タグが挿入されるため、Googleのクロールを拒否することができます。
WordPressのContact Form 7で送信完了画面を設置する方法

All in One SEO Packを使わず、テーマファイルのPHPを編集する

続いてAll in One SEO Packプラグインを使わない方法ですが、こちらはテーマエディターページでSTORKのテーマファイル(header.php)を編集することになります。

ただ、STORKの子テーマを使っている場合にこの方法は問題があり、「外観」から「テーマエディター」ページへ進んでもheader.phpが見当たりません。。。
WordPressのContact Form 7で送信完了画面を設置する方法

これは、STORKの親テーマのheader.phpを子テーマの方でも編集できるようにしないといけないのですが、そのためにはサーバーとデスクトップの間でFTPを使ったファイル転送が必要となります。いちおう、FTPを使わずに親テーマのファイルを子ページに複製する方法もあるので別記事でまとめていますが、

STORKでFTPを使わず親テーマのファイルを子テーマに複製する方法

2019年1月2日

上記方法で子テーマでも編集できるようになったheader.phpを開き、以下のようなサンクスページだけnoindexを適用させるための条件分岐を入れます。
[code lang=”php”] <?php if(is_page(‘thanks’)):?>
<meta name=”robots” content=”noindex, nofollow”>
<?php else: endif;?>
[/code]

※条件分岐を入れる場所は<head>〜</head>の中であればどこでも良いです。
WordPressのContact Form 7で送信完了画面を設置する方法

これでサンクスページのソースコードに<meta name="robots" content="noindex, nofollow">タグが挿入されるようになります。

footer.phpにコンバジョンタグを追加

最後に、コンバージョンタグはページのフッター部分(テーマフィルでいうfooter.php)に挿入するものが多いので、STORKの子テーマでfooter.phpを編集できるようにしておく必要があります。また、サンクスページだけに限定してタグを表示させないといけないので、<?php if(is_page()): ?>の条件分岐も必要になります。

STORKの子テーマでfooter.phpを編集できるようにしておく必要は、以下の関連記事もご覧いただいた上で、

STORKでFTPを使わず親テーマのファイルを子テーマに複製する方法

2019年1月2日

子テーマのfooter.phpを開き、ページの下部に以下のような条件分岐を入れます。
[code lang=”php”] <?php if(is_page(‘thanks’)):?>

ここにコンバージョンタグを入れる

<?php else: endif;?>
[/code]

コードを入れる場所はタグによって指定が異なる場合もある(例えば</body>の直前など)ので、適切な場所に挿入するようにしてください。
WordPressのContact Form 7で送信完了画面を設置する方法

サンクスページのソースコードを確認し、フッターの下部にタグが表示されていることを確認してください.

以上で、Contact Form 7で送信完了画面を設置する方法のご紹介はおしまいです。おつかれさまでした★

このブログでは、Conctact Form 7のカスタマイズを色々と紹介していますので、下の関連記事から参考に見ていただければと嬉しいです★

WordPressのContact Form 7でやっておきたいカスタマイズ特集【2019年版】

2019年1月6日

WordPressのContact Form 7で送信完了画面を設置する方法のまとめ

最後に、WordPressのContact Form 7で送信完了画面を設置する方法のまとめを、以下に挙げておきます。

  1. Contact Form 7のメールフォームで完了ページを使えるようにするには、まずは固定ページでサンクスページを新規作成
  2. 次に、テーマエディターでfunctions.phpにコードを追加
  3. サンクスページのheader.phpにnoindexを追加したり、フッターにコンバジョンタグを追加することも可能

ブログを始めるならWordPressテーマSTORKがオススメ

理由は以下の記事でまとめています。

【STORK】有料テーマ購入を迷う人にストークをオススメする7つの理由2021年版

2019年6月1日

綺麗なデザインが最初から用意されているので、「ブログを書きたい」と思った時からすぐに始めることができます。しかも、執筆に便利なツールも一通りそろっているので、「書くことだけ」に集中できるという、ブロガーにとってはとても魅力的なテーマです。

是非STORKを試してみてくださいね★

関連記事

コメントを残す