見出し画像

CCBとCF7のエラー修正

CCBの3.0化の回り道
ブログtm106.jpのサイトでは、自動計算の見積もり用にCCB (cost calculator builder)を使用していましたが、それはversion 2での話で、2年程前から最新がversion 3となり、暫くversion 2を維持していましたが、2023.9でversion 3にversion upをしております。計算式が少し変更になるので、それらの書き換えは必要でありました。
ところが、このバージョンアップによりログインした管理者だけはCCB画面を動かすことができるるが、ログインしていないユーザーやFirefoxでは、CCB画面を動かすことができず、それ以前の空白で表示されるというエラーが発生。
原因を追究しようにも、管理者画面は正常に動作しているので、トラブルシューティングモードは使えず、プラグインのコンフリクトを見つけるのは色々試しながらという先の見えないモードに突入してました。
結論から言うと、3つの設定エラーが重なっており、デベロッパールールのエラーメッセージから、: ccb-lodash-jsというJSファイルが読みこれまれていないことが判明し、asset cleanupの設定から、このJSファイルはbundle.jsに関連しており、このbundle.jsファイルが、async javascriptというプラグインで遅延処理されていたのと、さらにautoptimizeというminify関連でも処理されていたので、これらをすべて除外して漸く動くようになりました。

CF7の送信エラー
CF7(Contact Form 7)をメール送信用に設定していましたが、いつも間にか送信エラーになるようになってしまい厄介なことに。ウェブ情報を探ると、オレンジ枠の警告は、Recaptcha関連という話で、CF7のrecaptchaを再設定しましたが、まだ解決せず。Google Recaptcha v3設定は、インテグレーションのところで完了となっていたので、pluginのコンフリクトか、サーバー設定かという感じで、トラブルシューティングモードでチェックしていきます。CF7と、それの郵便番号用plugin、safeguard系pluginだけを有効化すると、送信エラーは続いていましたが、テーマを子テーマではなく、オリジナルテーマにすると送信エラーは消えており、さらにテーマを一時的にも親テーマにしてもエラーは消えていることがわかり、原因は子テーマであることが判明しました。
こうなると手が加わっているのは、子テーマのfunction.phpですので、子テーマのfunction.phpをワードパットに書き出して、
//recaptcha limit//
add_action('wp_enqueue_scripts', function() {
$single_list = [
'お問い合わせ'
];
if(is_single($single_list)) return;
wp_deregister_script('google-recaptcha');
}, 100);
との関数が原因であることが判明しました。大分前なので、何でこれがあるのかは記憶にないところで、多分recaptchaの表示を抑えるためのような気がしますが、定かではありません。でもこの部分を削除して、問題解決しております(多分)。



この記事が気に入ったらサポートをしてみませんか?