Schema Markup, hay structured data, là dữ liệu có cấu trúc được thêm vào trang để mô tả rõ loại nội dung và các thuộc tính liên quan. Google có thể dùng dữ liệu này để hiểu thực thể và làm trang đủ điều kiện cho một số hình thức hiển thị nâng cao, nhưng Schema không bảo đảm rich result, thứ hạng hoặc CTR.
Câu trả lời nhanh
Hãy bắt đầu từ nội dung người dùng nhìn thấy, chọn type phù hợp với page type, dùng dữ liệu chính xác và kiểm tra output thực tế. Một type có trong Schema.org chưa chắc được Google dùng cho rich result. Validation PASS chỉ xác nhận một phần yêu cầu kỹ thuật, không bảo đảm Google hiển thị kết quả nâng cao.

Schema.org khác Google Structured Data thế nào?
| Khái niệm | Vai trò | Điều cần nhớ |
|---|---|---|
| Schema.org | Từ vựng gồm type và property để mô tả dữ liệu | Có nhiều type hơn số Google Search hỗ trợ cho rich result |
| Structured data | Dữ liệu được đánh dấu bằng JSON-LD, Microdata hoặc RDFa | Phải khớp nội dung và thực thể thật |
| Google Search Gallery | Danh sách các tính năng structured data Google đang hỗ trợ | Yêu cầu có thể thay đổi theo thời gian |
| Rich result | Cách hiển thị nâng cao trên Search | Eligibility không đồng nghĩa được hiển thị |
| Knowledge Graph | Hệ thống hiểu thực thể và quan hệ | Schema không tự tạo Knowledge Panel |
Ví dụ, FAQPage và HowTo vẫn tồn tại trong Schema.org, nhưng Google Search không còn hiển thị FAQ rich result và đã ngừng HowTo rich result. Vì vậy, không nên giữ markup chỉ với kỳ vọng tạo kết quả mở rộng trên Google.
Ba định dạng Structured Data
| Định dạng | Cách triển khai | Phù hợp khi |
|---|---|---|
| JSON-LD | Đặt một object JSON-LD trong HTML | Dễ quản trị, Google thường khuyến nghị |
| Microdata | Gắn thuộc tính trực tiếp vào HTML | Hệ thống đã liên kết dữ liệu với template |
| RDFa | Gắn vocabulary và property vào HTML | Dự án đang dùng mô hình RDFa |
Không cần chuyển định dạng chỉ vì JSON-LD phổ biến hơn nếu Microdata hoặc RDFa đang chính xác và dễ bảo trì. Vấn đề quan trọng hơn là nguồn dữ liệu, tính nhất quán và khả năng cập nhật.
Cách chọn Schema theo Page Type
| Page type | Type thường phù hợp | Điều kiện |
|---|---|---|
| Trang chủ doanh nghiệp | Organization hoặc subtype phù hợp | Tên, logo, URL và thông tin quản trị phải chính xác |
| Doanh nghiệp địa phương | LocalBusiness và subtype cụ thể | Địa chỉ, điện thoại, giờ mở cửa hiển thị và còn hiệu lực |
| Bài viết | Article, BlogPosting hoặc NewsArticle | Tác giả, ngày xuất bản, cập nhật và hình ảnh phải khớp frontend |
| Hồ sơ tác giả | ProfilePage với Person | Thông tin tác giả có thể xác minh |
| Trang sản phẩm | Product và Offer | Giá, tiền tệ, tình trạng hàng và chính sách đồng bộ |
| Danh mục sản phẩm | Không gắn Product cho toàn danh mục | Mỗi Product nên đại diện một sản phẩm cụ thể |
| Sự kiện | Event | Thời gian, địa điểm, trạng thái và offer còn hiện hành |
| Video chính | VideoObject | Video và thumbnail có thể truy cập trên trang |
| Điều hướng | BreadcrumbList | Phản ánh đường dẫn người dùng thực sự |
Hướng dẫn riêng cho tác giả nằm tại Schema Person. Với website bán hàng, cần kiểm tra đồng thời Product/Offer, dữ liệu hiển thị và feed; xem thêm SEO Ecommerce. Bài hiện tại chỉ sở hữu intent tổng quan và quy trình triển khai.
Nguyên tắc Visible Content
Dữ liệu trong markup phải phản ánh nội dung người dùng có thể kiểm tra. Không đưa giá, review, tác giả, địa chỉ, chứng nhận hoặc tình trạng hàng không xuất hiện hoặc không còn đúng trên trang.
- Giá và tồn kho phải cập nhật cùng dữ liệu sản phẩm.
- Review và AggregateRating phải dựa trên đánh giá thật.
- Tên tác giả trong Article phải khớp byline và Author Page.
- Event đã hủy hoặc hoãn cần cập nhật cả frontend lẫn markup.
- Không dùng Schema để khai báo claim chỉ tồn tại trong backend.
Structured data không thay thế nội dung, crawl, indexability hoặc canonical. Trang bị robots chặn, noindex, lỗi HTTP hoặc yêu cầu đăng nhập vẫn không được cứu bằng Schema.
Ví dụ JSON-LD cơ bản
Ví dụ dưới đây minh họa dữ liệu Organization. Hãy thay bằng thông tin thực tế và chỉ giữ các thuộc tính có thể xác minh.
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Doanh nghiệp ABC",
"url": "https://example.com/",
"logo": "https://example.com/logo.png",
"contactPoint": {
"@type": "ContactPoint",
"telephone": "+84-28-1234-5678",
"contactType": "customer service"
}
}
Không sao chép nguyên ví dụ vào production. Dữ liệu cần được sinh từ nguồn quản trị đáng tin cậy, không nhập tay lặp lại trên nhiều template nếu có thể tránh.
Quy trình triển khai an toàn
- Chọn owner: xác định plugin, theme hoặc code nào chịu trách nhiệm tạo graph.
- Map page type: gán type theo chức năng thực tế của từng template.
- Map nguồn dữ liệu: tên, giá, tác giả, hình ảnh và trạng thái lấy từ đâu.
- Kiểm tra yêu cầu: đọc tài liệu Google cho feature tương ứng.
- Pilot: triển khai trên một số URL đại diện.
- Validate: kiểm tra cú pháp, yêu cầu rich result và rendered HTML.
- Rollout: mở rộng theo template sau khi pilot đạt.
- Monitor: theo dõi Search Console và thay đổi sản phẩm, plugin hoặc policy.
Schema trên WordPress
WordPress có thể tạo structured data từ theme, plugin SEO, plugin Schema, WooCommerce hoặc code tùy chỉnh. Rủi ro lớn nhất không phải thiếu plugin mà là nhiều hệ thống cùng sinh dữ liệu mâu thuẫn.
- Kiểm tra output hiện tại trước khi cài thêm plugin.
- Chọn một owner chính cho Organization, Article, Breadcrumb và Product.
- Không để hai graph khai báo tác giả, logo hoặc canonical URL khác nhau.
- Kiểm tra lại sau khi đổi theme, update plugin hoặc sửa template.
- Không chọn plugin chỉ vì có nhiều type; ưu tiên khả năng map dữ liệu đúng.
Công cụ kiểm tra
| Công cụ | Dùng để | Không chứng minh |
|---|---|---|
| Rich Results Test | Kiểm tra feature Google hỗ trợ và lỗi quan trọng | Rich result chắc chắn xuất hiện |
| Schema Markup Validator | Kiểm tra cú pháp và từ vựng Schema.org | Google hỗ trợ type đó |
| URL Inspection | Xem rendered page và indexability | Mọi URL cùng template đều đúng |
| Search Console | Theo dõi enhancement và lỗi trên URL đã crawl | Toàn bộ structured data của website |
| Crawl/render audit | So sánh source, rendered HTML và graph theo template | Eligibility cho mọi feature nếu không đọc guideline riêng |
Lỗi thường gặp
- Gắn Product cho category hoặc trang dịch vụ.
- Tạo rating hoặc review không có trên trang.
- Dùng LocalBusiness cho mọi URL.
- Giữ FAQPage hoặc HowTo chỉ để kỳ vọng rich result Google.
- Để nhiều plugin tạo cùng type với dữ liệu khác nhau.
- Không cập nhật giá, tồn kho, ngày sự kiện hoặc tác giả.
- Chỉ sửa warning trong tool mà không kiểm tra nội dung hiển thị.
- Cho rằng Schema là ranking guarantee.
Checklist trước khi publish
- Type khớp page type và nội dung chính.
- Thuộc tính bắt buộc và khuyến nghị được lấy từ dữ liệu thật.
- Markup khớp frontend trên mobile và desktop.
- URL, canonical, hình ảnh và entity ID nhất quán.
- Không có graph trùng hoặc mâu thuẫn.
- Trang crawlable, indexable và trả status phù hợp.
- Đã test URL mẫu và lưu baseline.
- Có owner theo dõi khi dữ liệu hoặc policy thay đổi.
Nguồn chính thức
- Google: Introduction to structured data
- Google Search Gallery
- General structured data guidelines
- Schema.org
- Google Search documentation updates
Kết luận
Schema là lớp mô tả dữ liệu, không phải lớp tạo chất lượng. Hãy chọn type theo page type, giữ dữ liệu khớp nội dung hiển thị, dùng một owner rõ ràng và kiểm tra cả cú pháp lẫn rendered page. Rich result là khả năng đủ điều kiện, không phải kết quả được cam kết.
Đoàn Trình Dục là Giảng viên Khoa Công nghệ Thông tin tại Đại học Công nghệ Sài Gòn (STU), với hơn 10 năm kinh nghiệm thực chiến trong các lĩnh vực Mạng máy tính, Marketing Online, SEO và Bảo mật hệ thống.
Với nền tảng sư phạm và kinh nghiệm tư vấn cho nhiều doanh nghiệp, thầy chuyên sâu vào việc xây dựng các giải pháp kỹ thuật số toàn diện và hiệu quả.

