如何讓wordpress後台搜索只匹配搜索文章標題
- 2019 年 10 月 11 日
- 筆記
今天編輯小美眉問網站wordpress後台能不能實現只搜索標題,這個問題怎麼可能難到ytkah呢?打開Stack Overflow一頓狂搜,總數有解決方案了,哈哈哈!一起來看看怎麼操作吧。
打開主題目錄的function.php文件,在合適的位置添加如下代碼
add_filter( 'posts_search', 'ytkah_search_by_title', 10, 2 ); function ytkah_search_by_title( $search, $wp_query ) { if ( ! empty( $search ) && ! empty( $wp_query->query_vars['search_terms'] ) ) { global $wpdb; $q = $wp_query->query_vars; $n = ! empty( $q['exact'] ) ? '' : '%'; $search = array(); foreach ( ( array ) $q['search_terms'] as $term ) $search[] = $wpdb->prepare( "$wpdb->posts.post_title LIKE %s", $n . $wpdb->esc_like( $term ) . $n ); if ( ! is_user_logged_in() ) $search[] = "$wpdb->posts.post_password = ''"; $search = ' AND ' . implode( ' AND ', $search ); } return $search; }
保存,上傳,刷新緩存,後台搜索一下,看看搜索結果頁關鍵詞是不是只包含標題中

這個方法同樣適用於前端的站內搜索,感興趣的小夥伴可以試試