Trong quá trình tối ưu hóa SEO cho các website thương mại điện tử sử dụng WordPress, schema mặc định của WooCommerce thường xuyên gây ra những cảnh báo không mong muốn trên Google Search Console. Điển hình là các lỗi thiếu trường thông tin quan trọng như hasMerchantReturnPolicy, shippingDetails tại trang thông tin người bán, hay thiếu aggregateRating và review trong đoạn trích sản phẩm. Vì WooCommerce không cung cấp tùy chọn can thiệp sâu vào cấu trúc dữ liệu này từ giao diện quản trị, việc khắc phục thủ công trở nên vô cùng phức tạp đối với người dùng không chuyên về code. Giải pháp tối ưu và “sạch” nhất chính là vô hiệu hóa hoàn toàn schema mặc định của WooCommerce, sau đó thay thế bằng các plugin chuyên dụng như Schema Pro hoặc Rank Math để đảm bảo dữ liệu chuẩn SEO.
Mô tả lỗi dữ liệu có cấu trúc Schema trên plugin WooCommerce
Phân tích các lỗi Schema thường gặp trong WooCommerce
Đối với các SEOer và nhà phát triển web, việc đảm bảo website vượt qua bài kiểm tra của “Công cụ kiểm tra kết quả nhiều định dạng” (Rich Results Test) của Google là ưu tiên hàng đầu. Tuy nhiên, cơ chế tự động tạo schema của WooCommerce đôi khi hoạt động thiếu linh hoạt, dẫn đến việc khai báo các trường dữ liệu rỗng hoặc thiếu sót.
Lỗi đoạn trích về sản phẩm (Product Snippets)
Đây là lỗi phổ biến nhất đối với các cửa hàng mới hoặc các sản phẩm chưa có tương tác từ người dùng. Google yêu cầu nếu bạn khai báo schema sản phẩm, bạn phải cung cấp thông tin đánh giá. Tuy nhiên, nếu sản phẩm chưa có đánh giá thực tế hoặc tính năng đánh giá bị tắt, WooCommerce vẫn tạo ra cấu trúc schema nhưng bỏ trống các trường này, dẫn đến cảnh báo thiếu review và aggregateRating.
Hình ảnh minh họa lỗi thiếu trường review và aggregateRating trong đoạn trích sản phẩm WooCommerce
Lỗi trang thông tin người bán (Merchant Listings)
Trong các bản cập nhật gần đây, Google chú trọng hơn đến trải nghiệm mua sắm bằng cách yêu cầu các thông tin về chính sách vận chuyển và đổi trả. Schema mặc định của WooCommerce thường không tự động map (ánh xạ) được các thông tin này vào code, gây ra lỗi thiếu hasMerchantReturnPolicy (Chính sách hoàn trả) và shippingDetails (Chi tiết vận chuyển).
Minh họa lỗi thiếu trường hasMerchantReturnPolicy và shippingDetails trong trang thông tin người bán WooCommerce
Việc cố gắng “vá” từng lỗi nhỏ trong core của WooCommerce không phải là giải pháp bền vững vì các bản cập nhật plugin sau này có thể ghi đè lên các sửa đổi của bạn. Do đó, phương án vô hiệu hóa schema gốc và sử dụng giải pháp thay thế được cộng đồng kỹ thuật đánh giá cao hơn.
Hướng dẫn vô hiệu hóa Schema của WooCommerce chi tiết
Tùy thuộc vào việc bạn đang sử dụng Theme nào hoặc trình độ kỹ thuật của bạn, có hai phương pháp chính để thực hiện việc này: sử dụng tùy chọn có sẵn trong Theme (cụ thể là Paradise theme) hoặc can thiệp bằng code function.
Phương pháp 1: Vô hiệu hóa trên Theme Paradise
Nếu website của bạn đang vận hành trên nền tảng Theme Paradise, nhà phát triển đã tích hợp sẵn tính năng này để hỗ trợ tối ưu SEO.
Bước 1: Kiểm tra phiên bản Theme. Hãy đảm bảo bạn đã cập nhật Theme Paradise lên phiên bản 6.8.5 hoặc mới hơn để có tùy chọn này.
Bước 2: Truy cập vào trình quản lý giao diện theo đường dẫn:
Giao diện (Appearance) > Tùy biến (Customize) > Thiết lập giao diện > Tối ưu tìm kiếm.
Tại đây, bạn tìm mục [WooCommerce] Vô hiệu hóa Schema, chuyển trạng thái sang Có (Yes) và nhấn Đăng (Publish) để lưu lại.
Hướng dẫn vô hiệu hóa Schema của WooCommerce trong theme Paradise
Lưu ý quan trọng: Để tránh xung đột dữ liệu (conflict) giữa các file CSS, bạn cũng cần thực hiện thêm một bước nhỏ. Truy cập Giao diện > Tùy biến > Thiết lập giao diện > Tối ưu tốc độ và bật tính năng Loại bỏ Brands CSS.
Cách vô hiệu hóa WooCommerce Brands trong theme Paradise
Phương pháp 2: Sử dụng Code Snippet (Áp dụng cho mọi Theme)
Nếu bạn không sử dụng Theme Paradise hoặc muốn có sự kiểm soát thủ công, việc sử dụng hook trong WordPress là giải pháp triệt để nhất. Bạn có thể thêm code vào file functions.php của theme đang kích hoạt (khuyên dùng Child Theme) hoặc sử dụng plugin quản lý code như Code Snippets (khuyên dùng để tránh lỗi web khi thao tác sai).
Bạn hãy chèn đoạn code filter sau vào hệ thống:
/**
* Vô hiệu hóa Schema mặc định của WooCommerce
*/
add_filter( 'woocommerce_structured_data_product', '__return_false' );Giải thích kỹ thuật: Đoạn code trên sử dụng filter woocommerce_structured_data_product và trả về giá trị false. Điều này ra lệnh cho WooCommerce ngừng xuất ra bất kỳ dữ liệu JSON-LD nào liên quan đến sản phẩm trên frontend của website.
Sau khi thêm code, bạn cũng cần lưu ý vô hiệu hóa các plugin hoặc tính năng liên quan đến WooCommerce Brands nếu không sử dụng, vì chúng cũng có thể sinh ra các đoạn schema thừa.
Bước cuối cùng: Sau khi thực hiện một trong hai phương pháp trên, hãy nhớ xóa toàn bộ Cache của website (WP Rocket, LiteSpeed Cache, v.v.) và Cache CDN (Cloudflare) nếu có. Sau đó, sử dụng lại công cụ “Kiểm tra kết quả nhiều định dạng” của Google để xác nhận rằng các lỗi đã biến mất. Lúc này, bạn có thể tự tin cài đặt Schema Pro hoặc cấu hình schema trong Rank Math/Yoast SEO để khai báo dữ liệu chuẩn xác hơn.
Kết luận
Việc vô hiệu hóa Schema mặc định của WooCommerce là một thủ thuật nhỏ nhưng mang lại hiệu quả lớn trong việc làm sạch dữ liệu cấu trúc website. Nó giúp bạn loại bỏ hoàn toàn các cảnh báo “phiền toái” như thiếu aggregateRating hay shippingDetails trên Google Search Console, đồng thời mở đường cho việc cài đặt các giải pháp Schema chuyên nghiệp và tùy biến cao hơn.
Hy vọng hướng dẫn kỹ thuật này từ “Thủ Thuật” sẽ giúp bạn tối ưu hóa website tốt hơn. Nếu bạn gặp bất kỳ khó khăn nào trong quá trình xử lý file functions.php hoặc cấu hình plugin, đừng ngần ngại để lại bình luận bên dưới để được cộng đồng hỗ trợ nhé!











Discussion about this post