プロのクリエイターがホームページの作成や運用ノウハウについて無料公開!

ホームページTIPS
facebook twitter mail

このサイトでは、ホームページ制作運用に関する各種の情報を無料公開しています。
内容についてのご意見・ご指摘については、フォームからお知らせいただけば、適宜変更させていただきます。

wordpressに関するTips

2017.10.3更新

Contact Form 7 | 送信後にサンクスページに遷移させるプログラム。「on_sent_ok」でない方法

Attention!

wordpressのプラグイン「Contact Form 7」はとても便利で使っている人も多いと思います。フォーム送信後に送信完了のサンクスページにリダイレクトさせるjavascriptの「on_sent_ok」は2017年内に廃止される予定との事で、それに代替する「サンクスページ自動遷移」の方法をご紹介します。

1まずは「on_sent_ok」でリダイレクトさせる方法について。※2017年内に廃止予定、現在は非推奨です。

							
							

 

手順はとても簡単です。コンタクトフォーム(お問い合わせ)から「その他の設定」タブを開き、以下を入力するだけでフォーム送信後、自動的にリダイレクトできます。

on_sent_ok: ‘ location.replace(“https://ここにはサンクスページのURLなどを記載”) ; ‘
on_sent_ok: “return;”

 

21の方法が今後、使えなくなるという事で、これからは「functions.php」に以下を記載すればリダイレクト設定ができます。
//functions.phpファイルに以下を記載します

<?php

//ここから
add_action( 'wp_footer', 'mycustom_wp_footer' );

function mycustom_wp_footer() {
?>
<script type="text/javascript">
  if(jQuery('.wpcf7').length){ //formのclassが存在するか判定
    var wpcf7Elm = document.querySelector( '.wpcf7' );
    wpcf7Elm.addEventListener( 'wpcf7mailsent', function( event ) {
     location.replace('遷移先のURL');
   }, false );
  }
</script>
<?php
}

//ここまで

?>

wp_footerにアクションをかけておき、DOMが発生してformタグに「wpcf7」のクラス属性がある場合に遷移先URLに置き換える、という処理になります。作業的にはとても簡単に代替できるので、まだ切り替えていない人は今後のためにも覚えておきましょう。

トップへ