WPFormsでよくあるエラーとその原因、解決策を徹底解説
WordPressサイトにお問い合わせフォームを設置する際、WPFormsは直感的な操作性で人気の高いプラグインです。しかし、便利なWPFormsも、設定ミスや環境によっては予期しないエラーが発生することがあります。「フォームが表示されない」「送信できない」「警告メッセージが出る」など、遭遇するとサイトの信頼性に関わる問題に発展する可能性もあります。
この記事では、WPFormsユーザーが比較的よく遭遇するエラーとその原因、そして初心者の方でも落ち着いて対処できる具体的な解決策をまとめて解説します。WPFormsを安全かつ快適に使い続けるために、ぜひこの記事でエラー対処法をマスターしてください。
1. フォーム自体が表示されない、または一部が欠けている
概要:
投稿や固定ページにフォームを埋め込んだはずなのに、何も表示されない、あるいはフォームの一部(特定のフィールドなど)だけが表示されないエラーです。
原因
- フォームを埋め込む際に使用するショートコードが間違っている(例: IDが異なる、全角文字になっているなど)。
- フォームを埋め込んだページテンプレートに問題がある。
- 他のプラグインやテーマがWPFormsの出力するHTMLやCSSに干渉している。
対処法
- ショートコードの確認: WPFormsのフォーム一覧画面で、埋め込みたいフォームのショートコード(例:
[wpforms id="○○" title="false"])を正確にコピーし、再度投稿/固定ページに貼り付けてください。手入力ではなくコピー&ペーストが確実です。 - 別のページで試す: 新しい固定ページを作成し、そこに同じフォームのショートコードを貼り付けて表示されるか確認してみてください。もし新しいページでは表示されるなら、元のページのコンテンツやテンプレートに問題がある可能性が高いです。
- プラグイン・テーマの競合テスト: WPForms以外のプラグインを全て停止し、テーマをWordPress標準のものに切り替えて、フォームが表示されるか確認します。これにより、原因となっているプラグインやテーマを特定できます。(競合テストの詳しい手順は 「エラー解決のための共通ステップ」 を参照してください)
2. フォームを送信できない(送信ボタン無反応、エラーメッセージなど)
概要:
フォームに情報を入力して送信ボタンをクリックしても何も起こらない、または送信ボタンがクリックできない、あるいはクリック後にエラーメッセージが表示されて送信が完了しないエラーです。
原因
- **JavaScriptエラー:** WPFormsの送信処理にはJavaScriptが必要です。ページのJavaScriptにエラーが発生していると、送信ボタンが機能しなくなります。( 後述の「JavaScriptの問題を検出しました」警告 と関連)
- **CAPTCHA/reCAPTCHAの設定ミス:** スパム対策でCAPTCHAやreCAPTCHAを設定している場合、キーの入力ミスや設定不備があると送信できなくなることがあります。
- \\他のスパム対策プラグインとの干渉:\\ Akismetなどのスパム対策プラグインや、他のセキュリティプラグインがフォーム送信をスパムと誤検知し、ブロックしている。
- サーバー側のブロック:** レンタルサーバーのWAFなどのセキュリティ機能が、フォームから送信されるデータを不正なリクエストとしてブロックしている(「破損した投稿データを送信しようとしています」エラーと関連)。
- WPFormsのバージョンが古い:** 使用しているWPFormsが最新バージョンでないため、既知のバグや互換性の問題が発生している。
対処法
- **JavaScript問題の確認と対処:** ブラウザの開発者ツール(F12キーなどで開けることが多い)のConsoleタブを見てJavaScriptエラーが出ていないか確認します。「JavaScriptの問題を検出しました」警告が表示されている場合は、 後述の対処法 を参照してください。
- **CAPTCHA設定の確認:** WPFormsの設定でCAPTCHAを有効にしている場合、設定画面でサイトキーとシークレットキーが正しく入力されているか、種類(reCAPTCHA v2/v3など)が適切かを確認してください。
- プラグインの競合テスト: 特に他のセキュリティプラグインやスパム対策プラグインとの競合が疑われます。WPForms以外のプラグインを一つずつ停止して原因を特定します。( 「エラー解決のための共通ステップ」 を参照)
- WPFormsを最新版に更新:** 使用しているWPFormsプラグインが最新バージョンでない場合は、必ずアップデートしてください。
- サーバー側のWAF確認:** レンタルサーバーのWAF設定を確認し、フォーム送信がブロックされていないか確認します。必要であればWAFを一時的に無効化して試すか、サーバー会社に問い合わせてください。( 後述の「破損した投稿データを送信しようとしています」エラー の対処法も参照)
3. 「WPFormsは、このページでJavaScriptの問題を検出しました」警告
概要:
フォームが表示されているページの上部に、「注意してください! WPForms は、このページで JavaScript の問題を検出しました。…」という黄色い警告メッセージが管理者向けに表示されます。フォームの動的な機能が正しく動作しない可能性があります。
原因
- 他のプラグインやテーマとWPFormsのJavaScriptが競合している。
- キャッシュ系プラグインや最適化プラグインの設定がWPFormsのJavaScript読み込みを妨げている。
- ページのJavaScriptコード全体にエラーが発生している。
対処法
この警告メッセージが表示された場合、原因の多くはJavaScriptの競合や読み込み設定の問題です。以下の対処法を試してください。
- \\キャッシュのクリア:\\ ブラウザ、WordPressキャッシュプラグイン、サーバーキャッシュ、CDNキャッシュなど、全てのキャッシュをクリアします。
- \\プラグイン・テーマの競合テスト:\\ WPForms以外の全てのプラグインを停止し、テーマをWordPress標準のものに切り替えて、警告が消えるか確認します。( 「エラー解決のための共通ステップ」 を参照)
- \\キャッシュ・最適化プラグイン設定の見直し:\\ キャッシュ系や最適化プラグインが原因と特定された場合、WPForms関連のJavaScriptファイル(WPFormsやjQueryなど)を結合・遅延読み込みの対象から除外する設定がないか確認し、調整します。
4. 「破損した投稿データを送信しようとしています。」エラー(フォーム編集時)
概要:
WPFormsのフォーム編集画面で、フォームの設定変更を保存しようとした際に表示されるエラーメッセージです。フォームの保存や編集ができなくなります。
主な原因
このエラーは、WPFormsが送信するフォーム設定データが、WordPressやサーバー側のセキュリティ機能によって不正なデータとしてブロックされることが最も一般的な原因です。特に、セキュリティプラグインやレンタルサーバーのWAF(Webアプリケーションファイアウォール)による干渉が多く見られます。
対処法
このエラーが発生した場合、以下の点を試してみてください。
- \\セキュリティプラグインの一時停止:\\ WordPress管理画面で、セキュリティ関連のプラグイン(Wordfence, iThemes Securityなど)を全て一時的に停止し、WPFormsの保存・編集ができるか確認します。
- **サーバーWAFの一時無効化:** レンタルサーバーの管理画面からWAF機能を一時的に無効化し、WPFormsの保存・編集ができるか確認します。
- \\他のプラグイン・テーマとの競合テスト:\\ 上記で改善しない場合、他のプラグインやテーマとの競合も考えられます。 「エラー解決のための共通ステップ」 を参照して、競合テストを行います。
- \\フォーム内容の単純化:\\ 非常に複雑な設定や特殊なフィールドを使用している場合、一時的にそれらを削除または単純化して保存できるか試します。
※ セキュリティ機能の一時停止はリスクを伴います。問題解決後は速やかに元に戻し、必要であれば設定調整やサーバー会社への問い合わせを行ってください。
5. 通知メールが届かない
概要:
フォームが正常に送信されたはずなのに、管理者やサイト訪問者への通知メールが届かないエラーです。
原因
- WPFormsの通知設定が正しくない(宛先メールアドレスの間違い、通知が無効になっているなど)。
- WordPressからのメール送信設定に問題がある(多くのレンタルサーバーではPHPのmail()関数が制限されている)。
- 送信したメールが迷惑メールフォルダに入ってしまっている。
- レンタルサーバー側のメール送信制限や受信側のサーバー設定でブロックされている。
- 他のSMTPプラグインとの干渉。
対処法
- WPForms通知設定の確認: WPFormsのフォーム編集画面で「設定」→「通知」を開き、通知が「有効」になっているか、宛先メールアドレス(「送信先に送る」)が正しいか確認します。また、「送信元メールアドレス」にはサイトと同じドメインのメールアドレスを設定することが推奨されます(例:
wordpress@あなたのサイトのドメイン.com)。 - テストメールの送信: WordPress管理画面の「ツール」→「サイトヘルス」を開き、「情報」タブの中にある「メールのテスト」機能でテストメールを送信し、WordPress自体からメールが送信できる環境にあるか確認します。
- SMTPプラグインの導入: WordPressからのメール送信は不安定になりがちです。GmailやSendGridなどの外部サービスを経由してメールを確実に送信するために、WP Mail SMTPなどのSMTPプラグインの導入を強く推奨します。SMTPプラグインを設定後、再度テストメールを送信して確認してください。
- 迷惑メールフォルダの確認: 受信側のメールソフトの迷惑メールフォルダを確認してください。
- レンタルサーバーに問い合わせ: 上記を試しても解決しない場合は、利用しているレンタルサーバー会社に、WordPressからのメール送信や特定の宛先へのメールがブロックされていないか確認してもらってください。
6. ファイルアップロードフィールドが機能しない
概要:
ファイルアップロードフィールドを含むフォームで、ファイルを添付して送信しようとするとエラーになる、あるいはアップロードボタンをクリックしても反応がないエラーです。
原因
- PHPの設定で許可されているファイルサイズ(
upload_max_filesize,post_max_size)を超過している。 - WPFormsの設定やPHPの設定で許可されていないファイルタイプをアップロードしようとしている。
- PHPの一時ファイル保存用フォルダが設定されていない、または書き込み権限がない(「Missing a temporary folder」エラー)。
- サーバーのディスク容量不足。
- ファイルアップロードに関連するプラグインやセキュリティプラグインとの競合。
対処法
- PHP設定値の確認と変更: PHPが受け付けられるファイルサイズの最大値(
upload_max_filesizeとpost_max_size)を確認し、必要であればphp.iniや.htaccessで値を大きくします。これらの設定値はWordPress管理画面の「ツール」→「サイトヘルス」→「情報」タブの「サーバー」セクションなどで確認できます。 - WPFormsファイルタイプの確認: WPFormsのファイルアップロードフィールド設定で、アップロードを許可するファイルタイプが正しく設定されているか確認します。また、許可したいファイルタイプがWordPressやPHPの標準設定で許可されているかどうかも関連します。
- \\テンポラリフォルダの問題解消:\\ 「Missing a temporary folder」エラーが表示されている場合は、 別途解説している対処法 を参考に解決してください。
- \\ディスク容量の確認:\\ サーバーのディスク容量が不足していないか確認します。
- プラグインの競合テスト: 他のファイルアップロード関連プラグインやセキュリティプラグインとの競合が疑われる場合は、競合テストを行います。( 「エラー解決のための共通ステップ」 を参照)
7. フォーム管理画面(一覧や編集画面)が遅い、またはエラーになる
概要:
WordPress管理画面の「WPForms」メニューからフォーム一覧を開いたり、既存フォームの編集画面を開いたりする際に、読み込みに非常に時間がかかったり、エラーメッセージが表示されたり、画面が真っ白になったりするエラーです。
原因
- \\エントリー(送信履歴)の蓄積:\\ 特にWPForms Lite版を使用している場合、フォームのエントリー数が増えすぎると管理画面の表示が非常に重くなることがあります。
- 他のプラグインやテーマとの競合:** WPFormsの管理画面に影響を与えるプラグイン(管理画面をカスタマイズするもの、リソースを多く消費するものなど)やテーマとの競合。
- サーバーリソース不足:** サーバーのCPUやメモリが不足している。
- データベースの問題:** データベースが過負荷になっていたり、テーブルが最適化されていなかったりする。
対処法
- \\エントリーの削除またはエクスポート:\\ 不要なフォームエントリーを削除するか、CSVなどでエクスポートしてから削除します。これによりデータベースへの負荷が軽減され、管理画面の表示が速くなることがあります。Pro版にアップグレードすれば、データベースへの負荷を抑えつつ大量のエントリーを管理できる機能が提供されている場合もあります。
- プラグイン・テーマの競合テスト:** 他のプラグインやテーマとの競合が原因の可能性が高いです。WPForms以外のプラグインを一つずつ停止したり、テーマを標準のものに切り替えたりして原因を特定します。( 「エラー解決のための共通ステップ」 を参照)
- サーバーリソースの確認:** レンタルサーバーの管理画面でCPUやメモリの使用状況を確認します。常に高い場合は、サーバープランの見直しが必要かもしれません。
- データベースの最適化:** phpMyAdminなどのツールでデータベースの最適化(OPTIMIZE TABLE)を試みるか、データベース最適化機能を持つプラグイン(利用は慎重に)を使用します。
エラー解決のための共通ステップ
WPFormsに限らず、WordPressでエラーが発生した場合に共通して有効な基本的なトラブルシューティングの手順をまとめます。原因特定に迷ったら、まずはこれらのステップを試してみてください。
- \\キャッシュのクリア:\\ ブラウザのキャッシュ、WordPressキャッシュプラグイン、サーバーキャッシュ、CDNキャッシュなど、考えられる全てのキャッシュをクリアします。
- \\プラグインの競合テスト:\\ WPForms以外の全てのプラグインを停止し、問題が解消されるか確認します。解消した場合、一つずつ有効化し直して原因プラグインを特定します。
- \\テーマの切り替えテスト:\\ テーマをWordPress標準のもの(例: Twenty Twenty-Four)に一時的に切り替え、問題が解消されるか確認します。
- **WPFormsおよびWordPress本体の更新:** 使用しているWPFormsプラグイン、テーマ、そしてWordPress本体が全て最新バージョンであることを確認します。古いバージョンは互換性問題の原因となります。
- \\エラーメッセージの確認:\\ 可能であれば、画面に表示されるエラーメッセージ(警告も含む)を正確にコピーし、原因を特定する手がかりとします。PHPエラーログなども確認できるとより詳細な情報が得られます。
- **WPForms公式ドキュメントとサポート:** WPFormsの公式ウェブサイトには、よくある質問やトラブルシューティングガイドが豊富に用意されています。ほとんどのエラーについて情報が見つかるはずです。解決しない場合は、サポートに問い合わせることも検討しましょう。
まとめ
WPFormsは非常に便利なプラグインですが、サイトの環境によっては様々なエラーが発生する可能性があります。フォームが表示されない、送信できない、特定の警告が表示されるといった問題に遭遇した場合、原因はショートコードの誤り、プラグインやテーマの競合、サーバー設定、セキュリティ機能など多岐にわたります。
エラーの種類に応じて、ショートコードや設定の確認、プラグイン・テーマの競合テスト、キャッシュのクリア、サーバー設定の確認といった対処法を順に試していくことが重要です。特に他のプラグインやテーマとの競合、そしてセキュリティ関連の干渉がWPFormsエラーの一般的な原因となることが多いです。
この記事で解説したエラーとその対処法、そして共通のトラブルシューティングステップを参考に、WPFormsでエラーが発生した際に落ち着いて対応できるよう備えましょう。適切に対処すれば、ほとんどのWPFormsエラーは解決可能です。あなたのWordPressサイトでWPFormsが正しく機能し、問い合わせをスムーズに受け付けられるようになることを願っています。
