WordPress 標準の検索機能を無効化 直接アクセスの際にトップページにリダイレクトさせる

WordPress 6.5.2
広告WordPress・PHP を学べる本

Amazonのアソシエイトとして、WordPress functions.phpは適格販売により収入を得ています。

概要説明

ログに見慣れない検索内容が記録されていたときに対応したカスタマイズ。検索機能を使用したときにトップページを強制的に表示するようにすることで検索機能を無効化しています。

WordPress標準の検索機能を使おうとした場合にトップページを表示

functions.php
/*----------------------------------------------------
 WordPress標準の検索機能を使おうとした場合にトップページを表示
----------------------------------------------------*/
if ( !function_exists( 'search_restriction' ) ){
    function search_restriction( $query ) {
        if ( is_search() && !is_admin() ) {
            wp_redirect( get_site_url(), 301 );
            exit;
        }
    }
    add_filter( 'parse_query', 'search_restriction' );
    add_filter( 'get_search_form', function(){ return null; });
}

検索機能を使用していない場合は無効化がおすすめ

画面上にフォームがなくても直接アクセスで機能実行が可能です。

WordPress 標準の検索機能を無効化 直接アクセスの際にトップページにリダイレクトさせる

検索機能に対して攻撃されていると上記のようなログがある場合があります

ウィジェットの標準検索機能を非表示にする

WordPress 標準の検索機能を無効化 直接アクセスの際にトップページにリダイレクトさせる
functions.php
/*----------------------------------------------------
 WordPress標準の検索ウィジェットを非表示にする
----------------------------------------------------*/
if ( !function_exists( 'remove_search_widget' ) ){
    function remove_search_widget() {
        unregister_widget('WP_Widget_Search');
    }
    add_action( 'widgets_init', 'remove_search_widget' );
}

WordPress Developer Resources

SiteBeacon(サイトビーコン)

サイトが止まったら、すぐに気づける。

ホームページを 5 分ごとにチェックして、止まったとき・エラーが出たとき・SSL やドメインの期限が近いときに、メールでお知らせします。2 サイトまでは、ずっと無料で使えます。

SiteBeacon を見る サイトを直す相談をする

監視で気づいたあとの直す作業も、同じ担当がお受けします。