Hướng dẫn chặn index subpages trong WordPress một cách đơn giản và nhanh chóng.

Nếu bạn để ý thì kể từ phiên bản 6.3, Yoast SEO đã loại bỏ tính năng “noindex subpages” ra khỏi trang thiết lập. Lý do mà họ đưa ra là Google đã làm việc tốt hơn với các chuỗi phân trang. Nó sẽ tự nhận biết thông qua các thẻ rel="next" và rel="prev" để điều hướng người dùng đến trang đầu tiên của chuỗi phân trang. Noindex tất cả các subpages sẽ dẫn đến số lượng thu thập dữ liệu của chúng thấp hơn, ảnh hưởng tới số lượng thu thập dữ liệu của các bài viết cũ hơn, đây không phải là ý tưởng hay trên hầu hết các trang web (nguồn tham khảo).
Tham khảo thêm:
Google vẫn index subpages
Trên thực tế thì mọi việc có vẻ đang diễn ra không đúng như những gì mà các lập trình viên của Yoast SEO đã nói. Google vẫn thu thập dữ liệu của các subpages, điều này rất tốt. Tuy nhiên, vấn đề ở đây là nó index luôn cả những trang này, dẫn đến lỗi “thẻ tiêu đề trùng lặp”:

Và lỗi “mô tả meta trùng lặp” trong Google Search Console:

Hơn thế nữa, nó còn hiển thị luôn trên kết quả tìm kiếm của Google:

Điều này theo tôi là nhìn thiếu chuyên nghiệp và mất thời gian. Chúng ta nên điều hướng Google Bots tập trung cho việc lập chỉ mục các bài viết, các trang quan trọng sẽ tốt hơn.
Chặn index subpages trong WordPress
Tùy thuộc vào theme mà bạn đang dùng để áp dụng cho phù hợp:
Đối với theme Paradise
1. Hãy cập nhật theme Paradise lên phiên bản 6.7.3 hoặc mới hơn.
2. Truy cập Giao diện => Tùy biến => Thiết lập giao diện => Tối ưu tìm kiếm => Chuyển mục Chặn index subpages sang trạng thái Có rồi lưu lại.

Đối với các theme khác
Để ngăn chặn việc index subpages trong website WordPress, các bạn chỉ cần chèn đoạn code sau đây vào cuối file functions.php của theme (hoặc child theme) đang sử dụng:
add_action('wp_head', 'robot_meta_subpage_fix', 1);
function robot_meta_subpage_fix() {
if(is_paged()) {
echo "<meta name='robots' content='noindex, follow'/>", "\n";
}
}
Code này sẽ giúp chèn thẻ:
<meta name='robots' content='noindex,follow'/>
vào subpages. Hãy yên tâm là nó chỉ có tác dụng chặn lập chỉ mục (noindex) mà thôi, còn bots tìm kiếm vẫn có thể truy cập các trang này hoàn toàn bình thường (follow). Do đó bạn không phải lo việc các bài viết cũ không được bots tìm kiếm sờ tới.
Nếu site của bạn đang sử dụng Yoast SEO thì khi thêm code bên trên vào, thẻ meta robot của Yoast SEO:
<meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' />
vẫn tiếp tục tồn tại. Do đó, thay vì sử dụng code bên trên, hãy sử dụng code này:
add_filter("wpseo_robots", function($robots) {
if (is_paged()) {
return 'noindex,follow';
} else {
return $robots;
}
});
Sau khi chèn, nhớ xóa cache web và cache trình duyệt trước khi view source để kiểm tra kết quả:

Thật đơn giản phải không nào? Chúc các bạn thành công!
Bạn nghĩ gì về vấn đề mà tôi vừa đề cập ở trên? Theo bạn, có nên chặn index subpages hay không? Hãy cho chúng tôi biết quan điểm của bạn bằng cách sử dụng khung bình luận bên dưới.
Nếu bạn thích bài viết này, hãy theo dõi blog của tôi để thường xuyên cập nhật những bài viết hay nhất, mới nhất nhé. Cảm ơn rất nhiều. :)






