2026年10月7日
2026年10月7日
WordPressのPOST送信が機能しない問題
はじめに
WordPressのサイト管理において、ユーザーからのフィードバックや問い合わせを迅速かつ効率的に受けるためには、機能するPOST送信フォームは重要なツールです。しかし、時折不具合が発生し、ユーザーからの情報入力や記事投稿などのPOSTリクエストが正常に処理されないことがあります。この問題の解決には、サーバーセットアップからプラグイン設定まで多岐にわたる要素を検討する必要があります。
症状・背景
WordPressでのPOST送信が機能しない主な場面は以下の通りです:
- <場面1>: フォームからの入力が保存されない
- <場面2>: 投稿やコメントの送信ボタンをクリックしても反応がない
- <場面3>: メールフォームからメッセージを送ろうとした場合にエラーとなる
- <場面4>: WordPressの管理画面で記事を投稿しようとしても正常に保存されない
手順・設定方法
ステップ1: PHP設定ファイルの確認と調整
# wp-config.phpでデバッグモードを有効化します。
define('WP_DEBUG', true);
# フォームデータの最大サイズを増やしてみます。必要に応じて変更してください。
@ini_set( 'post_max_size' , '128M' );
@ini_set( 'upload_max_filesize', '128M' );
# PHP設定ファイル(php.ini)を開きます。
nano /etc/php/7.4/fpm/php.ini
# 以下に示す項目を確認し、必要に応じて調整します。
post_max_size = 64M
upload_max_filesize = 64M
memory_limit = 256M
ステップ2: .htaccessファイルの設定と修正
# .htaccessファイルを開きます。
nano ./.htaccess
# 下記の行を追加または更新します。
php_value post_max_size 100M
php_value upload_max_filesize 64M
php_value memory_limit 256M
ステップ3: フォーム関連プラグインの確認と再設定
# WordPressの管理画面にログインします。
wp --url=https://example.com login
# プラグイン「Contact Form 7」の設定ページを開きます。
/wp-admin/admin.php?page=wpcf7
# 「送信設定」タブでメール受信者のアドレスを確認し、正しい形式であることを確認します。
# 「カスタムCSSとJavaScript」タブから、必要に応じてフォーム用のCSSやJSを追加または修正します。
ステップ4: ファイル権限の調整
# wp-contentディレクトリの所有者とグループを変更します。
chown -R www-data:www-data /var/www/html/wp-content/
# .htaccessファイルの読み取り/書き込み権限を設定します。
chmod 644 ./.htaccess
注意事項
- <実践的な注意点1>: デバッグ情報を含めたログはセキュリティ上のリスクがあるため、公開環境では使用しないでください。
- <実践的な注意点2>: フォームのPOST送信が機能しない場合、JavaScriptが正常に動作していない可能性があります。この場合、ブラウザの開発者ツールを使って問題を特定します。
- <セキュリティ上の注意>: POSTデータのサイズやファイルアップロードの上限は適切な値で設定し、過度に上げすぎるとサーバーが脆弱性を持つ可能性があります。
- <パフォーマンス/運用上の注意>: サーバーキャッシュをクリアしたり、プラグインを一時的に無効化するなどして、問題の特定と解決を行ってください。
まとめ
1. <キー1>: フォーム送信が機能しない場合、まずサーバー環境のPHP設定を確認します。
2. <キー2>: .htaccessファイルの修正も必要になる可能性があります。正しい権限とサイズ制限が設定されているか確認してください。
3. <キー3>: 使用しているフォーム関連プラグインの設定を見直し、問題がないことを確認します。
4. <キー4>: ファイルやディレクトリの所有者と権限を適切に管理することでセキュリティとパフォーマンスを向上させます。
5. <キー5>: JavaScriptの動作が原因でPOST送信が失敗している場合、ブラウザ開発ツールを使って問題を調査します。
関連記事: