WordPressの管理画面は表示されるが、サイトの一部に不具合がある場合の原因と対処法

WordPressの管理画面には問題なくアクセスできるにもかかわらず、実際のサイトでコンテンツの一部の文字しか表示されない場合、以下のような原因が考えられます。順番に確認しながら対処してください。

1. ブラウザのキャッシュやアドブロッカーの影響を確認

別のブラウザやシークレットモードでアクセス

まず、現在使用しているブラウザやデバイスの問題でないかを確認するため、シークレットモードや別のブラウザ、異なる端末(スマートフォン等)で同じURLにアクセスしてください。

→ 別のブラウザや端末では正常に表示される場合、キャッシュや拡張機能(アドブロッカー等)が原因の可能性があります。

アドブロッカーを無効化

広告を非表示にする拡張機能が影響して、一部のコンテンツがブロックされることがあります。アドブロッカーを一時的に無効化して確認してください。

2. プラグインやテーマの不具合・競合を疑う

2-1. プラグインの競合チェック

  1. すべてのプラグインを停止
    • WordPress管理画面から、すべてのプラグインを「停止」にして該当ページを再読み込み。
    • 正常に表示される場合、プラグインの競合が原因です。
  2. プラグインを1つずつ有効化
    • 各プラグインを1つずつ有効化しながら再読み込みし、どのプラグインが原因かを特定。

2-2. テーマの不具合・互換性チェック

  1. 標準テーマへ切り替え
    • 「外観 > テーマ」から「Twenty Twenty-Three」などの公式テーマに変更。
  2. テーマを変えても問題が発生するか確認
    • テーマを変えると正常に表示される場合、元のテーマのコードやfunctions.phpが原因の可能性があります。

3. URL設定やSSL・ドメイン変更後の影響を疑う

WordPressのアドレス設定を確認

「設定 > 一般」で「WordPressアドレス(URL)」と「サイトアドレス(URL)」が正しく設定されているか確認。

URLの置換

移転後、データベース内のURLが古いままだと、一部コンテンツが表示されないことがあります。

  • 「Better Search Replace」プラグインやWP-CLIの wp search-replace コマンドを使用してチェック。

Mixed Contentの確認

HTTPS化されているサイトでHTTPのリソースを読み込むとブロックされることがあります。

  • Site URLhttp:// のままになっていないか確認。
  • ブラウザのコンソールにMixed Contentの警告がないかチェック。

4. PHPメモリ制限やサーバー設定の問題を疑う

WordPressのメモリ制限を増やす

メモリ不足で途中で処理が停止する場合、wp-config.php に以下を追加してメモリを増やす。

define('WP_MEMORY_LIMIT', '256M');

サーバーの設定を確認

EC2などの環境では memory_limit が小さく設定されていないか、php.ini や Apache/Nginxの設定ファイルを確認。

5. エラーログを確認する

WordPressのデバッグログを有効化

wp-config.php に以下を追加し、エラーログを確認。

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

サーバーのエラーログを確認

  • /var/log/httpd/error_logphp-fpm/error.log をチェック。
  • Fatal error(メモリ不足・関数が存在しない等)が出ていれば、その原因を解消。

6. セキュリティプラグインやWAF、CDNの設定を確認

セキュリティプラグインの影響をチェック

  • WordfenceiThemes Security を一時的に無効化。
  • AWS WAF / CloudFront を使用している場合、レスポンスが遮断されていないかログを確認。

7. キャッシュ・最適化プラグインの設定確認

キャッシュ系プラグインの影響をチェック

  • W3 Total Cache, WP-Optimize, Autoptimize などを一時的に無効化。
  • HTMLの縮小化(minify)が影響していないか確認。

まとめ

  1. ブラウザのキャッシュや拡張機能を無効化
  2. プラグインやテーマをすべて停止して再確認
  3. WordPressアドレスやSSL設定が正しいかチェック
  4. PHPメモリ制限やエラーログを確認
  5. セキュリティプラグインやWAFがブロックしていないか調査

これらを順番に確認し、問題の原因を特定した後、適切な対応を行ってください。解決しない場合は、エラーログの内容を詳細に共有し、プラグインやテーマの公式フォーラム・サポートに問い合わせることをおすすめします。