contact form7で確認画面がまったく反応しなかった。
on_sent_ok: “alert(‘sent ok’);”
もまったくだめ…。
カスタムイベントトリガーもダメ。
はまりまくって、最終的に見つけた方法。
【原因】
1系のjqueryがいやで、jqueryを消して手動でフッターにべた書きインクルードしていた。
【解決方法】
functions.phpに以下を追加。
//jsの削除
function deleteJs() {
wp_deregister_script(‘jquery’); //origin jq
wp_enqueue_script(‘jquery’, get_bloginfo( ‘template_directory’ ) . ‘jqueryの置場所フォルダ/jquery.min.js’, array(), ‘2.2.4’); // any jquery
}
add_action( ‘wp_enqueue_scripts’, ‘deleteJs’ );
で古いjqueryを一旦消して、自分で用意したjqueryをインクルードさせる。
まずこれで、contact form7がjqueryを読み込むようになる。
ほんで、自分のjsファイルに以下を記述して、それぞれのイベントをキャッチできるようになりました。
if($(‘.wpcf7’).length > 0){
$(‘.wpcf7’).on(‘wpcf7:invalid’, function() {
alert();
});
$(‘.wpcf7’).on(‘wpcf7:mailsent’, function() {
alert(‘ok’);
});
}
あーしんど。