Mẫu file robots.txt chuẩn dành cho website WordPress, có thể áp dụng cho tất cả các website.

Nếu các bạn chưa biết thì robots.txt là một trong những file có vai trò rất quan trọng đối với việc SEO website. Nó không những quy định cách thức các công cụ tìm kiếm có thể thu thập và lập chỉ mục trên website mà còn có thể ảnh hưởng tới khả năng hiển thị của website (tính thân thiện với thiết bị di động) khi Google Bots truy xuất dữ liệu. Do đó, có một file robots.txt chuẩn là bước đầu tiên mà các bạn cần làm khi tối ưu website cho các công cụ tìm kiếm.
Tham khảo thêm:
File robots.txt là gì?
Robots Exclusion Standard được phát triển từ năm 1994, nhằm giúp các webmaster có thể “tư vấn” cho các công cụ tìm kiếm cách thu thập thông tin từ website của họ. Nó hoạt động theo cách tương tự như các robot meta tag. Điểm khác biệt chính giữa chúng là các file robots.txt sẽ ngăn cản việc công cụ tìm kiếm truy cập vào một trang hoặc thư mục, trong khi các robot meta tag chỉ kiểm soát việc lúc nào thì trang hoặc thư mục đó được lập chỉ mục (index).
Đặt một file robots.txt trong thư mục gốc của tên miền cho phép bạn ngăn chặn công cụ tìm kiếm lập chỉ mục các tập tin và thư mục nhạy cảm. Ví dụ, bạn có thể ngăn chặn một công cụ tìm kiếm thu thập dữ liệu từ thư mục hình ảnh của bạn hoặc lập chỉ mục một tập tin PDF nằm trong một thư mục bí mật.
Các công cụ tìm kiếm lớn sẽ thực hiện theo các quy tắc mà bạn thiết lập. Tuy nhiên, không phải lúc nào các quy tắc mà bạn xác định trong tập tin robots.txt cũng được thi hành. Trình thu thập dữ liệu của các phần mềm độc hại và các công cụ tìm kiếm nhỏ có thể không tuân thủ các quy tắc và index bất cứ điều gì họ muốn. Rất may, các công cụ tìm kiếm lớn hoạt động theo các tiêu chuẩn này, bao gồm cả Google, Bing, Yandex, Ask và Baidu.
Các bạn có thể tham khảo thêm tài liệu về file robots.txt do chính Google cung cấp tại đây.
Các quy tắc cơ bản của Robots Exclusion Standard
Không mất quá nhiều thời gian để có được một sự hiểu biết đầy đủ về Robots Exclusion Standard. Chỉ có một vài quy tắc mà bạn cần phải tìm hiểu. Những quy tắc này thường được gọi là “chỉ thị”.
Ba chỉ thị chính của Robots Exclusion Standard là:
- User-agent: xác định các công cụ tìm kiếm mà quy tắc được áp dụng.
- Disallow: ngăn cản các công cụ tìm kiếm thu thập thông tin và lập chỉ mục.
- Allow: cho phép các công cụ tìm kiếm thu thập thông tin và lập chỉ mục.
Dấu hoa thị (*) có thể được sử dụng như một ký tự đại diện cho tất cả các công cụ tìm kiếm. Ví dụ, bạn có thể thêm dòng sau vào file robots.txt để ngăn chặn các công cụ tìm kiếm thu thập thông tin trên toàn bộ website của bạn.
User-agent: *
Disallow: /
Các chỉ thị trên là hữu ích nếu bạn đang phát triển một website mới và không muốn các công cụ tìm kiếm lập chỉ mục khi nó chưa được hoàn thiện.
Một số website sử dụng chỉ thị Disallow mà không có dấu gạch chéo (/) để biểu thị một trang web có thể được thu thập dữ liệu. Điều này cho phép các công cụ tìm kiếm có đầy đủ quyền truy cập vào toàn bộ website của bạn.
User-agent: *
Disallow:
Để ngăn chặn việc thu thập dữ liệu với các thư mục hoặc đường dẫn cụ thể, bạn chỉ cần thêm đường dẫn hoặc tên thư mục vào sau chữ Disallow . Trong ví dụ dưới đây, tôi đã quy định các công cụ tìm kiếm không được phép thu thập thông tin của thư mục /images/ và toàn bộ các tập tin cũng như thư mục con chứa trong nó:
User-agent: *
Disallow: /images/
Điều này có được là do robots.txt sử dụng đường dẫn tương đối, không sử dụng đường dẫn tuyệt đối. Các dấu gạch chéo (/) thay thế cho thư mục gốc của tên miền và do đó áp dụng quy tắc cho toàn bộ website của bạn. Đường dẫn là trường hợp nhạy cảm, vì vậy hãy chắc chắn sử dụng đúng trường hợp khi xác định các tập tin, các trang và thư mục.
Cách tạo file robots.txt trong WordPress
Có 2 cách khác nhau để làm điều này: tạo bằng phương pháp thủ công hoặc sử dụng plugin.
Tạo file robots.txt bằng phương pháp thủ công
Một tập tin robots.txt có thể được tạo ra trong vài giây. Tất cả những gì bạn phải làm là mở một trình soạn thảo văn bản (NotePad hoặc NotePad++) và lưu một tập tin trống với tên “robots.txt”.

Sau khi thêm một số quy tắc vào tập tin, hãy lưu nó lại và upload lên thư mục gốc của tên miền, tức là tại địa chỉ https://yourwebsite.com/robots.txt. Hãy đảm bảo bạn đã upload tập tin robots.txt vào thư mục gốc của tên miền, ngay cả khi WordPress được cài đặt trong một thư mục con.

Tạo file robots.txt bằng plugin
Các plugin hỗ trợ SEO website WordPress (Yoast SEO, Rank Math, AIOSEO…) hầu hết đều được trang bị sẵn tính năng tạo file robots.txt. Ví dụ đối với plugin Yoast SEO, các bạn có thể truy cập SEO => Tools => File editor => click vào nút Create robots.txt file.

Sau khi file robots.txt mặc định được tạo ra, các bạn có thể tùy chỉnh nội dung của nó rồi click vào nút Save changes to robots.txt để lưu lại.

Công cụ tìm kiếm sẽ kiểm tra tập tin robots.txt ở thư mục gốc của tên miền mỗi khi chúng bắt đầu tiến hành thu thập thông tin từ website của bạn. Lưu ý, các bạn sẽ cần phải tạo các file robots.txt riêng biệt cho mỗi tên miền phụ (subdomain) và các giao thức khác nhau.
File robots.txt chuẩn cho website WordPress
Đây là một trong những mẫu file robots.txt chuẩn nhất, tối ưu nhất, được nhiều blogger WordPress nổi tiếng tin dùng. Bạn cũng có thể sử dụng nó cho website WordPress của mình. Tuy nhiên, hãy nhớ tùy biến nó cho phù hợp với từng hoàn cảnh cụ thể.
User-agent: *
Disallow: /wp-admin/
Disallow: /readme.html
Disallow: /license.txt
Disallow: /?s=*
Allow: /wp-admin/admin-ajax.php
Allow: /wp-admin/images/*
Sitemap: https://wpcanban.com/sitemap_index.xml
Lưu ý:
- Thay
https://wpcanban.com/sitemap_index.xmlbằng đường link đến XML sitemap của bạn. - Không nên chặn Google và các công cụ tìm kiếm khác thu thập dữ liệu trong các thư mục
/wp-content/themes/và/wp-content/plugins/. Điều đó sẽ cản trở việc Google có một cái nhìn chính xác nhất về giao diện website của bạn. Ngoài ra, nó cũng có thể gây ra lỗi website không thân thiện với thiết bị di động.
Bạn đang sử dụng mẫu file robots.txt nào cho website WordPress của mình? Theo bạn, mẫu file robots.txt đó có thực sự tối ưu hay không? Hãy chia sẻ nó với chúng tôi thông qua 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ạn đã đóng góp cho cộng đồng WP 1 bài viết bổ ích
Mẫu này cần chặn thêm vài con bot nữa ad à
Mình đã thêm file robots.txt giống như bạn hướng dẫn, bài viết rất hay.
hay lắm cảm ơn bạn
Anh cho em hỏi. Những cái nào mình không khai báo thì mặc định sẽ Allow có đúng ko ạ?
Ví dụ của em là:
User-agent: *
Disallow: /wp-admin/
Disallow: /readme.html
Disallow: /license.txt
Disallow: /?s=*
Allow: /wp-admin/admin-ajax.php
Allow: /wp-admin/images/*
Em không khai báo wp-content thì mặc định wp-content sẽ Allow có đúng không ạ?
Đúng rồi bạn.
Anh @Trung Hiếu cho em hỏi:
Các câu lệnh này nghĩa là gì vậy anh?
Disallow: /?s=*
Disallow: /search?q=*
Disallow: *?replytocom
Nên xài cho file robots.txt không anh?
Disallow: /?s=* => chặn index trang kết quả tìm kiếm mặc định của WordPress. Dấu * tương ứng với từ khóa tìm kiếm.
Disallow: /search?q=* => chặn index trang kết quả tìm kiếm tùy chỉnh của WordPress. Ví dụ bên mình dùng Google Custom Search thì sẽ có link trang kết quả tìm kiếm là https://wpcanban.com/search?q=* (dấu * tương ứng với từ khóa tìm kiếm).
Disallow: *?replytocom => chặn index link reply bình luận. Trước đây Yoast SEO trang bị sẵn tính năng cho phép xóa bỏ link reply-to-comment nhưng từ phiên bản 7.0 trở đi thì họ đã loại bỏ nó. Sở dĩ người ta chặn index link này vì nó gây ra lỗi trùng lặp nội dung. Nhưng có vẻ hiện tại vấn đề này đã được khắc phục mà không cần phải chặn index bằng robots.txt hay loại bỏ bằng plugin nữa.
Cảm ơn anh rất nhiều ạ.
Tên miền 1:
User-agent: googlebot
Disallow: /
User-agent: *
Allow: /
Sitemap: http://abc.com/sitemap_index.xml
Ý nghĩa: trang web abc.com, bot google bị chặn không dc index, tất cả các bot còn lại được phép.
—
Tên miền 2:
User-agent: Baiduspider
Allow: /
Sitemap: http://edf.com/sitemap_index.xml
Ý nghĩa: trang web edf.com, chỉ có bot Baidu được index, tất cả các bot còn lại không được phép index.
Admin cho mình hỏi thiết lập hai file robots.txt ở 2 trang web như vậy có đúng với phần ý nghĩa của nó không? Thanks, mong sự hồi âm
Bạn muốn chặn index bot nào thì phải ghi cụ thể tên của bot đó ra. Nếu không ghi thì nó vẫn index như thường.
A ơi file robots.txt của em có chuẩn chưa ạ?
User-agent: *
Allow: /*.js$
Allow: /*.css$
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-content/themes
Disallow: /wp-content/plugins
Disallow: /images/
Disallow: /author/
Bạn tự so sánh với mẫu ở trong bài viết là có câu trả lời mà. :P
em thấy cái này chuẩn hơn nè anh Hiếu :P
User-agent: Mediapartners-Google
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /search?q=*
Disallow: *?replytocom
Disallow: */attachment/*
Disallow: /images/
User-agent: Bingbot
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /search?q=*
Disallow: *?replytocom
Disallow: */attachment/*
Disallow: /images/
User-agent: Googlebot
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /search?q=*
Disallow: *?replytocom
Disallow: */attachment/*
Disallow: /images/
User-agent: Twitterbot
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /search?q=*
Disallow: *?replytocom
Disallow: */attachment/*
Disallow: /images/
User-agent: Yandex
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /search?q=*
Disallow: *?replytocom
Disallow: */attachment/*
Disallow: /images/
User-agent: *
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /search?q=*
Disallow: *?replytocom
Disallow: */attachment/*
Disallow: /images/
User-agent: Mediapartners-Google
Allow: /*.js$
Allow: /*.css$
Sitemap: https://wpcanban.com/sitemap_index.xml
User-agent: Bingbot
Allow: /*.js$
Allow: /*.css$
Sitemap: https://wpcanban.com/sitemap_index.xml
User-agent: Googlebot
Allow: /*.js$
Allow: /*.css$
Sitemap: https://wpcanban.com/sitemap_index.xml
User-agent: Twitterbot
Allow: /*.js$
Allow: /*.css$
Sitemap: https://wpcanban.com/sitemap_index.xml
User-agent: Yandex
Allow: /*.js$
Allow: /*.css$
Sitemap: https://wpcanban.com/sitemap_index.xml
User-agent: *
Allow: /*.js$
Allow: /*.css$
Sitemap: https://wpcanban.com/sitemap_index.xml
đoạn này em trộm từ file robots.txt của facebook ạ :3
Để mình phân tích cho bạn nghe:
1. Chỉ cần
User-agent: *là đủ, nó đại diện cho tất cả các bot tìm kiếm. Do đó bạn không cần phải phân riêng ra từng bot như vậy, trừ khi chỉ thị cho chúng là khác nhau.2.
Disallow: /wp-includes/là không ổn rồi. Nhiều website vẫn load các file từ thư mục /wp-includes/ để phục vụ cho việc hiển thị giao diện. Do đó chặn truy cập /wp-includes/ sẽ khiến cho bots tìm kiếm có một cái nhìn không hoàn thiện và đầy đủ về website.3.
Disallow: *?replytocomcái này cũng không nên chặn, do nó sẽ ảnh hưởng đến việc bots tìm kiếm index dữ liệu bình luận. Bạn có biết bình luận cũng là một trong số các yếu tố quan trọng giúp website lên top tìm kiếm?Vậy thì cái mà bạn nói là chuẩn hơn thì chuẩn ở đâu? :P
P/s: WordPress mặc định không dùng đường dẫn
/search?q=*trong tìm kiếm đâu nhé. Phải là/?s=*mới đúng.mình thấy bất kỳ web site nào nếu thêm dấu ? vào thì đường link sẽ là abc,com/bai-viet thành abc,com/bai-viet? như vậy có ảnh hưởng gì không hiếu. Có nên chặn không
Không cần quan tâm bạn nhé. Bình thường chả ai tự dưng đi thêm dấu hỏi vào cuối đường link cả, nên Google cũng sẽ không index chúng.
Bác Neil Patel cũng có cái guide về phần này mà thấy không cụ thể như file của wpcanban. Có anh em nào chuột bạch chưa cho mình xin ít phản hồi nhỉ?! :D