BreadcrumbList Schema
Markup mô tả chuỗi liên kết phân cấp giúp người dùng và công cụ tìm kiếm hiểu vị trí trang trong cấu trúc site.
BreadcrumbList Schema là gì?
BreadcrumbList Schema là một loại markup cấu trúc (structured data) theo chuẩn Schema.org, dùng để mô tả chuỗi liên kết phân cấp — còn gọi là "đường dẫn mảnh bánh mì" — giúp người dùng và công cụ tìm kiếm hiểu rõ vị trí của trang hiện tại trong tổng thể cấu trúc website. Đây không phải là thanh điều hướng hiển thị trên giao diện, mà là dữ liệu ẩn được nhúng vào mã nguồn (thường ở dạng JSON-LD), nhằm truyền thông tin phân cấp một cách chính xác cho Google và các công cụ tìm kiếm khác.
Tại sao quan trọng trong SEO?
BreadcrumbList Schema hỗ trợ SEO theo ba cách chính:
- Cải thiện trải nghiệm người dùng: Người đọc dễ dàng biết họ đang ở đâu và quay lại các mức cao hơn (ví dụ: Trang chủ → Danh mục → Sản phẩm), giảm tỷ lệ thoát.
- Tăng khả năng xuất hiện Rich Result: Google có thể hiển thị breadcrumb dưới dạng đường dẫn phân cấp trong kết quả tìm kiếm — giúp tăng độ nổi bật và CTR (tỷ lệ nhấp).
- Hỗ trợ lập chỉ mục và hiểu cấu trúc site: Công cụ tìm kiếm nắm bắt mối quan hệ giữa các trang nhanh hơn, đặc biệt với site có nhiều tầng con hoặc nội dung động.
Lưu ý: BreadcrumbList Schema không trực tiếp nâng thứ hạng, nhưng gián tiếp cải thiện các yếu tố xếp hạng như thời gian ở lại trang, tỷ lệ nhấp và độ tin cậy cấu trúc — những tín hiệu Google xác nhận là quan trọng.
Cách hoạt động
BreadcrumbList Schema hoạt động bằng cách khai báo một danh sách các mục (ListItem) theo thứ tự từ tổng quát đến cụ thể. Mỗi mục gồm:
@type: Luôn làListItemposition: Số nguyên bắt đầu từ 1, chỉ thứ tự trong chuỗiname: Tên hiển thị của mục (phải khớp với văn bản người dùng thấy)item: URL đầy đủ của mục đó (dạnghttps://...)
Google đọc toàn bộ danh sách, kiểm tra tính nhất quán về thứ tự và URL, sau đó xác thực xem nó phản ánh đúng cấu trúc thực tế của site hay không.
Hướng dẫn thực hiện
- Xác định chuỗi breadcrumb hiển thị trên trang: Ví dụ: Trang chủ > Điện máy > Máy hút bụi > Máy hút bụi Xiaomi MiJia.
- Đảm bảo breadcrumb hiển thị trên giao diện là thật và có liên kết: Không dùng text tĩnh — tất cả các mục trừ mục cuối phải là thẻ
<a href="...">hợp lệ. - Viết markup JSON-LD (khuyến nghị hơn Microdata hoặc RDFa): Nhúng trong thẻ
<head>hoặc trước thẻ</body>. - Kiểm tra bằng công cụ chính thức: Dùng Rich Results Test hoặc Lighthouse để xác minh lỗi và trạng thái hợp lệ.
- Theo dõi trong Google Search Console: Vào phần Enhancements > Breadcrumbs để xem số lượng trang được phát hiện và cảnh báo nếu có vấn đề.
Lỗi thường gặp
| Lỗi | Dấu hiệu | Cách khắc phục |
|---|---|---|
Vị trí (position) không bắt đầu từ 1 hoặc bị lặp |
Rich Results Test báo “Invalid position” | Đảm bảo position tăng dần từ 1, không bỏ sót, không trùng (ví dụ: 1 → 2 → 3 → 4) |
Mục cuối cùng có thuộc tính item |
Google hiển thị breadcrumb nhưng không link mục cuối | Mục cuối (trang hiện tại) không cần item. Chỉ các mục trước mới cần URL. |
Tên (name) không khớp với văn bản hiển thị |
Google bỏ qua breadcrumb hoặc báo “Inconsistent name” | So sánh từng ký tự: viết hoa/thường, dấu chấm phẩy, khoảng trắng — phải giống hệt phần breadcrumb trên giao diện. |
URL trong item không tồn tại hoặc trả mã 404/500 |
Google không hiển thị breadcrumb hoặc đánh dấu “Invalid URL” | Kiểm tra từng URL bằng trình duyệt hoặc công cụ kiểm tra HTTP status. Sửa hoặc loại khỏi markup nếu không khả dụng. |
Ví dụ thực tế
Dưới đây là markup JSON-LD cho trang sản phẩm https://banhang.vn/dien-may/may-hut-bui/xiaomi-mijia, với breadcrumb hiển thị: Trang chủ > Điện máy > Máy hút bụi > Xiaomi MiJia:
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "Trang chủ",
"item": "https://banhang.vn/"
},
{
"@type": "ListItem",
"position": 2,
"name": "Điện máy",
"item": "https://banhang.vn/dien-may/"
},
{
"@type": "ListItem",
"position": 3,
"name": "Máy hút bụi",
"item": "https://banhang.vn/dien-may/may-hut-bui/"
},
{
"@type": "ListItem",
"position": 4,
"name": "Xiaomi MiJia"
}
]
}
Lưu ý: Mục cuối không có item, vì đây là trang hiện tại — không cần liên kết ra ngoài.
Câu hỏi thường gặp
BreadcrumbList Schema có bắt buộc phải dùng JSON-LD?
Không bắt buộc, nhưng JSON-LD là định dạng được Google khuyến nghị mạnh mẽ nhất do dễ triển khai, ít gây xung đột với HTML và hỗ trợ tốt trên site động. Microdata và RDFa vẫn hoạt động nếu triển khai đúng, nhưng dễ sai hơn khi chỉnh sửa template.
Có nên thêm breadcrumb cho mọi trang, kể cả trang liên hệ hoặc giới thiệu?
Có thể thay đổi. Với trang không nằm trong chuỗi phân cấp rõ ràng (ví dụ: trang Liên hệ nằm ngoài menu chính), bạn có thể không triển khai — hoặc tạo breadcrumb đơn giản như Trang chủ > Liên hệ. Google chấp nhận breadcrumb 2 mục, miễn là hợp lý và nhất quán.
BreadcrumbList Schema ảnh hưởng đến tốc độ tải trang không?
Không đáng kể. Đoạn JSON-LD thường dưới 2 KB, không chặn render và không yêu cầu tải tài nguyên bên ngoài. Nếu đặt đúng vị trí (trong <head> hoặc cuối <body>), tác động đến Core Web Vitals là bằng không.