Tiện ích Tìm kiếm sơ đồ tri thức

Tiện ích tìm kiếm trong sơ đồ tri thức là một mô-đun JavaScript giúp bạn thêm chủ đề vào ô nhập dữ liệu trên trang web của mình. Người dùng bắt đầu nhập văn bản và tiện ích tìm các kết quả phù hợp khi nhập bằng API Tìm kiếm Sơ đồ tri thức.

Ví dụ về tiện ích tìm kiếm

Tính năng

  • Trên nhiều trình duyệt – mã được viết trong khung close (Đóng) trên nhiều trình duyệt và đã được thử nghiệm kỹ lưỡng, đồng thời được biên dịch thành JavaScript thuần túy.
  • Nhiều miền. Không cần máy chủ proxy nhờ JSONP.
  • Được lưu trữ trên các máy chủ của Google.
  • Miễn phí! (Có áp dụng Điều khoản tiêu chuẩn của Google API.)

Hãy dùng thử!

Tại sao bạn nên sử dụng Tiện ích tìm kiếm Sơ đồ tri thức?

  • Cho phép người dùng nhập ít dữ liệu hơn.
  • Giúp nhập dữ liệu dễ dàng và chính xác hơn.
  • Giảm tải cho người dùng về khả năng nhận thức bằng cách cung cấp hình ảnh và nội dung mô tả.
  • Tránh dùng tên trùng lặp cho cùng một pháp nhân: Puff Daddy, P. cả Diddy, cùng với Jason Combs đều đề cập đến /en/sean_combs.

Thêm Tiện ích tìm kiếm Sơ đồ tri thức vào trang web của bạn

Để thêm Tiện ích tìm kiếm Sơ đồ tri thức vào một trang, hãy thêm thông tin sau đây trong nguồn của trang web. Bạn cần sử dụng một Khoá API để tiện ích này có thể truy cập vào API Sơ đồ tri thức của Google.

Mã để đưa vào trang web của bạn

Đưa những thông tin sau vào <head> trong tài liệu HTML của bạn:

<link type="text/css" rel="stylesheet" href="https://www.gstatic.com/knowledge/kgsearch/widget/1.0/widget.min.css">
<style>
  .kge-search-picker {
    width: <DROPDOWN_MENU_WIDTH>;
  }
</style>
<script type="text/javascript" src="https://www.gstatic.com/knowledge/kgsearch/widget/1.0/widget.min.js"></script>

Sau đó, trong tài liệu <body>, hãy dùng trường nhập dữ liệu chứa mã nhận dạng để so khớp, chẳng hạn như:

<input type="text" id="myInput">
<script type="text/javascript">
  KGSearchWidget(<API_KEY>, document.getElementById("myInput"), {});
</script>

Lấy và sử dụng khoá API

Việc lấy khoá API cho phép ứng dụng của bạn thực hiện yêu cầu Đề xuất. Không có khoá API, thì tiện ích này sẽ không hoạt động. Nếu bạn chưa có khoá API, hãy làm theo hướng dẫn trên Trang Điều kiện tiên quyết để có một tài khoản.

Sau khi bạn có được khoá, hãy chuyển khoá đó đến Tiện ích tìm kiếm Sơ đồ tri thức bằng cách sử dụng mã như sau:

KGSearchWidget(<API_KEY>, document.getElementById("myInput"), {});

Định cấu hình tiện ích tìm kiếm

JavaScript có thể gọi KGSearchWidget() với một đối số thứ ba trống dưới dạng hiển thị ở trên. Hoặc bạn có thể sử dụng đối số thứ ba này để truyền vào một cấu hình , chỉ định các bộ lọc, quy tắc ràng buộc và trình xử lý sự kiện khác nhau.

Truyền một đối tượng config

Tiện ích Tìm kiếm trong Sơ đồ tri thức chấp nhận một tham số cấu hình không bắt buộc. Điều này cho phép bạn điền nhiều tuỳ chọn cấu hình vào một cấu trúc dữ liệu, rồi truyền nó vào tiện ích như trong ví dụ sau.