cảm ơn bác. rất cần bài viết này
Bạn ơi chèn noindex conten nhỡ đâu nó không index tất cả web thì sao. Vấn đề là có phải chèn đúng chỗ mới được không
Bạn sợ thì đừng có làm. Có ai kề dao vào cổ bắt bạn phải làm đâu? :P
Đang cần giú bạn lại nói thế. biết rồi thì nó dễ. thực ra mình hiểu rồi. trong câu lệnh của đoạn code đã chỉ rõ noindex subpages.
Có điều web mìn đi thuê thiết kế. Phần admin họ giới hạn quyền quản trị. Không có chỗ vào tự sửa. Giờ nhờ họ. Họ chèn sợ ko chuẩn vào file cần chèn
Web của bạn có cài được plugin không? Nếu có thì cài plugin Code Snippets vào. Chèn code thoải mái, không cần chèn trực tiếp vào file theme.
Tiện thể bạn cho hỏi web hiện tại đã bị index các subpages rồi. Sau kho cài noindex thì cứ để tự nhiên một thời gian các trang sub sẽ tự mất index hay còn phải làm j khác không
Nó tự mất, nhưng sẽ phải chờ rất lâu, tùy thuộc vào cường độ index dữ liệu của Google.
Mình đã thử với trang bếp royal của mình, hoạt động vẫn nuột nà lắm, bản wp 5.0 nhé các thím.
Theo Hiếu thì mình có nên đi bình luận trên các kênh Youtube ở phần comment trên kênh của họ, và kèm theo link web của mình ko? Nếu comment ít thì có sao ko, mà comment nhiều thì Google có báo là SPAM ko? và có phạt website ko ạ?
Mình chưa thử bao giờ nên cũng không rõ bạn ạ. :)
Cảm ơn a. Bài viết rất hay
Kiểm tra bằng cú pháp site:domain.com/page thì thấy site mình không bị index cái này mấy, chỉ thấy hiển thị một vài kết quả thì chắc không cần phải thực hiện việc chặn subpages như này đâu nhỉ? :D
A hiếu giúp mình được ko, giờ mình vừa thêm Phân trang cho viết, nhưng kiểm tra thì Google nó Index cả link phân trang thì có sao ko vậy.
Mong a hiếu trả lời giúp. Xin cảm ơn
Bạn phân 1 bài viết thành nhiều trang hay là phân trang cho danh sách hiển thị các bài viết?
1 bài nó dài quá nên mình phân trang ra trang 1, 2, 3… giờ thì nó index cả bài phân trang 1 , 2, 3 kia thì ko biết có sao ko, vì mình thấy như thế sẽ trùng lặp title và Des
Có link rel=”next”, rel=”prev” và link canonical mà. Nếu bạn đang sử dụng plugin SEO như Yoast SEO hay All In One SEO Pack thì không phải lo đâu.
Mình chưa hiểu rõ về cái canical lắm, trong yoatseo thì cái phần canical ấy điền thế nào. Vì những trang subpage thấy canical hiện chính link của nó luôn kiểu dạng: abc.com/xyz , abc.com/xyz/page2 .
Trong trường hợp này thì để nguyên hay là phải điền tay vào mục canical là : abc.com/xyz
Với nhu cầu bình thường thì bạn không cần động vào mục canonical, Yoast SEO sẽ tự động điền cho bạn.
Cái này có hoạt động với trang bán hàng sử dụng woocommerce không bạn?
Thử là biết ngay mà, có mất phí đâu nhỉ? :P
E thấy yoast có thẻ canonical, chỉ cần thêm link là được, đâu cần chèn code vậy đâu a. Với lại cho e hỏi 2 cách thêm canonical cà chèn code của anh cách nào tối ưu hơn ạ
Subpages mặc định cũng có canonical nhưng index thì nó vẫn index đấy thôi. Nói là 1 chuyện, còn làm là chuyện khác. :P