Hầu hết các blog WordPress hiện nay đều bật chế độ comment phân cấp để người xem có thể dễ dàng theo dõi các bình luận hơn nhờ việc hiển thị bình luận trả lời nằm ngay bên dưới bình luận được trả lời. Như vậy, các blog có chức năng hiển thị nút Reply ngay bên phía dưới một comment nào đó thì đồng nghĩa với việc blog đó sử dụng tính năng comment phân cấp.
Comment phân cấp trở nên vô cùng quan trọng trên blog vì nó giúp người đọc dễ đọc các comment liên quan hơn, hơn thế nữa nếu các bạn có sử dụng plugin ReplyMe hay các plugin thông báo khi có người trả lời comment khác thì người được reply sẽ nhận được một email thông báo, góp phần giữ chân người đọc rất hiệu quả.
Nhưng bên cạnh đó, các nút Reply sẽ sinh ra một biến trên đường dẫn của bài viết đó là ?replytocom, và nó có thể ảnh hưởng đến quá trình SEO blog WordPress của bạn, đặc biệt hơn nó lại càng quan trọng khi phiên bản WordPress 3.5 được cập nhật. Đó là lý do vì sao hôm nay mình viết bài về nó.
Để dễ hình dung, mình copy một đường dẫn của nút Reply trên blog của mình và nó như thế này:
https://cddos.net/tên-bài-viết.html?replytocom=3948
Đoạn URL này được hiểu là bạn sẽ reply cho bình luận mang ID số 3948 và mỗi một URL như vậy thì Google vẫn hiểu là một liên kết. Ok, vậy điều gì sẽ xảy ra khi bài viết bạn có 100 bình luận? Mình thì cho rằng bạn sẽ có 100 liên kết khác nhau có cùng một nội dung, quá rõ ràng, bạn đã vô tình tạo điều kiện cho lỗi trùng lặp nội dung sinh sôi và phát triển.
Có nhiều ý kiến cho rằng WordPress sẽ tự động thêm các thuộc tính nofollow, noindex vào những liên kết chứa tham số ?replytocom nhưng thật sự không phải vậy, mình đã gặp một vấn đề trùng lặp nội dung khá nghiêm trọng liên quan đến tính năng này ở phiên bản WordPress 3.4.2 và tưởng như phiên bản 3.5 sẽ thay đổi điều đó do có quá nhiều người kêu ca, nhưng có vẻ kết quả không như chúng ta mong đợi vì các liên kết chứa tham số ?replytocom đều vẫn là nofollow, hay nói đúng hơn thì nó chẳng thay đổi gì cả.
Mặc dù ở mỗi bài viết đều mang thẻ rel=”canonical” để xác định nội dung gốc để bot có thể chỉ cần index nội dung gốc mà sẽ bỏ qua các liên kết khác bất kỳ. Tuy nhiên theo kinh nghiệm của mình là dù bạn có gắn thẻ rel=”canonical” trong bài viết thì các liên kết chứa biến replytocom vẫn được index trên Google.
Ok, vậy bây giờ chúng ta không cần suy nghĩ gì thêm nữa ngoài việc xóa bay cái biến này trên URL hoặc chặn bot index URL có chứa tham số replytocom.
Trong plugin WordPress SEO by Yoast có một tính năng cho phép bạn loại bỏ ?replytocom ra khỏi URL của nút reply.
Còn nếu bạn muốn chặn bot index URL chứa replytocom thì khai báo nó trong file robots.txt
Disallow: *?replytocom
Hoặc bạn có thể dùng cách khác nữa đó là vào Google Webmaster Tools ⇨ Cấu hình ⇨ Tham số URL ⇨ Thêm tham số
Còn nếu bạn muốn thêm thuộc tính noindex, nofollow vào nội dung trong liên kết chứa ?replytocom thì mở file default-filters.php trong thư mục wp-includes và thêm đoạn code sau vào cuối file đó.
if ( isset( $_GET['replytocom'] ) ) add_action( 'wp_head', 'wp_no_robots' );
Vấn đề này cũng không có mới mẻ gì nhưng vừa qua khi kiểm tra mình phát hiện một vài URL bị trùng và thấy nguyên nhân là do tham số replytocom này nên muốn chia sẻ một chút với mọi người. Nếu ai chưa bị lỗi này mà chưa cấu hình lại tham số replytocom hoặc đặt thuộc tín noindex cho các URL chứa tham số này thì hãy làm ngay nhé để sau này không phải tốn công. :cheers: