【WordPress】全角スペースを含んだ検索のバグ修正

これも色々調べていて初めて知ったのでメモも兼ねて…

WordPressの検索で全角スペースを入れて検索すると
検索0件になるバグがあります。(全角は全て文字と認識しているため、全角スペース前後を含む一語と誤認してしまうようです。)

これを防ぐため、下記のコードをテンプレートファイル内にある
functions.phpの一番最後に追記します。

これで全角スペースを半角スペースに置換して検索してくれます。

//全角スペースを含んだ検索のバグ修正
function empty_search( $query ) {
    if ( $query->is_main_query() && $query->is_search && ! $query->is_admin ) {
    $s = $query->get( 's' );
    $s = str_replace(' ',' ', $s );
    $query->set( 's', $s );
    }
}
add_action( 'pre_get_posts', 'empty_search' );

参考:https://sologaku.com/wordpress/site-search-support-emspace/
https://yululy.com/ワードプレスの全角空白で検索結果がおかしい件/

関連記事

コメントを残す

*