Bạn có một số nội dung không muốn người dùng tìm thấy bằng tính năng tìm kiếm mặc định của WordPress nhưng những thông tin này vẫn hiển thị khi người dùng trực tiếp bấm vào? Đồng hành với cunghocwp với hướng dẫn bên dưới để biết cách ngăn chặn một nội dung hoặc trang xuất hiện trong công cụ tìm kiếm nhé.
Tại sao loại trừ các nội dung khỏi Tìm kiếm WordPress?
Tính năng tìm kiếm mặc định của WordPress sẽ hiển thị kết quả từ tất cả các bài đăng, trang và nhiều thông tin khác có trong website của bạn. Điều này là hoàn toàn bình thường và không gây ảnh hưởng gì đến việc SEO của WordPress .
Khi nào bạn cần loại trừ các nội dung khỏi Tìm kiếm WordPress?
Tuy nhiên, nếu bạn đang chạy một cửa hàng trực tuyến, thì có một số trang mà bạn có thể không muốn xuất hiện trong kết quả tìm kiếm. Ví dụ: trang thanh toán, trang tài khoản hoặc trang cảm ơn sau khi mua hàng, …
Tương tự, nếu bạn đang chạy một website sử dụng plugin hệ thống quản lý học tập LMS hay bán các khóa học trực tuyến thì sẽ có các trang và các bài đăng tùy chỉnh chắc chắn bạn không muốn người dùng bình thường có thể mò ra.
Một số webmaster có thể muốn ẩn danh mục hoặc phân loại một vài thứ, trong khi những người khác có thể muốn ẩn bài đăng từ các tác giả cụ thể.
Lợi ích của việc loại trừ các nội dung khỏi Tìm kiếm WordPress
Tối ưu hóa tìm kiếm trang web của bạn bằng cách loại trừ các mục không cần thiết sẽ giúp bạn:
- Tăng trải nghiệm người dùng tốt hơn
- Cải thiện hiệu năng của website khi hệ thống không phải truy vấn toàn bộ data để tìm ra nội dung không cần thiết.
1. Loại trừ các bài viết, trang và loại bài đăng cụ thể khỏi tìm kiếm
Đầu tiên bạn cần cài đặt và kích hoạt plugin Search Exclude. Nếu chưa biết cách cài đặt, bạn có thể xem qua cách cài đặt plugin WordPress.
Khi kích hoạt, tại giao diện bài đăng bạn có thể tìm thấy tính năng bỏ qua tìm kiếm.
Chỉ cần lựa chọn tính năng này, các bài viết, blog, trang mà bạn tạo sẽ không được hiển thị trên công cụ tìm kiếm mặc định trong WordPress.
Để xem tất cả các mục mà bạn đã loại trừ khỏi công cụ tìm kiếm, hãy đi tới Settings » Search Exclude. Tại đây bạn sẽ thấy một danh sách các mục bạn đã loại trừ khỏi kết quả tìm kiếm WordPress.
Nếu muốn hệ thống tìm kiếm hiển thị lại các bài đăng này, bạn chỉ cần bỏ dấu tick bên cạnh sau đó Lưu thay đổi.
2. Loại trừ danh mục cụ thể, tag, phân loại tùy chỉnh khỏi tìm kiếm WordPress
Cách này yêu cầu bạn cần can thiệp vào các file hệ thống của website, nếu chưa biết cách chỉnh sửa file hệ thống. Bạn có thể xem qua cách sao chép và dán đoạn mã trong WordPress.
Trước tiên, bạn cần tìm ID danh mục mà bạn muốn loại trừ.
Tiếp theo, bạn copy đoạn mã dưới đây dán vào file functions.php hoặc một plugin code riêng cho website của mình.
function wpb_search_filter( $query ) {
if ( $query->is_search && !is_admin() )
$query->set( 'cat','-7' );
return $query;
}
add_filter( 'pre_get_posts', 'wpb_search_filter' );
Hãy nhớ rằng cần thay thế số 7 trong đoạn code trên bằng ID của danh mục bạn muốn loại trừ.
Bây giờ, giả sử bạn muốn loại trừ nhiều hơn một danh mục. Hãy sử dụng đoạn mã dưới đây
function wpb_search_filter( $query ) {
if ( $query->is_search && !is_admin() )
$query->set( 'cat','-7, -10, -21' );
return $query;
}
add_filter( 'pre_get_posts', 'wpb_search_filter' );
Chỉ cần thêm ID danh mục đằng sau mỗi dấu , là OK.
Loại trừ các thẻ (tag) cụ thể khỏi Tìm kiếm WordPress
Nếu bạn muốn loại trừ các bài đăng có các thẻ (tag) cụ thể, thì bạn có thể sử dụng mã sau đây.
if ( $query->is_search && !is_admin() )
$query->set( 'tag','-19' );
return $query;
}
add_filter( 'pre_get_posts', 'wpb_search_filter' );
Đừng quên thay thế 19 bằng ID của tag bạn muốn loại trừ.
Tương tự, bạn cũng có thể sửa đổi mã để loại trừ nhiều thẻ.
if ( $query->is_search && !is_admin() )
$query->set( 'tag','-19, -27, -56' );
return $query;
}
add_filter( 'pre_get_posts', 'wpb_search_filter' );
Loại trừ các điều kiện cụ thể trong tìm kiếm WordPress
Nếu bạn muốn loại trừ kết quả với điều kiện cụ thể trong tìm kiếm WordPress, thì bạn sẽ cần thêm mã sau đây.
function wpb_modify_search_query( $query ) {
global $wp_the_query;
if( $query === $wp_the_query && $query->is_search() ) {
$tax_query = array(
array(
'taxonomy' => 'genre',
'field' => 'slug',
'terms' => 'action',
'operator' => 'NOT IN',
)
);
$query->set( 'tax_query', $tax_query );
}
}
add_action( 'pre_get_posts', 'wpb_modify_search_query' );
Đừng quên thay thế ‘genre’ và ‘action’ sao cho phù hợp.
3. Loại trừ tác giả cụ thể khỏi Tìm kiếm WordPress
Để loại trừ các tác giả bài đăng khỏi công cụ tìm kiếm wordpress, bạn có thể sử dụng 2 cách sau
Nếu tác giả chỉ có một vài bài đăng và bạn chắc chắn họ sẽ không thêm bất kỳ bài đăng nào nữa, bạn có thể sử dụng phương pháp đầu tiên trong bài viết này để loại trừ bài đăng của họ khỏi tìm kiếm WordPress.
Tuy nhiên, nếu có rất nhiều bài viết được viết bởi một tác giả, thì bạn có thể sử dụng đoạn mã sau để loại trừ tất cả chúng khỏi kết quả tìm kiếm của WordPress.
function wpb_search_filter( $query ) {
if ( $query->is_search && !is_admin() )
$query->set( 'author','-24' );
return $query;
}
add_filter( 'pre_get_posts', 'wpb_search_filter' );
Đừng quên thay thế 24 bằng ID của tác giả bài đăng.
Bạn cũng có thể sử dụng cùng một mã để loại trừ nhiều tác giả bằng cách thêm ID người dùng của họ được phân tách bằng dấu phẩy.
function wpb_search_filter( $query ) {
if ( $query->is_search && !is_admin() )
$query->set( 'author','-24, -12, -19' );
return $query;
}
add_filter( 'pre_get_posts', 'wpb_search_filter' );
Chúng tôi hy vọng bài viết này sẽ giúp bạn hiểu rõ hơn về việc ngăn chặn các nội dung cụ thể xuất hiện trong kết quả tìm kiếm mặc định của WordPress. Bạn cũng có thể tham khảo các plugin tìm kiếm tốt nhất cho WordPress của chúng tôi để cải thiện tính năng tìm kiếm cho trang web của bạn.
Nếu thích bài viết này, vui lòng đăng ký Kênh YouTube của chúng tôi để xem thêm các video hướng dẫn. Bạn cũng có thể theo dõi chúng tôi trên Twitter và Facebook để cập nhật các thông tin mới nhất từ cunghocwp.com