備忘録。そのときそのときに勉強しているもののメモ

immature

WordPress

Contact Form 7でメールが送信できない

投稿日:

WordPressのお問い合わせフォームとしてインストールしていたContact Form 7でメールが送れないと相談を受けたので調べたメモ。

Contact Form 7はこちら

症状


メールを送信しようと送信ボタンをクリックしたところ、くるくると送信中の矢印が延々と回り続けて送信が完了しない、という状況。

また、送信ボタンを押す前はchromeのデベロッパーツールには何のエラーも表示されないのに、
クリックをすると下記のようなエラーが表示されました。

Contact Form 7のバージョンが5.3の場合
POST https://example.com/wp-json/contact-form-7/v1/contact-forms/125/feedback 500 (Internal Server Error)

Contact Form 7のバージョンが5.2.2の場合(バージョンをダウングレードしてチェックしてみました)
Failed to load resource: the server responded with a status of 500 (Internal Server Error)

補足:調べていると403エラーもある

メールが送信できない場合のエラーは他にもいろいろあって、403エラーの時もあるみたい。
もし403の場合は「Rest API」の設定が無効になっているかもしれないので、一度そちらをチェックしたほうがよさそう。
参考:【エックスサーバー】ContactForm7でメール送信ができない場合の対処法

今回は500エラーなので別の解決方法を探していく

Contact form 7: 500 (Internal Server Error)

こちらに開発者さんのアンサーがあったので、日本語ページの方をリンクしておく。
フォームの送信後、回転する矢印のアイコンは現れるのですが、それっきりで何も起きません。

どうして全プラグインを無効化してデフォルトテーマに切り替えるよう勧められるのか

プラグインやテーマが干渉してエラーを起こしているのではないかということです。

プラグインとテーマをチェックする

ということで、プラグインを無効化してはフォームをチェックする、という流れを一つずつ行いました。
プラグインは問題なかったので、今度は使用しているテーマを一度別のテーマしてみたところフォームのエラーが改善された

今回の原因はテーマだった

テーマがいけないということだったので、あとはテーマの中で修正したところを順にチェックし、functions.phpに原因のコードがあるのを発見したので削除したところ解決しました。

他にもお問い合わせフォームを設定する際の「送信先」や「送信元」の記述が良くないせいで送れなかった、という場合の記事もありましたので、ひとつずつ確認していくのが良さそうです。

0

-WordPress
-

Copyright© immature , 2020 All Rights Reserved Powered by STINGER.