WordPress のサイト運営をしていると、
「なぜか特定のページだけサイト内検索にヒットしない」
という不思議な現象に遭遇することがあります。

検索ワードも本文に入っているし、記事は公開済み。
カテゴリー設定も問題なし。
それなのに 検索ボックスでは出てこない……。

今回は、実際に私のサイトで発生した“不具合”と、
そこから原因を突き止め、解決するまでの流れをまとめました。
同じ現象で困っている方の参考になれば幸いです。

■ 症状:特定の投稿だけ、どうしても検索結果に出てこない

WordPress の標準検索フォームで「imap」と入力すると、
本来であれば 4〜5件ヒットするはずの記事が 2件しか表示されない 状態に。

問題の投稿を開いて確認してみると、

  • 公開状態:公開

  • スラッグ:正常

  • 本文に検索ワードが含まれている

  • カテゴリー設定も問題なし

なのに検索では一切ヒットしない。

しかし、「管理者ログイン状態」で検索すると きちんとヒットする。(これがわからない!)

「フロント側の検索だけが、その投稿を除外している状態」

ここまで来ると、テーマや投稿の設定というより
「検索クエリを書き換えている何か」が怪しくなってきます。

■ 解決のために行った手順

① テーマを変えてみる → 変化なし

逆に Twenty Twenty-Five などの公式テーマに切り替えても
検索結果の件数は変わりませんでした。

つまり、テーマが原因ではない ことが確定。


② プラグインを全て無効化して、1つずつ有効化 → 犯人が判明

WordPress トラブルの鉄板手法ですが、
今回はこの方法が 決定打 になりました。


▼ 手順

  1. 全プラグインを無効化

  2. サイト内検索で「imap」を検索
    → この時点で 問題の投稿が検索結果に表示される

  3. プラグインを1つずつ有効化しながら検索を再テスト

  4. あるプラグインをONにした瞬間、再びヒットしなくなる

そして、最終的に原因となっていたのは……

■ 原因:アクセス保護系プラグイン「Passster」

私の環境では、
Passster(パスワード保護・制限表示プラグイン)
が検索から投稿を除外していました。

Passster は「保護対象の記事は検索に出さない」という仕様があり、

  • 過去に保護ショートコードを使った

  • 一度保護設定を付けて後で解除した

  • メタデータだけ残っていた

などの理由で、投稿が“保護対象扱い”になると
WordPress検索から自動的に除外されます。

まさに今回の現象がこれでした。

■ Passster を無効化した結果 → 即解決

プラグインを無効化した瞬間、
今まで検索に出なかった投稿が 正常に表示されるように なりました。

原因がテーマでも投稿設定でもなく、
まさかの「保護系プラグインの自動除外」だったとは…。

アクセス制限プラグインは便利ですが、
裏側で WordPress の検索挙動を変えてしまうことがあるので要注意です。

■ 同じ症状で困っている方へ(まとめ)

もしあなたのサイトでも:

  • 特定の投稿だけ検索に出ない

  • 本文にもタイトルにもキーワードがあるのに出ない

  • 管理画面ではヒットするのに、フロント検索だけ出ない

という症状があれば、次の手順を試してみてください。

コメントを残す