Chặn Google lập chỉ mục các trang subpages trong WordPress

Mặc định Google sẽ lập chỉ mục (index) tất cả các trang của WordPress (bao gồm subpages) nên sẽ gây ra trùng lặp title và description không tốt cho seo. Đó là lý do chúng ta phải chặn, không cho Google index những trang này nữa.

Theo Joost de Valk (cha đẻ của plugin Yoast SEO) thì Google có khả năng hiểu được các trang con (subpages) thông qua các thẻ rel="next" và rel="prev" khi phân trang cho WordPress. Vì thế nó sẽ tự động không index các trang con này mà không cần đến thuộc tính noindex trên trang. Đó cũng là lý do từ phiên bản Yoast SEO 6.3 tính năng noindex subpages cũng được loại bỏ trên plugin này.

Nhưng thực tế, Google vẫn index các trang subpages. Trong công cụ quản trị web (Google Search Console) vẫn cảnh báo trùng title và description giữa các trang. Nhìn rất ngứa mắt. Đó là lý do bạn nên chặn lập chỉ mục ngay và luôn!

Sử dụng 1 trong 3 cách sau đây:

1. Chặn index subpages bằng robots.txt

Bạn thêm đoạn code sau vào file robots.txt trong thư mục root web:

User-agent: *
Disallow: /page/

Lưu ý là đừng để cấu trúc URL có từ page nếu không cũng sẽ bị chặn index nhé. Cách này có thể áp dụng cho tất cả các website nói chung chứ không riêng gì WordPress.

Kể từ tháng 09/2019, Google bot không còn tuân theo chỉ thị trong robots.txt nữa rồi. Các bạn đang chặn index bằng file robots.txt hãy xóa nó và sử dụng giải pháp khác đi nhé.

2. Chặn index subpages bằng functions.php

Bạn sửa file functions.php trong theme đang sử dụng, thêm vào đoạn code sau:

function dvp_subpage_fix() {
if(is_paged()) echo '<meta name="robots" content="noindex,follow"/>';}
add_action('wp_head', 'dvp_subpage_fix');

Code này sẽ tự động thêm thẻ <meta name="robots" content="noindex,follow"/> vào các trang subpages. Yên tâm là nó chỉ chặn lập chỉ mục chứ Google Bots vẫn thu thập dữ liệu được bình thường.

3. Sửa trực tiếp file header.php

Tìm file header.php trong thư mục theme đang sử dụng. Nếu nội dung file header.php có thẻ meta robots rồi thì chỉnh sửa, nếu chưa có thì thêm vào đoạn code sau:

<meta name="robots" content="follow, <?php echo (get_query_var('paged')==1)?'index':'noindex'?>" />

So với việc chặn bằng robots.txt thì sửa file header.php hoặc functions.php an toàn hơn. Không sợ bị Google noindex nhầm các trang không phải subpages. Tuy nhiên, mỗi khi update theme thì phải làm lại từ đầu nên cũng khá bất tiện. Giải pháp tốt nhất là dùng child-theme thì update theme thoải mái nhé.

Theo dõi bài viết
Nhận thông báo
guest
5 Bình luận
mới nhất
cũ nhất
Inline Feedbacks
Xem tất cả bình luận
5
0
Gửi bình luận của bạn về bài viết này.x
()
x