いや、動かない(飛ばない)んだけどって場合
functions.phpで、wp側のjQueryを読み込まない設定にしてるとthanksPageに遷移しない。
私の場合、functions.phpに記述していた以下一文が邪魔しててthanksPageに遷移しなかった。
// wp側のjqueryをはき出さない
function my_delete_local_jquery() {
wp_deregister_script('jquery');
}
add_action( 'wp_enqueue_scripts', 'my_delete_local_jquery' );functions.phpに以下追加
以下通常の環境でthanksPageに飛ばす方法。
formが1つの場合
<?php
add_action( 'wp_footer', 'add_thanks' );
function add_thanks() {
?>
<script>
document.addEventListener( 'wpcf7mailsent', function( event ) {
location = '/thanks/'; //サンクスページURL 多分どんないろんな環境でもルートパスでOK
}, false );
</script>
<?php
}
?>formが2個以上で別々のthanksPageに飛ばしたい
add_action( 'wp_footer', 'add_thanks_page' );
function add_thanks_page() {
echo <<< EOD
<script>
document.addEventListener( 'wpcf7mailsent', function( event ) {
if ( '000' == event.detail.contactFormId ) { //『000』はcontactForm7 ショートコードのID
location = '/thanks/';
}
else
if ( '000' == event.detail.contactFormId ) { //『000』はcontactForm7 ショートコードのID
location = '/thanks-2/';
}
}, false );
</script>
EOD;
}
コメントを残す