var config = {
  'limit': 10,
  'languages': ['en', 'fr'],
  'types': ['Person', 'Movie'],
  'maxDescChars': 100,
};
config['selectHandler'] = function(e) {
  alert(e.row.name + ' selected');
};
config['highlightHandler'] = function(e) {
  alert(e.row.name + ' highlighted');
};
KGSearchWidget(<API_KEY>, document.getElementById('myInput'), config);

Các lựa chọn về cấu hình

Bảng sau đây mô tả các tuỳ chọn cấu hình mà bạn có thể chuyển đến Tiện ích tìm kiếm Sơ đồ tri thức.

Tên Loại Mặc định Mô tả
ngôn ngữ Mảng(Chuỗi) Tiếng Anh Danh sách mã ngôn ngữ (được định nghĩa trong ISO 639-1) khiến tìm kiếm được thực hiện bằng tất cả các ngôn ngữ đã chỉ định. Kết quả được xếp hạng bằng ngôn ngữ đầu tiên được liệt kê và được hiển thị bằng ngôn ngữ đầu tiên trong danh sách có tên cho thực thể. Tiếng Anh có mức độ phù hợp cao nhất. Giá trị này rõ ràng được truyền đến API Tìm kiếm.
Ví dụ: nếu ngôn ngữ được đặt thành [fr, en], the widget will show descriptions for entities in the primary language, French, when possible. Otherwise, it will fall back to English as a secondary language.
giới hạn Số nguyên 20 Số kết quả tối đa trong trình đơn thả xuống.
loại Mảng(Chuỗi) Mọi loại Chỉ trả về các thực thể khớp với bất kỳ giá trị nào được cung cấp thực thể . Nếu tham số này bị bỏ qua, hàm sẽ trả về kết quả trùng khớp của bất kỳ loại thực thể nào.
maxDescChars Số nguyên Vé loại không giới hạn Số ký tự tối đa trong phần mô tả chi tiết của từng thực thể. Nội dung dài hơn maxDescChars sẽ bị cắt bớt.
selectHandler Chức năng rỗng Hàm callback để gọi khi một hàng được chọn. Đối số của hàm callback là một sự kiện và bao gồm thuộc tính row có chứa thông tin về hàng đã chọn. Xem Sử dụng trình xử lý sự kiện để xem ví dụ về cách sử dụng lệnh gọi lại này.
highlightHandler Chức năng rỗng Hàm callback được gọi khi người dùng di chuột qua hàng. Đối số của hàm callback là một sự kiện và bao gồm một Thuộc tính row chứa thông tin về hàng đã chọn.
Lưu ý rằng nhiều thiết bị (chẳng hạn như phần cứng di động có màn hình cảm ứng) không thể tạo sự kiện này.
Xem bài viết Sử dụng trình xử lý sự kiện để xem ví dụ về cách sử dụng lệnh gọi lại này.

Triển khai trình xử lý sự kiện

Tiện ích tìm kiếm trong Sơ đồ tri thức kích hoạt các sự kiện sau trong ngữ cảnh của đầu vào mà nó được khởi tạo cùng. Bạn có thể cung cấp lệnh gọi lại các hàm trong đối tượng cấu hình để triển khai cho các sự kiện này.

selectHandler – Sự kiện này được kích hoạt khi người dùng chọn một mục từ danh sách Đề xuất. Sự kiện đi kèm với một đối tượng dữ liệu mà trong đó event.row là dữ liệu của hàng đã chọn. event.row.nameevent.row.id đại diện cho tên và Mã của mặt hàng đã chọn. Đoạn mã sau đây hướng dẫn bạn cách kiểm thử selectHandler có.

KGSearchWidget(<API_KEY>, document.getElementById("myInput"), {
  "selectHandler": function(e) {
    alert("selected " + e.row.name);
  }
});

highlightHandler – Sự kiện này được kích hoạt khi một mục được làm nổi bật khi người dùng di chuột lên đó. Đoạn mã sau đây minh hoạ cách bạn có thể thử nghiệm những gì highlightHandler có.

KGSearchWidget(<API_KEY>, document.getElementById("myInput"), {
  "highlightHandler": function(e) {
    alert("highlighted " + e.row.name);
  }
});

Trợ giúp và phản hồi

Nếu bạn có thắc mắc, báo cáo lỗi hoặc ý kiến phản hồi về API Tìm kiếm sơ đồ tri thức, hãy sử dụng Diễn đàn trợ giúp.