トラブルシューティング
よくある問題とその解決方法をまとめています。
よくある問題と解決策
XML解析が「失敗」になる
原因: URLが正しくない、サーバーがダウン、XMLの構文エラーなどが考えられます。
解決策:
- URLをブラウザで直接開いて確認
- XMLバリデータでXMLの構文をチェック
- サーバーのアクセスログでエラーを確認
URLの先頭に https:// が付いているか確認してください。省略した場合は自動補完されますが、httpとhttpsで結果が異なる場合があります。
到達性チェックがタイムアウトする
原因: サーバーの応答が遅い、大量のURLを処理中などが考えられます。
解決策:
- cURLの接続タイムアウトは10秒、全体タイムアウトは30秒に設定されています
- サーバーのレスポンスタイムを確認
- 必要に応じてPHPのmax_execution_timeを延長
SSL証明書の検証は無効化されています。これはローカル環境や自己署名証明書での動作を可能にするための仕様です。
スケジュールが実行されない
原因: WordPress Cronの仕組み上、サイトへのアクセスが必要です。
解決策:
- wp-cron.php がサーバーから実行可能か確認
- DISABLE_WP_CRON が true に設定されていないか確認
- 外部cronサービスの利用を検討(wp-cron.php を定期的にHTTPアクセス)
メール通知が届かない
原因: wp_mail()の設定、SMTPの問題などが考えられます。
解決策:
- 通知先メールアドレスが正しいか確認
- WP Mail SMTPなどのプラグインでSMTP設定を確認
- メールがスパムフォルダに分類されていないか確認
処理が途中で止まった
原因: PHPのタイムアウト、メモリ不足などが考えられます。
解決策:
- 「緊急停止」ボタンで一時データをクリーンアップ
- ページをリロードして再実行
- php.ini の max_execution_time と memory_limit を確認
動作要件
| 項目 | 要件 |
|---|---|
| WordPress | 5.8 以上 |
| PHP | 7.4 以上 |
| PHP拡張 | cURL, SimpleXML, libxml |
| ブラウザ | モダンブラウザ(Chrome, Firefox, Safari, Edge) |
技術仕様
- データ保存: wp_optionsテーブル(カスタムテーブルは使用しません)
- AJAX通信: WordPress標準のadmin-ajax.phpを使用
- User-Agent: Googlebot/2.1 を使用して到達性チェックを実行
- チャンクサイズ: 到達性チェックは50URL/チャンク