LoginSignup
1
0

More than 3 years have passed since last update.

Wordpressのプラグイン実行時に不具合が起きた際見直すべきポイント

Last updated at Posted at 2021-01-28

解決したい課題

wordpressのプラグイン:Contact form 7で送信完了したメールが受信できない。

課題の詳細

以前までは受信できていたメールが、受信できなくなった。
フォーム上は送信完了したという表示がされる。

ググって一番見かけたサーバ違いによる不具合でsmtpでの解決が多かったけど、サーバは同じのため、該当しない。
https://blitzgate.co.jp/blog/250/

結論

function.phpを見直す!
jsの動きを制御するプラグインが入ってしまっていた…。

詳細

実装初期、contact form 7のjsを使用したいページ(以下の例だと、/lp)以外で読み込まないように、
function.phpに以下を挿入していた。
この当時は通常に受信できていた。

しかし、パスをlpから変更したため、jsが読み込まれなくなっていた。

 function my_contact_enqueue_scripts(){
 wp_deregister_script('contact-form-7');
 wp_deregister_style('contact-form-7');
 if (is_page('lp')) {
    if (function_exists( 'wpcf7_enqueue_scripts')) {
         wpcf7_enqueue_scripts();
    }
 }
 }
 add_action( 'wp_enqueue_scripts', 'my_contact_enqueue_scripts');

考えてみればそのとおりだし単純なことに気づくのに、時間がかかってしまった。
contact formに限らず、
なにかの変更のためにfunction.phpに加えた修正がなにかに影響していること
は多々あるだろうから、なにかが上手く行かないときは、そのズバリ事象+function.phpを見直してみると良い。

あとそもそも論としては、動いていた時期と動かなくなった時期があるのであれば、その間に加えた変更を一つ一つ検証して切り分けるのが正道。
だが、開発が重なっているとそれを細かく実施できるかどうか、、、という工数も懸念される。

大枠で切り分けつつ、定番のミスを抑えておくことが肝心。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0