Schema & Structured Data

potentialAction

Thuộc tính schema.org mô tả hành động có thể thực hiện trên thực thể, thường dùng với SearchAction trong WebSite.

4 lượt xem Cập nhật: 31/05/2026

potentialAction là gì?

potentialAction là một thuộc tính chuẩn trong schema.org, dùng để mô tả hành động người dùng có thể thực hiện trên một thực thể (ví dụ: trang web, bài viết, sản phẩm). Đây không phải là hành động đã xảy ra, mà là hành động có thể xảy ra — như tìm kiếm, gọi điện, đặt hàng, hoặc chia sẻ.

Thuộc tính này thường xuất hiện trong các loại schema như WebSite, Organization, LocalBusiness, Product hoặc Article. Trong thực tế SEO, potentialAction hay được kết hợp với SearchAction để giúp công cụ tìm kiếm hiểu rõ chức năng tìm kiếm nội bộ của website.

Tại sao quan trọng trong SEO?

Khi bạn khai báo potentialAction đúng cách, bạn đang cung cấp tín hiệu rõ ràng cho Google và các công cụ tìm kiếm về khả năng tương tác của trang. Điều này hỗ trợ:

  • Tăng khả năng hiển thị Rich Result — đặc biệt với Search Box Rich Result (hộp tìm kiếm xuất hiện trực tiếp trong kết quả tìm kiếm);
  • Cải thiện trải nghiệm người dùng qua các đề xuất hành động (ví dụ: nút "Tìm trên trang" khi nhấn vào tên thương hiệu);
  • Hỗ trợ hệ thống hiểu ngữ cảnh trang tốt hơn, từ đó góp phần vào việc phân loại và xếp hạng chính xác hơn;
  • Phục vụ các nền tảng khác như Google Assistant, Bing Cortana hoặc ứng dụng di động tích hợp schema.

Lưu ý: Việc sử dụng potentialAction không trực tiếp nâng thứ hạng, nhưng là yếu tố hỗ trợ trải nghiệm tìm kiếm và có thể ảnh hưởng gián tiếp đến CTR và độ tin cậy của trang.

Cách hoạt động

potentialAction hoạt động như một “mô tả hành vi” gắn với một đối tượng schema. Khi công cụ tìm kiếm đọc markup, nó kiểm tra xem hành động nào có thể thực hiện trên thực thể đó — ví dụ:

  • Một trang WebSite có thể cho phép tìm kiếm nội bộ → dùng SearchAction;
  • Một trang LocalBusiness có thể cho phép gọi điện → dùng CallAction;
  • Một trang Product có thể cho phép đặt hàng → dùng OrderAction.

Các hành động này phải tuân thủ định dạng chuẩn của schema.org. Mỗi loại action đều yêu cầu các thuộc tính bắt buộc nhất định (ví dụ: target, query-input với SearchAction). Nếu thiếu, markup sẽ bị coi là không hợp lệ.

Hướng dẫn thực hiện

Dưới đây là các bước triển khai potentialAction chuẩn xác:

  1. Xác định mục tiêu: Chọn loại schema phù hợp (thường là WebSite cho trang chủ, hoặc Organization nếu muốn gắn hành động toàn cục);
  2. Chọn action phù hợp: Thường bắt đầu với SearchAction vì dễ triển khai và có giá trị SEO rõ ràng;
  3. Viết markup: Dùng JSON-LD (được Google ưu tiên), đặt trong thẻ <script type="application/ld+json"> ở phần <head> hoặc trước </body>;
  4. Kiểm tra kỹ thuật: Dùng Rich Results Test hoặc Schema Markup Validator để xác minh;
  5. Theo dõi hiệu quả: Kiểm tra báo cáo Enhancements > Search Appearance trong Google Search Console sau 3–7 ngày.

Lưu ý: Không cần thêm potentialAction cho mọi trang — chỉ nên triển khai ở trang chủ, trang danh mục lớn hoặc trang thương hiệu chính.

Lỗi thường gặp

Dưới đây là những sai lầm phổ biến và cách khắc phục:

Lỗi Dấu hiệu Cách sửa
Thiếu thuộc tính bắt buộc target trong SearchAction Rich Results Test báo lỗi "Missing field 'target'" Thêm "target": "https://example.com/search?q={search_term_string}"; đảm bảo URL chứa placeholder {search_term_string}
Sai định dạng query-input Markup bị cảnh báo “Invalid query-input format” Dùng đúng cú pháp: "query-input": "required name=search_term_string" (không viết hoa, không dấu cách thừa)
Đặt potentialAction trong schema sai loại Google không nhận diện được hộp tìm kiếm Chỉ đặt potentialAction trong @type: WebSite hoặc Organization — không đặt trong Article hoặc BreadcrumbList

Ví dụ thực tế

Dưới đây là đoạn JSON-LD chuẩn cho trang chủ với potentialAction kiểu SearchAction:

{
  "@context": "https://schema.org",
  "@type": "WebSite",
  "url": "https://example.com/",
  "name": "Tên Website",
  "potentialAction": {
    "@type": "SearchAction",
    "target": "https://example.com/search?q={search_term_string}",
    "query-input": "required name=search_term_string"
  }
}

Với ví dụ trên, Google có thể hiển thị ô tìm kiếm ngay dưới kết quả tìm kiếm khi người dùng gõ tên website. Một số trang Việt Nam đã áp dụng thành công gồm: VnExpress, Dân Trí (kiểm tra bằng Rich Results Test).

Lưu ý: Nếu website dùng đường dẫn tìm kiếm dạng POST hoặc có CAPTCHA, potentialAction vẫn có thể khai báo — nhưng Google chỉ hiển thị Rich Result nếu trang tìm kiếm trả về kết quả HTML tĩnh, có thể lập chỉ mục.

Câu hỏi thường gặp

potentialAction có làm tăng thứ hạng Google không?

Không. potentialAction không phải yếu tố xếp hạng. Nó chỉ hỗ trợ hiển thị Rich Result và cải thiện trải nghiệm tìm kiếm. Tác động gián tiếp đến thứ hạng nếu làm tăng CTR hoặc thời gian ở lại trang — nhưng mức độ ảnh hưởng tùy trường hợp.

Có thể dùng nhiều tiềm năng hành động cùng lúc không?

Có. Bạn có thể khai báo nhiều potentialAction trong cùng một schema — ví dụ vừa tìm kiếm, vừa gọi điện, vừa chia sẻ. Tuy nhiên, Google hiện chỉ hỗ trợ Rich Result cho SearchAction. Các action khác (như CallAction) chủ yếu phục vụ ứng dụng hoặc thiết bị thông minh.

Cần tối ưu gì thêm sau khi triển khai?

Sau khi triển khai, bạn nên kiểm tra: (1) Trang tìm kiếm có trả về kết quả chính xác và thân thiện với mobile không; (2) URL target phải trả về mã trạng thái HTTP 200 và có nội dung hữu ích; (3) Không chặn index trang tìm kiếm bằng robots.txt hoặc noindex. Nếu trang tìm kiếm bị chặn, Google sẽ không hiển thị Rich Result — điều này có thể thay đổi theo cấu hình server và CMS.