MENU
  • 会社概要
  • 事業内容
  • お問い合わせ
  • お知らせ
  • 技術ブログ
お問い合わせ
WEBサイト制作・保守運用からSEO改善・マーケティング支援まで、ビジネスのデジタル基盤を総合的にサポート。WordPressサイト開発、検索流入最大化、業務効率化提案など、成果につながるソリューションを中小企業・個人事業主様に提供します。
合同会社キューブリック | WEBサイト制作・SEO改善・デジタルマーケティングの総合支援
  • 合同会社キューブリックcompany
  • 事業内容service
  • 技術ブログtech_blog
  • お知らせinformation
お問い合わせ
  1. ホーム
  2. 技術ブログ一覧
  3. WordPress サイト内検索 スパム対策のサンプルコード

WordPress サイト内検索 スパム対策のサンプルコード

2026 2/07
お知らせ
2023年2月17日2026年2月7日

WordPress内で、「s」パラメータを付けた大量のページを不正にGoogleにインデックスさせるスパム行為が行われています。

もしスパム攻撃を受けてしまった場合、自動生成された検索結果のページがGoogle検索にインデックスされ、海外の成人向けサイトの宣伝に利用されることが多いため注意しなければなりません。

このページでは、Wordpressのサイト内検索を悪用される前に対策する方法をご紹介します。

目次

サイト内検索スパムの被害内容

サイト内検索のページが不正にGoogleにインデックスさせられる被害が続出しています。私が運営しているサイトでも同様の手口の被害にあいました。

最近WordPressに検索スパムがうざい…
海外のデーティングサイトとかのURLを含む検索アクセスが殺到😡

遮断しようにも、スパムURLもアクセス元IPもたくさんあるし、GooglebotがこのURLにアクセスしてくるのよね🙄
なにかうまい方法ないかな🙄🙄 pic.twitter.com/uhQ2KVzeXP

— おーとかぶ (@autokabu) June 2, 2021

検索スパムうぜぇ!! pic.twitter.com/ZvEVd7q2Yv

— ぼっちさん (@Apps_surf) February 1, 2019

このスパムに対応すべく私が考えた手立ては「サイト内検索結果が0件ならば404を表示する」といった対策です。

実際に機能を実装したページを見てみましょう。

スパム対策イメージ

試しにサイト内に存在しないキーワード「つぶやきシロー」で検索すると、「ページが見つかりませんでした」と表示されます。ステータスコードも存在しないページ「404 not found」になっていることが分かります。

404 not found

サイト内検索結果が0件だった場合において、404ページの表示機能はそれほど難しくなくコードもシンプルで済みますし、SEOへの影響もなく安心してご利用いただけます。

また、導入しておけばスパムを未然に防ぐことができますので、この記事でご紹介するプラグインやサンプルコードを活用し、事前に対応しておくことをおすすめします。

サイト内検索スパム攻撃の対策

スパム攻撃対策用のサンプルコードやプラグインをご紹介します。動作検証をおこなったテスト環境は以下の通りです。

項目バージョン
WordPress5.0.0
PHP5.6.0
MySQL5.6.0

対策用サンプルコード

functions.phpに以下のサンプルコードを挿入しご使用ください。

処理内容としては、「検索結果が0件の場合、404 not found(404エラー)を表示する」というシンプルなサンプルコードとなっています。

/**
 * search-spam-protect
 * @access   
 * @param    
 * @return   
 * @author   
 * @see      
 */

function search_spam_protect() {
    // 検索結果ページかどうかを判定
    if ( is_search() ) {
        global $wp_query;
        
        // found_posts が 0 の場合
        if ( isset($wp_query->found_posts) && $wp_query->found_posts === 0 ) {
            $wp_query->set_404();
            status_header(404);
            // 404テンプレートを強制的に読み込ませる場合はここに追加することもあります
        }
    }
}
add_action('template_redirect', 'search_spam_protect');

まとめ

検索結果の機能を悪用したスパムは、まだまだ認知度が低いです。被害規模を調査した結果、大手週刊誌のメディアなども被害にあい、何も対策がとられないままとなっておりました。

スパムをしていないサイトでも、被害にあってしまえばGoogleにスパムサイトとして認定され、検索順位が落ちてしまう…といったことも考えられます。

スパム被害にあってしまっても、すぐ対応できるように、定期的にからサーチコンソールを確認するよう心掛けることが大切です。

お知らせ
サンプルコード スパム対策 プラグインダウンロード プラグイン不要 プラグイン販売

この記事を書いた人

合同会社キューブリックのアバター 合同会社キューブリック

合同会社キューブリックは、福岡県古賀市に拠点を置き、WEBサイト制作やSEO改善、デジタルマーケティングを総合的に支援する企業です。中小企業・個人事業主を対象に、WordPressサイト開発、キーワード戦略の立案、コンバージョン率最適化、テクニカルSEO対策などを提供。「集客できない」「問い合わせが来ない」といった課題を抱える企業の利益最大化に向けて、テクノロジーと人の力で徹底的に伴走し、ビジネス成長を支援しています。

合同会社キューブリック

〒811-3124
福岡県古賀市薬王寺95

月~金:10:00~18:00
定休日:土曜・日曜・祝日

  • 合同会社キューブリック
  • 事業内容
  • 技術ブログ
  • お知らせ
  • 利用規約
  • プライバシーポリシー

© 合同会社キューブリック

目次