MENU
  • 合同会社キューブリックcompany
  • サービス内容・料金service
    • WordPress・PHPのバージョンアップ
    • 改ざん・乗っ取り・真っ白の緊急復旧
    • 無料セキュリティ診断
    • SEO対策・検索順位の回復
    • WordPressの修理・修正
    • サーバー移転・ドメイン変更
  • コンテンツcontents
    • 技術ブログtech_blog
    • WEBマーケティング
    • プログラミング資格取得支援
    • ITエンジニア転職支援
  • お知らせannouncement
    • プレスリリースpress release
お問い合わせ
福岡のSEO対策・WordPress修理なら合同会社キューブリック
合同会社キューブリック
  • 合同会社キューブリックcompany
  • サービス内容・料金service
    • WordPress・PHPのバージョンアップ
    • 改ざん・乗っ取り・真っ白の緊急復旧
    • 無料セキュリティ診断
    • SEO対策・検索順位の回復
    • WordPressの修理・修正
    • サーバー移転・ドメイン変更
  • コンテンツcontents
    • 技術ブログtech_blog
    • WEBマーケティング
    • プログラミング資格取得支援
    • ITエンジニア転職支援
  • お知らせannouncement
    • プレスリリースpress release
お問い合わせ
SEO無料診断
  1. ホーム
  2. 技術ブログ
  3. WordPress
  4. WordPress サイト内検索 スパム対策のサンプルコード

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

2026 4/21
WordPress
2023年2月17日2026年4月21日

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にスパムサイトとして認定され、検索順位が落ちてしまう…といったことも考えられます。

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

未分類
サンプルコード スパム対策 プラグインダウンロード プラグイン不要 プラグイン販売
WordPress

この記事を書いた人

合同会社キューブリックのアバター 合同会社キューブリック 代表社員 / WEBエンジニア

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

合同会社キューブリック

本社:〒812-0011
福岡県福岡市博多区博多駅前一丁目23番2号
ParkFront博多駅前一丁目5階B

作業拠点:福岡県古賀市(代表在住)

対応エリア:福岡県全域
(古賀市・福津市・宗像市・新宮町・糟屋郡・福岡市内は訪問対応)

月~金:10:00~18:00
定休日:土曜・日曜・祝日
TEL:050-6867-4814

  • 合同会社キューブリック
  • サービス内容・料金
    • WordPress・PHPのバージョンアップ
    • 改ざん・乗っ取り・真っ白の緊急復旧
    • 無料セキュリティ診断
    • SEO対策・検索順位の回復
    • WordPressの修理・修正
    • サーバー移転・ドメイン変更
  • コンテンツ
    • 技術ブログ
    • WEBマーケティング
    • プログラミング資格取得支援
    • ITエンジニア転職支援
  • お知らせ
    • プレスリリース
  • 利用規約
  • プライバシーポリシー

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

目次