Theo tìm kiếm mặc định của WordPress, nó sẽ so sánh truy vấn tìm kiếm với tiêu đề post_title, đoạn trích post_excerpt và nội dung post_content.
Trong một vài trường hợp, bạn chỉ cần kết quả tìm kiếm theo tiêu đề của bài viết thì phải viết thêm custom code để lọc truy vấn.
- Đây là đoạn code có chức năng lọc truy vấn chỉ theo tiêu đề. Bạn có thể thêm vào tệp
function.phphoặc plugin Code Snippets.
function ARTRU_Search_By_Title($columns, $search, $query) {
return ['post_title'];
}
add_filter('post_search_columns', 'ARTRU_Search_By_Title', 10, 3);- Nếu bạn cần bộ lọc chi tiết hơn nữa, ví dụ như tiếng Việt có dấu thì dùng code bên dưới.
function ARTRU_Search_By_Title_With_Special_Characters($search, $wp_query) {
global $wpdb;
$search_term = $wp_query->query_vars['s'];
if ($search_term) {
$search = $wpdb->prepare(
" AND LOWER({$wpdb->posts}.post_title) LIKE BINARY LOWER(%s) ",
'%' . $wpdb->esc_like($search_term) . '%'
);
}
return $search;
}
add_filter('posts_search', 'ARTRU_Search_By_Title_With_Special_Characters', 10, 2);







Bình luận