Programmable Search Element Control API

คุณฝังคอมโพเนนต์ของ Programmable Search Engine (ช่องค้นหาและหน้าผลการค้นหา) ในหน้าเว็บและเว็บแอปพลิเคชันอื่นๆ ได้โดยใช้มาร์กอัป HTML องค์ประกอบ Programmable Search Engine เหล่านี้ประกอบด้วยคอมโพเนนต์ที่แสดงผลตามการตั้งค่าที่จัดเก็บไว้โดย เซิร์ฟเวอร์ Programmable Search พร้อมกับการปรับแต่งที่คุณทำ

ระบบจะโหลด JavaScript ทั้งหมดแบบไม่พร้อมกัน ซึ่งจะช่วยให้หน้าเว็บโหลดต่อไปได้ในขณะที่เบราว์เซอร์ดึงข้อมูล JavaScript ของ Programmable Search Engine

บทนำ

เอกสารนี้มีโมเดลพื้นฐานสำหรับการเพิ่มองค์ประกอบ Programmable Search Engine ลงในหน้าเว็บ พร้อมคำอธิบายเกี่ยวกับคอมโพเนนต์ที่กำหนดค่าได้และ JavaScript API ที่ยืดหยุ่นขององค์ประกอบ

ขอบเขต

เอกสารนี้อธิบายวิธีใช้ฟังก์ชันและพร็อพเพอร์ตี้ที่เฉพาะเจาะจงสำหรับ Programmable Search Engine Control API

ความเข้ากันได้กับเบราว์เซอร์

ดูรายการเบราว์เซอร์ที่ Programmable Search Engine รองรับได้ที่นี่

ผู้ชม

เอกสารนี้มีไว้สำหรับนักพัฒนาซอฟต์แวร์ที่ต้องการเพิ่มฟังก์ชัน Google Programmable Search ลงในหน้าเว็บของตน

องค์ประกอบ Programmable Search

คุณใช้มาร์กอัป HTML เพื่อเพิ่มองค์ประกอบ Programmable Search ลงในหน้าเว็บได้ แต่ละองค์ประกอบ ประกอบด้วยคอมโพเนนต์อย่างน้อย 1 รายการ ได้แก่ ช่องค้นหา บล็อกผลการค้นหา หรือทั้ง 2 อย่าง ช่องค้นหายอมรับข้อมูลจากผู้ใช้ในรูปแบบต่อไปนี้

  • คำค้นหาที่พิมพ์ในช่องป้อนข้อความ
  • สตริงการค้นหาที่ฝังอยู่ใน URL
  • การดำเนินการแบบเป็นโปรแกรม

นอกจากนี้ บล็อกผลการค้นหายังรับอินพุตใน วิธีต่อไปนี้ด้วย

  • สตริงการค้นหาที่ฝังอยู่ใน URL
  • การดำเนินการแบบเป็นโปรแกรม

องค์ประกอบ Programmable Search ประเภทต่อไปนี้พร้อมให้ใช้งาน

ประเภทองค์ประกอบ คอมโพเนนต์ คำอธิบาย
มาตรฐาน <div class="gcse-search"> ช่องค้นหาและผลการค้นหา แสดงใน<div>เดียวกัน
2 คอลัมน์ <div class="gcse-searchbox"> และ <div class="gcse-searchresults"> เลย์เอาต์ 2 คอลัมน์ที่มีผลการค้นหาอยู่ด้านหนึ่งและช่องค้นหา อยู่อีกด้านหนึ่ง หากวางแผนที่จะแทรกองค์ประกอบหลายรายการในโหมด 2 คอลัมน์ ในหน้าเว็บ คุณสามารถใช้แอตทริบิวต์ gname เพื่อจับคู่ช่องค้นหากับบล็อกผลการค้นหาได้
searchbox-only <div class="gcse-searchbox-only"> ช่องค้นหาแบบสแตนด์อโลน
searchresults-only <div class="gcse-searchresults-only"> บล็อกผลการค้นหาแบบสแตนด์อโลน

คุณเพิ่มองค์ประกอบการค้นหาที่ถูกต้องกี่รายการก็ได้ลงในหน้าเว็บ สำหรับโหมด 2 คอลัมน์ จะต้องมีคอมโพเนนต์ที่จำเป็นทั้งหมด (ช่องค้นหาและบล็อกผลการค้นหา )

ตัวอย่างองค์ประกอบการค้นหาแบบง่ายมีดังนี้

<!-- Put the following javascript before the closing </head> tag
and replace 123456 with your own Programmable Search Engine ID. -->
<script async src="https://cse.google.com/cse.js?cx=123456"></script>

<!-- Place this tag where you want both of the search box and the search results to render -->
<div class="gcse-search"></div>

สร้างตัวเลือกเลย์เอาต์ต่างๆ โดยใช้ Programmable Search Elements

ตัวเลือกเลย์เอาต์ต่อไปนี้พร้อมใช้งานในหน้า "รูปลักษณ์" ของแผงควบคุมเครื่องมือค้นหาที่โปรแกรมได้ ต่อไปนี้เป็นหลักเกณฑ์ทั่วไปเกี่ยวกับการจัดวางตัวเลือกเลย์เอาต์โดยใช้องค์ประกอบของ Programmable Search หากต้องการดูการสาธิตตัวเลือกใดตัวเลือกหนึ่งเหล่านี้ ให้คลิกลิงก์

ตัวเลือก คอมโพเนนต์
เต็มความกว้าง <div class="gcse-search">
กะทัดรัด <div class="gcse-search">
2 คอลัมน์ <div class="gcse-searchbox">, <div class="gcse-searchresults">
2 หน้า <div class="gcse-searchbox-only"> ในหน้าแรก <div class="gcse-searchresults-only"> (หรือคอมโพเนนต์อื่นๆ) ในหน้าที่ 2
ผลการค้นหาเท่านั้น <div class="gcse-searchresults-only">
โฮสต์โดย Google <div class="gcse-searchbox-only">

ข้อมูลเพิ่มเติมเกี่ยวกับตัวเลือกเลย์เอาต์

การปรับแต่งองค์ประกอบ Programmable Search

หากต้องการปรับแต่งสี แบบอักษร หรือสไตล์ลิงก์ ให้ไปที่หน้า "รูปลักษณ์" ของเครื่องมือค้นหาที่ตั้งโปรแกรมได้

คุณสามารถใช้แอตทริบิวต์ที่ไม่บังคับเพื่อเขียนทับการกำหนดค่าที่สร้างขึ้นในแผงควบคุม Programmable Search Engine ซึ่งจะช่วยให้คุณสร้างประสบการณ์การค้นหาเฉพาะหน้าได้ ตัวอย่างเช่น โค้ดต่อไปนี้จะสร้างช่องค้นหาที่เปิดหน้าผลการค้นหา (http://www.example.com?search=lady+gaga) ในหน้าต่างใหม่ ค่าของแอตทริบิวต์ queryParameterName พร้อมกับสตริงคำค้นหาของผู้ใช้ จะใช้เพื่อสร้าง URL ของผลการค้นหา

โปรดทราบว่าแอตทริบิวต์ queryParameterName มีคำนำหน้าเป็น data- แอตทริบิวต์ทั้งหมดต้องมีคำนำหน้านี้

<div class="gcse-searchbox-only" data-resultsUrl="http://www.example.com" data-newWindow="true" data-queryParameterName="search">

หากใช้แผงควบคุม Programmable Search Engine เพื่อเปิดใช้ฟีเจอร์ต่างๆ เช่น การเติมข้อความอัตโนมัติหรือการปรับแต่ง คุณจะใช้แอตทริบิวต์เพื่อ ปรับแต่งฟีเจอร์เหล่านั้นได้ การปรับแต่งที่คุณระบุโดยใช้แอตทริบิวต์เหล่านี้ จะลบล้างการตั้งค่าที่ทำในแผงควบคุม ตัวอย่างต่อไปนี้สร้าง องค์ประกอบการค้นหาแบบ 2 คอลัมน์ที่มีฟีเจอร์ต่อไปนี้

  • เปิดใช้การจัดการประวัติแล้ว
  • ระบบจะตั้งค่าจำนวนการเติมข้อความอัตโนมัติที่แสดงสูงสุดเป็น 5 รายการ
  • การปรับแต่งจะแสดงเป็นลิงก์

<div class="gcse-searchbox" data-enableHistory="true" data-autoCompleteMaxCompletions="5">
<div class="gcse-searchresults" data-refinementStyle="link">

แอตทริบิวต์ที่รองรับ

แอตทริบิวต์ ประเภท คำอธิบาย ส่วนประกอบ
ทั่วไป
gname สตริง (ไม่บังคับ) ชื่อสำหรับออบเจ็กต์ Search Element ชื่อใช้เพื่อดึงข้อมูล คอมโพเนนต์ที่เชื่อมโยงตามชื่อ หรือเพื่อจับคู่searchbox คอมโพเนนต์กับคอมโพเนนต์ searchresults หากไม่ได้ระบุไว้ Programmable Search Engine จะสร้าง gname โดยอัตโนมัติโดยอิงตาม ลำดับของคอมโพเนนต์ในหน้าเว็บ เช่น searchbox-only แรกที่ไม่มีชื่อมี gname "searchbox-only0" และรายการที่สองมี gname "seachbox-only1" และอื่นๆ โปรดทราบว่า gname ที่สร้างขึ้นโดยอัตโนมัติสำหรับคอมโพเนนต์ใน เลย์เอาต์ 2 คอลัมน์จะเป็น two-column ตัวอย่างต่อไปนี้ ใช้ gname storesearch เพื่อลิงก์คอมโพเนนต์ searchbox กับคอมโพเนนต์ searchresults
<div class="gcse-searchbox" data-gname="storesearch"></div>
<div class="gcse-searchresults" data-gname="storesearch"></div>

เมื่อดึงข้อมูลออบเจ็กต์ หากมีคอมโพเนนต์มากกว่า 1 รายการที่มี gname เหมือนกัน Programmable Search Engine จะใช้คอมโพเนนต์สุดท้ายในหน้า

ตามแต่ละประเทศ
autoSearchOnLoad บูลีน ระบุว่าจะดำเนินการค้นหาตามคำค้นหาที่ฝังอยู่ใน URL ของหน้าที่กำลังโหลดหรือไม่ โปรดทราบว่าต้องมีสตริงการค้นหาใน URL จึงจะดำเนินการค้นหาอัตโนมัติได้ ค่าเริ่มต้น: true ตามแต่ละประเทศ
enableHistory บูลีน หาก true จะเปิดใช้การจัดการประวัติสำหรับปุ่มย้อนกลับ และไปข้างหน้าของเบราว์เซอร์ ดูการสาธิต

ช่องค้นหา

searchbox-only

queryParameterName สตริง ชื่อพารามิเตอร์การค้นหา เช่น q (ค่าเริ่มต้น) หรือ query โดยจะฝังอยู่ใน URL (เช่น http://www.example.com?q=lady+gaga) โปรดทราบว่าการระบุ ชื่อพารามิเตอร์การค้นหาเพียงอย่างเดียวจะไม่ทริกเกอร์การค้นหาอัตโนมัติเมื่อโหลด ต้องมีสตริงคำค้นหา ใน URL เพื่อเรียกใช้การค้นหาอัตโนมัติ ตามแต่ละประเทศ
resultsUrl URL URL ของหน้าผลลัพธ์ (ค่าเริ่มต้นคือหน้าเว็บที่ Google โฮสต์) searchbox-only
newWindow บูลีน ระบุว่าหน้าผลการค้นหาจะเปิดในหน้าต่างใหม่หรือไม่ ค่าเริ่มต้น: false searchbox-only
ivt บูลีน

พารามิเตอร์นี้ช่วยให้คุณระบุบูลีนที่แจ้งให้ Google ทราบว่าคุณต้องการอนุญาต โฆษณาที่ใช้คุกกี้และพื้นที่เก็บข้อมูลในเครื่องที่มีไว้สำหรับการเข้าชมที่ไม่ถูกต้องเท่านั้นทั้งในการเข้าชมที่ได้รับและ ไม่ได้รับความยินยอม

true เมื่อไม่มีพารามิเตอร์นี้หรือคุณตั้งค่าเป็น "true" เราจะตั้งค่า คุกกี้ที่มีไว้สำหรับการเข้าชมที่ไม่ถูกต้องเท่านั้นและใช้พื้นที่เก็บข้อมูลในเครื่องในการเข้าชมที่ได้รับความยินยอมเท่านั้น

false เมื่อคุณตั้งค่าพารามิเตอร์นี้เป็น "false" เราจะตั้งค่าคุกกี้ที่มีไว้สำหรับการเข้าชมที่ไม่ถูกต้องเท่านั้น และใช้พื้นที่เก็บข้อมูลในเครื่องทั้งในการเข้าชมที่ได้รับและไม่ได้รับความยินยอม

ค่าเริ่มต้น: false

ตัวอย่างการใช้งาน: <div class="gcse-search" data-ivt="true"></div>

searchresults

searchresults-only

mobileLayout สตริง

ระบุว่าควรใช้รูปแบบเลย์เอาต์สำหรับอุปกรณ์เคลื่อนที่กับอุปกรณ์เคลื่อนที่หรือไม่

enabled ใช้เลย์เอาต์สำหรับอุปกรณ์เคลื่อนที่กับอุปกรณ์เคลื่อนที่เท่านั้น

disabled ไม่ใช้เลย์เอาต์สำหรับอุปกรณ์เคลื่อนที่ในอุปกรณ์ใดๆ

forced ใช้เลย์เอาต์สำหรับอุปกรณ์เคลื่อนที่ในอุปกรณ์ทั้งหมด

ค่าเริ่มต้น: enabled

ตัวอย่างการใช้งาน: <div class="gcse-search" data-mobileLayout="disabled"></div>

ตามแต่ละประเทศ
เติมข้อความอัตโนมัติ
enableAutoComplete บูลีน ใช้ได้เฉพาะในกรณีที่เปิดใช้การเติมข้อความอัตโนมัติในแผงควบคุม Programmable Search Engine true เปิดใช้การเติมข้อความอัตโนมัติ ตามแต่ละประเทศ
autoCompleteMaxCompletions จำนวนเต็ม จำนวนการเติมข้อความอัตโนมัติสูงสุดที่จะแสดง

ช่องค้นหา

searchbox-only

autoCompleteMaxPromotions จำนวนเต็ม จำนวนโปรโมชันสูงสุดที่จะแสดงในการเติมข้อความอัตโนมัติ

ช่องค้นหา

searchbox-only

autoCompleteValidLanguages สตริง รายการภาษาที่คั่นด้วยคอมมาซึ่งควรเปิดใช้การเติมข้อความอัตโนมัติ ภาษาที่รองรับ

ช่องค้นหา

searchbox-only

การปรับแต่ง
defaultToRefinement สตริง ใช้ได้เฉพาะในกรณีที่สร้างการปรับแต่งใน แผงควบคุม Programmable Search Engine ระบุป้ายกำกับการปรับแต่งเริ่มต้นที่จะ แสดง หมายเหตุ: เลย์เอาต์ที่ Google โฮสต์ไม่รองรับแอตทริบิวต์นี้ ตามแต่ละประเทศ
refinementStyle สตริง ค่าที่ยอมรับคือ tab (ค่าเริ่มต้น) และ link link จะรองรับเฉพาะในกรณีที่ปิดใช้การค้นหารูปภาพ หรือในกรณีที่ เปิดใช้การค้นหารูปภาพแต่ปิดใช้การค้นเว็บ

searchresults

searchresults-only

ค้นหารูปภาพ
enableImageSearch บูลีน ใช้ได้เฉพาะในกรณีที่เปิดใช้ การค้นหารูปภาพในแผงควบคุม Programmable Search Engine

หาก true จะเปิดใช้การค้นหารูปภาพ ผลการค้นหารูปภาพจะแสดงใน แท็บแยกต่างหาก

searchresults

searchresults-only

defaultToImageSearch บูลีน ใช้ได้เฉพาะในกรณีที่เปิดใช้ การค้นหารูปภาพในแผงควบคุม Programmable Search Engine

หาก true หน้าผลการค้นหาจะแสดงผลการค้นหารูปภาพ โดยค่าเริ่มต้น ผลการค้นหาบนเว็บจะพร้อมใช้งานในแท็บแยกต่างหาก

ตามแต่ละประเทศ
imageSearchLayout สตริง ใช้ได้เฉพาะในกรณีที่เปิดใช้ การค้นหารูปภาพในแผงควบคุม Programmable Search Engine

ระบุเลย์เอาต์ของหน้าผลการค้นหารูปภาพ ค่าที่ยอมรับคือ classic, column หรือ popup

searchresults

searchresults-only

imageSearchResultSetSize จำนวนเต็ม สตริง ใช้ได้เฉพาะในกรณีที่เปิดใช้ การค้นหารูปภาพในแผงควบคุม Programmable Search Engine

ระบุขนาดสูงสุดของชุดผลการค้นหาสำหรับการค้นหารูปภาพ เช่น large, small, filtered_cse, 10

ตามแต่ละประเทศ
image_as_filetype สตริง ใช้ได้เฉพาะในกรณีที่เปิดใช้ การค้นหารูปภาพในแผงควบคุม Programmable Search Engine

จำกัดผลลัพธ์เฉพาะไฟล์ที่มีนามสกุลที่ระบุ

นามสกุลที่รองรับคือ jpg, gif, png, bmp, svg, webp, ico, raw

ตามแต่ละประเทศ

image_as_oq สตริง ใช้ได้เฉพาะในกรณีที่เปิดใช้ การค้นหารูปภาพในแผงควบคุม Programmable Search Engine

กรองผลการค้นหาโดยใช้ Logical OR

ตัวอย่างการใช้งานหากต้องการผลการค้นหาที่มี "คำที่ 1" หรือ "คำที่ 2"<div class="gcse-search" data-image_as_oq="term1 term2"></div>

ตามแต่ละประเทศ

image_as_rights สตริง ใช้ได้เฉพาะในกรณีที่เปิดใช้ การค้นหารูปภาพในแผงควบคุม Programmable Search Engine

ตัวกรองตามการอนุญาตให้ใช้สิทธิ

ค่าที่รองรับคือ cc_publicdomain, cc_attribute, cc_sharealike, cc_noncommercial, cc_nonderived และค่าผสมของค่าเหล่านี้

ดูชุดค่าผสมทั่วไป

ตามแต่ละประเทศ

image_as_sitesearch สตริง ใช้ได้เฉพาะในกรณีที่เปิดใช้ การค้นหารูปภาพในแผงควบคุม Programmable Search Engine

จำกัดผลลัพธ์ให้แสดงเฉพาะหน้าเว็บจากเว็บไซต์ที่เฉพาะเจาะจง

ตัวอย่างการใช้งาน: <div class="gcse-search" data-image_as_sitesearch="example.com"></div>

ตามแต่ละประเทศ

image_colortype สตริง ใช้ได้เฉพาะในกรณีที่เปิดใช้ การค้นหารูปภาพในแผงควบคุม Programmable Search Engine

จำกัดการค้นหาเฉพาะรูปภาพขาวดำ (โมโน) โทนสีเทา หรือสี ค่าที่รองรับคือ mono, gray, color

ตามแต่ละประเทศ

image_cr สตริง ใช้ได้เฉพาะในกรณีที่เปิดใช้ การค้นหารูปภาพในแผงควบคุม Programmable Search Engine

จำกัดผลการค้นหาเฉพาะเอกสารที่มาจากประเทศที่กำหนดไว้เท่านั้น

ค่าที่รองรับ

ตามแต่ละประเทศ

image_dominantcolor สตริง ใช้ได้เฉพาะในกรณีที่เปิดใช้ การค้นหารูปภาพในแผงควบคุม Programmable Search Engine

จำกัดการค้นหาเฉพาะรูปภาพที่มีสีเด่นที่เฉพาะเจาะจง ค่าที่รองรับคือ red, orange, yellow, green, teal, blue, purple, pink, white, gray, black, brown

ตามแต่ละประเทศ

image_filter สตริง ใช้ได้เฉพาะในกรณีที่เปิดใช้ การค้นหารูปภาพในแผงควบคุม Programmable Search Engine

การกรองอัตโนมัติของผลการค้นหา

ค่าที่รองรับ: 0/1

ตัวอย่างการใช้งาน: <div class="gcse-search" data-image_filter="0"></div>

ตามแต่ละประเทศ

image_gl สตริง ใช้ได้เฉพาะในกรณีที่เปิดใช้ การค้นหารูปภาพในแผงควบคุม Programmable Search Engine เพิ่มผลการค้นหาที่มีประเทศต้นทางตรงกับค่าพารามิเตอร์

ค่าที่รองรับ

ตามแต่ละประเทศ

image_size สตริง ใช้ได้เฉพาะในกรณีที่เปิดใช้ การค้นหารูปภาพในแผงควบคุม Programmable Search Engine

แสดงรูปภาพที่มีขนาดที่ระบุ โดยขนาดอาจเป็นค่าใดค่าหนึ่งต่อไปนี้ icon, small, medium, large, xlarge, xxlarge หรือ huge.

ตามแต่ละประเทศ

image_sort_by สตริง ใช้ได้เฉพาะในกรณีที่เปิดใช้ การค้นหารูปภาพในแผงควบคุม Programmable Search Engine

จัดเรียงผลลัพธ์โดยใช้วันที่หรือเนื้อหาที่มีโครงสร้างอื่นๆ

หากต้องการจัดเรียงตามความเกี่ยวข้อง ให้ใช้สตริงว่าง (image_sort_by="")

ตัวอย่างการใช้งาน: <div class="gcse-search" data-image_sort_by="date"></div>

ตามแต่ละประเทศ

image_type สตริง ใช้ได้เฉพาะในกรณีที่เปิดใช้ การค้นหารูปภาพในแผงควบคุม Programmable Search Engine

จำกัดการค้นหาเฉพาะรูปภาพประเภทใดประเภทหนึ่ง ค่าที่รองรับคือ clipart (คลิปอาร์ต), face (ใบหน้าของผู้คน), lineart (ภาพวาดลายเส้น), stock (ภาพสต็อก), photo (ภาพถ่าย) และ animated (GIF แบบเคลื่อนไหว)

ตามแต่ละประเทศ

การค้นหาในเว็บ
disableWebSearch บูลีน หาก true จะปิดใช้การค้นเว็บ โดยปกติจะใช้เฉพาะในกรณีที่ เปิดใช้การค้นหารูปภาพในแผงควบคุม Programmable Search Engine

searchresults

searchresults-only

webSearchQueryAddition สตริง เพิ่มคำอื่นๆ ในคำค้นหาโดยใช้ Logical OR

ตัวอย่างการใช้งาน: <div class="gcse-search" data-webSearchQueryAddition="term1 term2"></div>

ตามแต่ละประเทศ
webSearchResultSetSize จำนวนเต็ม สตริง ขนาดสูงสุดของชุดผลลัพธ์ ใช้ได้กับ ทั้งการค้นหารูปภาพและการค้นเว็บ ค่าเริ่มต้นจะขึ้นอยู่กับเลย์เอาต์และ ไม่ว่า Programmable Search Engine จะได้รับการกำหนดค่าให้ค้นหาทั้งเว็บหรือเฉพาะเว็บไซต์ที่ระบุ ค่าที่ยอมรับมีดังนี้
  • จำนวนเต็มตั้งแต่ 1-20
  • small: ขอชุดผลลัพธ์ขนาดเล็ก โดยปกติคือ 4 ผลลัพธ์ ต่อหน้า
  • large: ขอชุดผลลัพธ์ขนาดใหญ่ โดยปกติคือ 8 รายการต่อหน้า
  • filtered_cse: ขอผลลัพธ์ได้สูงสุด 10 รายการต่อหน้า โดยมีหน้าเว็บสูงสุด 10 หน้าหรือผลลัพธ์ 100 รายการ
ตามแต่ละประเทศ
webSearchSafesearch สตริง ระบุว่าได้เปิดใช้ SafeSearch สำหรับผลการค้นหาบนเว็บหรือไม่ ค่าที่ยอมรับคือ off และ active ตามแต่ละประเทศ
as_filetype สตริง จำกัดผลลัพธ์เฉพาะไฟล์ที่มีนามสกุลที่ระบุ ดูรายการประเภทไฟล์ที่ Google จัดทำดัชนีได้ในศูนย์ช่วยเหลือของ Search Console

ตามแต่ละประเทศ

as_oq สตริง กรองผลการค้นหาโดยใช้ Logical OR

ตัวอย่างการใช้งานหากต้องการผลการค้นหาที่มี "คำที่ 1" หรือ "คำที่ 2"<div class="gcse-search" data-as_oq="term1 term2"></div>

ตามแต่ละประเทศ
as_rights สตริง ตัวกรองตามการอนุญาตให้ใช้สิทธิ

ค่าที่รองรับคือ cc_publicdomain, cc_attribute, cc_sharealike, cc_noncommercial, cc_nonderived และค่าผสมของค่าเหล่านี้

ดูชุดค่าผสมทั่วไปได้ที่ https://wiki.creativecommons.org/wiki/CC_Search_integration

ตามแต่ละประเทศ

as_sitesearch สตริง จำกัดผลลัพธ์ให้แสดงเฉพาะหน้าเว็บจากเว็บไซต์ที่เฉพาะเจาะจง

ตัวอย่างการใช้งาน: <div class="gcse-search" data-as_sitesearch="example.com"></div>

ตามแต่ละประเทศ
cr สตริง จำกัดผลการค้นหาเฉพาะเอกสารที่มาจากประเทศที่กำหนดไว้เท่านั้น

ค่าที่รองรับ

ตัวอย่างการใช้งาน: <div class="gcse-search" data-cr="countryFR"></div>

ตามแต่ละประเทศ
filter สตริง การกรองอัตโนมัติของผลการค้นหา

ค่าที่รองรับ: 0/1

ตัวอย่างการใช้งาน: <div class="gcse-search" data-filter="0"></div>

ตามแต่ละประเทศ
gl สตริง เพิ่มผลการค้นหาที่มีประเทศต้นทางตรงกับค่าพารามิเตอร์

ซึ่งจะใช้ได้เมื่อใช้ร่วมกับการตั้งค่าค่าภาษาเท่านั้น

ค่าที่รองรับ

ตัวอย่างการใช้งาน: <div class="gcse-search" data-gl="fr"></div>

ตามแต่ละประเทศ
lr สตริง จำกัดผลการค้นหาเฉพาะเอกสารที่เขียนในภาษาที่กำหนดไว้เท่านั้น

ค่าที่รองรับ

ตัวอย่างการใช้งาน: <div class="gcse-search" data-lr="lang_fr"></div>

ตามแต่ละประเทศ
sort_by สตริง จัดเรียงผลลัพธ์โดยใช้วันที่หรือเนื้อหาที่มีโครงสร้างอื่นๆ ค่าแอตทริบิวต์ต้องเป็นหนึ่งในตัวเลือกที่ระบุในการตั้งค่าการจัดเรียงผลลัพธ์ของเครื่องมือค้นหาที่ตั้งโปรแกรมได้

หากต้องการจัดเรียงตามความเกี่ยวข้อง ให้ใช้สตริงว่าง (sort_by="")

ตัวอย่างการใช้งาน: <div class="gcse-search" data-sort_by="date"></div>

ตามแต่ละประเทศ
ผลการค้นหา
enableOrderBy บูลีน เปิดใช้การจัดเรียงผลลัพธ์ตามความเกี่ยวข้อง วันที่ หรือป้ายกำกับ ตามแต่ละประเทศ
linkTarget สตริง ตั้งค่าเป้าหมายลิงก์ ค่าเริ่มต้น: _blank

searchresults

searchresults-only

noResultsString สตริง ระบุข้อความเริ่มต้นที่จะแสดงเมื่อไม่พบผลการค้นหาตามคำค้นหา คุณใช้สตริงผลลัพธ์เริ่มต้นเพื่อแสดงสตริงที่แปลเป็นภาษาท้องถิ่นในทุกภาษาที่รองรับได้ แต่สตริงที่กำหนดเองจะทำไม่ได้

searchresults

searchresults-only

resultSetSize จำนวนเต็ม สตริง ขนาดสูงสุดของชุดผลลัพธ์ เช่น large small, filtered_cse, 10 ค่าเริ่มต้นจะขึ้นอยู่กับเลย์เอาต์และกำหนดค่าเครื่องมือให้ค้นหา ทั้งเว็บหรือเฉพาะเว็บไซต์ที่ระบุ ตามแต่ละประเทศ
safeSearch สตริง ระบุว่าเปิดใช้ ฟีเจอร์ค้นหาปลอดภัยสำหรับการค้นหาทั้งในเว็บและรูปภาพหรือไม่ ค่าที่ยอมรับคือ off และ active ตามแต่ละประเทศ

การติดต่อกลับ

แผนภาพลำดับการเรียกกลับ
แผนภาพลำดับของ Callback จาก JavaScript ของ Search Element

Callback รองรับการควบคุมโดยละเอียดของการเริ่มต้นองค์ประกอบการค้นหาและกระบวนการค้นหา โดยจะลงทะเบียนกับ JavaScript ขององค์ประกอบการค้นหาผ่านออบเจ็กต์ส่วนกลาง __gcse ลงทะเบียนการเรียกกลับแสดงการลงทะเบียนการเรียกกลับที่รองรับทั้งหมด

ลงทะเบียนการเรียกกลับ

  window.__gcse = {
    parsetags: 'explicit', // Defaults to 'onload'
    initializationCallback: myInitializationCallback,
    searchCallbacks: {
      image: {
        starting: myImageSearchStartingCallback,
        ready: myImageResultsReadyCallback,
        rendered: myImageResultsRenderedCallback,
      },
      web: {
        starting: myWebSearchStartingCallback,
        ready: myWebResultsReadyCallback,
        rendered: myWebResultsRenderedCallback,
      },
    },
  };
  

การเรียกกลับการเริ่มต้น

ระบบจะเรียกใช้การเรียกกลับการเริ่มต้นก่อนที่ JavaScript ของ Search Element จะแสดงผลองค์ประกอบ search ใน DOM หากตั้งค่า parsetags เป็น explicit ใน __gcse JavaScript ของ Search Element จะปล่อยให้การแสดงผล Search Element เป็นหน้าที่ของ Callback การเริ่มต้น (ดังที่แสดงในลงทะเบียน Callback) ซึ่งอาจใช้เพื่อเลือกองค์ประกอบที่จะแสดงผล หรือเพื่อเลื่อนการแสดงผลองค์ประกอบจนกว่าจะจำเป็น นอกจากนี้ยังลบล้างแอตทริบิวต์ขององค์ประกอบได้ด้วย เช่น เปลี่ยนช่องค้นหาที่กำหนดค่าผ่านแผงควบคุมหรือแอตทริบิวต์ HTML ให้เป็นค่าเริ่มต้นสำหรับการค้นหาเว็บเป็นช่องค้นหารูปภาพ หรือระบุว่าคําค้นหาที่ส่งผ่านแบบฟอร์มเครื่องมือค้นหาที่โปรแกรมได้จะดำเนินการในองค์ประกอบ searchresults-only ดูการสาธิต

บทบาทของโปรแกรมเรียกกลับการเริ่มต้นจะควบคุมโดยค่าของพร็อพเพอร์ตี้ parsetags ของ __gcse

  • หากค่าเป็น onload JavaScript ของ Search Element จะแสดงผล Search Element ทั้งหมดในหน้าเว็บโดยอัตโนมัติ ระบบจะยังเรียกใช้การเรียกกลับการเริ่มต้น แต่การเรียกกลับนี้จะไม่มีหน้าที่ในการแสดงผล Search Elements
  • หากค่าเป็น explicit JavaScript ของ Search Element จะไม่แสดงผล Search Element โดยการเรียกกลับอาจแสดงผลแบบเลือกโดยใช้ฟังก์ชัน render() หรือแสดงผล Search Element ทั้งหมดด้วยฟังก์ชัน go()

โค้ดต่อไปนี้แสดงวิธีแสดงผลช่องค้นหาพร้อมกับผลการค้นหาใน div โดยใช้แท็ก explicit และการเรียกกลับการเริ่มต้น

ตัวอย่างการเรียกกลับการเริ่มต้น

เราต้องใส่ <div> ที่มีค่ารหัส ในตำแหน่งที่เราต้องการให้โค้ด Search Element อยู่

    <div id="test"></div>
เพิ่ม JavaScript นี้หลัง <div> โปรดทราบว่า อ้างอิงถึง test ซึ่งเป็น id ที่เราใช้เพื่อระบุ <div>
const myInitCallback = function() {
  if (document.readyState == 'complete') {
    // Document is ready when Search Element is initialized.
    // Render an element with both search box and search results in div with id 'test'.
    google.search.cse.element.render(
        {
          div: "test",
          tag: 'search'
         });
  } else {
    // Document is not ready yet, when Search Element is initialized.
    google.setOnLoadCallback(function() {
       // Render an element with both search box and search results in div with id 'test'.
        google.search.cse.element.render(
            {
              div: "test",
              tag: 'search'
            });
    }, true);
  }
};

// Insert it before the Search Element code snippet so the global properties like parsetags and callback
// are available when cse.js runs.
window.__gcse = {
  parsetags: 'explicit',
  initializationCallback: myInitCallback
};

ใส่ HTML นี้เพื่อเริ่มโหลดองค์ประกอบการค้นหา แทนที่ค่า cx ใน ข้อ src ด้วยค่า cx ของคุณเอง

<script async
  src="https://cse.google.com/cse.js?cx=000888210889775888983:y9tkcjel090"></script>

การเรียกกลับของ Search

JavaScript ขององค์ประกอบการค้นหารองรับ Callback 6 รายการที่ทำงานในโฟลว์การควบคุมการค้นหา การเรียกกลับของการค้นหาจะมาเป็นคู่ ซึ่งเป็นการเรียกกลับของการค้นหาเว็บและการเรียกกลับของการค้นหารูปภาพที่ตรงกัน

  • การค้นหาเริ่มต้น
    • สำหรับการค้นหารูปภาพ
    • สำหรับการค้นหาบนเว็บ
  • ผลลัพธ์พร้อมแล้ว
    • สำหรับการค้นหารูปภาพ
    • สำหรับการค้นหาบนเว็บ
  • ผลการค้นหาที่แสดง
    • สำหรับการค้นหารูปภาพ
    • สำหรับการค้นหาบนเว็บ

เช่นเดียวกับการเรียกกลับการเริ่มต้น การเรียกกลับการค้นหาจะได้รับการกำหนดค่าโดยใช้รายการในออบเจ็กต์ __gcse เหตุการณ์นี้จะเกิดขึ้นเมื่อ JavaScript ของ Search Element เริ่มต้น ระบบจะละเว้นการแก้ไข __gcse หลังจากเริ่มต้น

โดยจะมีการส่ง gName สำหรับ องค์ประกอบการค้นหาเป็นอาร์กิวเมนต์ไปยังแต่ละแฮนเดิลเลอร์ gname มีประโยชน์เมื่อหน้าเว็บมีการค้นหามากกว่า 1 รายการ กำหนดค่า gname ให้องค์ประกอบ search โดยใช้แอตทริบิวต์ data-gname ดังนี้

<div class="gcse-searchbox" data-gname="storesearch"></div>

หาก HTML ไม่ระบุ gname JavaScript ของ Search Element จะสร้างค่าที่จะ ยังคงสอดคล้องกันจนกว่าจะมีการแก้ไข HTML

การเรียกกลับเมื่อเริ่มการค้นหารูปภาพ/เว็บ

ระบบจะเรียกใช้การเรียกกลับของการเริ่มต้นการค้นหาก่อนที่ JavaScript ของ Search Element จะขอผลการค้นหาจากเซิร์ฟเวอร์ ตัวอย่างกรณีการใช้งานคือการใช้เวลาท้องถิ่นของวันเพื่อ ควบคุมการเปลี่ยนแปลงคําค้นหา

searchStartingCallback(gname, query)
gname
สตริงระบุขององค์ประกอบการค้นหา
query
ค่าที่ผู้ใช้ป้อน (อาจแก้ไขโดย JavaScript ขององค์ประกอบ search )

โดย Callback จะแสดงค่าที่ควรใช้เป็นคำค้นหาสำหรับการค้นหานี้ หากแสดงผลสตริงว่าง ระบบจะไม่สนใจค่าที่แสดงผลและผู้เรียกจะใช้การค้นหาที่ไม่มีการแก้ไข

หรือจะใส่ฟังก์ชัน Callback ในออบเจ็กต์ __gcse หรือ เพิ่ม Callback ลงในออบเจ็กต์แบบไดนามิกด้วย JavaScript ก็ได้

window.__gcse['searchCallbacks']['web']['starting'] = function(gname, query) {...};
ตัวอย่าง Search Starting Callback

การเรียกกลับที่เริ่มต้นการค้นหาตัวอย่างใน การเรียกกลับที่เริ่มต้นการค้นหาตัวอย่างจะเพิ่ม morning หรือ afternoon ลงในคำค้นหาโดยขึ้นอยู่กับช่วงเวลาของวัน

ตัวอย่างการเรียกกลับเมื่อเริ่มการค้นหา
    const myWebSearchStartingCallback = (gname, query) => {
      const hour = new Date().getHours();
      return query + (hour < 12 ? ' morning' : ' afternoon');
    };
    window.myImageSearchStartingCallbackName = myWebSearchStartingCallback;

ติดตั้งการเรียกกลับนี้ใน window.__gcse:

  window.__gcse || (window.__gcse = {});
    window.__gcse.searchCallbacks = {
      image: {
        starting: 'myImageSearchStartingCallbackName',
      },
      web: {
        starting: myWebSearchStartingCallback,
      },
    };
  
  <script
  async src="https://cse.google.com/cse.js?cx=000888210889775888983:y9tkcjel090"></script>
<div class="gcse-searchbox"></div>
<div class="gcse-searchresults"></div>

การเรียกกลับที่พร้อมใช้งานสำหรับผลการค้นหารูปภาพ/เว็บ

ระบบจะเรียกใช้แฮนเดิลการเรียกกลับเหล่านี้ทันทีก่อนที่ JavaScript ขององค์ประกอบการค้นหาจะแสดงโปรโมชันและผลลัพธ์ กรณีการใช้งานตัวอย่างคือการเรียกกลับที่แสดงโปรโมชันและผลลัพธ์ในรูปแบบที่ ระบุไม่ได้ด้วยการปรับแต่งปกติ

resultsReadyCallback(gname, query, promos, results, div)
gname
สตริงระบุขององค์ประกอบการค้นหา
query
คำค้นหาที่ทำให้เกิดผลลัพธ์เหล่านี้
promos
อาร์เรย์ของออบเจ็กต์โปรโมชันที่สอดคล้องกับโปรโมชันที่ตรงกันสำหรับการค้นหาของผู้ใช้ ดูคำจำกัดความของออบเจ็กต์โปรโมชัน
results
อาร์เรย์ของออบเจ็กต์ผลลัพธ์ ดูคำจำกัดความของออบเจ็กต์ผลลัพธ์
div
องค์ประกอบ HTML div ที่อยู่ใน DOM ซึ่งโดยปกติแล้ว Search Element จะ วางโปรโมชันและผลการค้นหา โดยปกติแล้ว JavaScript ของ Search Element จะจัดการ การป้อนข้อมูลใน div นี้ แต่การเรียกกลับนี้อาจเลือกที่จะหยุดการแสดงผลลัพธ์อัตโนมัติ และใช้ div นี้เพื่อแสดงผลลัพธ์ด้วยตนเอง

หาก Callback นี้แสดงผลค่า true JavaScript ของ Search Element จะข้ามไปทำงานส่วนท้ายของหน้า

ตัวอย่างการเรียกกลับเมื่อผลลัพธ์พร้อม

resultsReady ตัวอย่าง Callback ใน Example Results Ready Callback จะลบล้างการนำเสนอเริ่มต้น ของโปรโมชันและผลลัพธ์ด้วยการแทนที่อย่างง่าย

ตัวอย่างการเรียกกลับเมื่อผลลัพธ์พร้อม
    const myResultsReadyCallback = function(name, q, promos, results, resultsDiv) {
      const makePromoElt = (promo) => {
        const anchor = document.createElement('a');
        anchor.href = promo['url'];
        anchor.target = '_blank';
        anchor.classList.add('gs-title');
        const span = document.createElement('span');
        span.innerHTML = 'Promo: ' + promo['title'];
        anchor.appendChild(span);
        return anchor;
      };
      const makeResultParts = (result) => {
        const anchor = document.createElement('a');
        anchor.href = result['url'];
        anchor.target = '_blank';
        anchor.classList.add('gs_title');
        anchor.appendChild(document.createTextNode(result['visibleUrl']));
        const span = document.createElement('span');
        span.innerHTML = ' ' + result['title'];
        return [anchor, span];
      };

      const table = document.createElement('table');
      if (promos) {
        for (const promo of promos) {
          const row = table.insertRow(-1);
          const cell = row.insertCell(-1);
          cell.appendChild(makePromoElt(promo));
        }
        resultsDiv.appendChild(table);
        resultsDiv.appendChild(document.createElement('br'));
      }
      if (results) {
        const table = document.createElement('table');
        for (const result of results) {
          const row = table.insertRow(-1);
          const cell = row.insertCell(-1);
          const [anchor, span] = makeResultParts(result);
          cell.appendChild(anchor);
          const cell2 = row.insertCell(-1);
          cell2.appendChild(span);
        }
        resultsDiv.appendChild(table);
      }
      return true;
    };

ติดตั้งการเรียกกลับนี้ใน window.__gcse:

  window.__gcse || (window.__gcse = {});
    window.__gcse.searchCallbacks = {
      web: {
        ready: myResultsReadyCallback,
      },
    };
  <script async
  src="https://cse.google.com/cse.js?cx=000888210889775888983:y9tkcjel090"></script>
<div class="gcse-searchbox"></div>
<div class="gcse-searchresults"></div>

เช่นเดียวกับ Callback ที่เริ่มต้นการค้นหา วิธีข้างต้นเป็นหนึ่งในหลายๆ วิธีในการใส่ Callback ในออบเจ็กต์ __gcse

การเรียกกลับของผลการค้นหารูปภาพ/เว็บที่แสดง

ระบบจะเรียกใช้ฟังก์ชันเรียกกลับเหล่านี้ทันทีก่อนที่ JavaScript ของ Search Element จะแสดงผลส่วนท้ายของหน้า ตัวอย่างกรณีการใช้งาน ได้แก่ การเรียกกลับที่เพิ่มเนื้อหาผลการค้นหาที่องค์ประกอบการค้นหาไม่แสดง เช่น ช่องทำเครื่องหมายบันทึกรายการนี้ หรือข้อมูลที่ไม่ได้แสดงผลโดยอัตโนมัติ หรือการเรียกกลับที่เพิ่มปุ่มดูข้อมูลเพิ่มเติม

หากการเรียกกลับเมื่อแสดงผลลัพธ์ต้องการข้อมูลที่อยู่ในพารามิเตอร์ promos และ results ของการเรียกกลับเมื่อผลลัพธ์พร้อม ก็สามารถส่งต่อข้อมูลระหว่างกันได้ ดังนี้

callback(gname, query, promoElts, resultElts);
gname
สตริงระบุขององค์ประกอบการค้นหา
query
สตริงการค้นหา
promoElts
อาร์เรย์ขององค์ประกอบ DOM ที่มีการโปรโมต
resultElts
อาร์เรย์ขององค์ประกอบ DOM ที่มีผลลัพธ์

ไม่มีค่าที่ส่งคืน

ตัวอย่างการเรียกกลับเมื่อแสดงผลลัพธ์

ตัวอย่าง resultsRendered Callback ใน Example Results Rendered Callback จะเพิ่มช่องทำเครื่องหมาย Keep จำลองลงในโปรโมชันและผลลัพธ์แต่ละรายการ

ตัวอย่างการเรียกกลับเมื่อแสดงผลลัพธ์
myWebResultsRenderedCallback = function(name, q, promos, results) {
    for (const div of promos.concat(results)) {
      const innerDiv = document.createElement('div');
      innerDiv.appendChild(document.createTextNode('Keep: '));
      const checkBox = document.createElement('input');
      checkBox.type = 'checkbox';
      checkBox.name = 'save';
      innerDiv.appendChild(checkBox);
      div.insertAdjacentElement('afterbegin', innerDiv);
    }
  };

ติดตั้งการเรียกกลับนี้ใน window.__gcse:

window.__gcse || (window.__gcse = {});
window.__gcse.searchCallbacks = {
  web: {
    rendered: 'myWebResultsRenderedCallback',
  },
};
  <script async
    src="https://cse.google.com/cse.js?cx=000888210889775888983:y9tkcjel090"></script>
<div class="gcse-searchbox"></div>
<div class="gcse-searchresults"></div>

หากการเรียกกลับเมื่อแสดงผลลัพธ์ต้องการข้อมูลที่ส่งไปยังการเรียกกลับเมื่อผลลัพธ์พร้อม ก็สามารถส่งข้อมูลดังกล่าวระหว่างการเรียกกลับได้ ตัวอย่างต่อไปนี้แสดงวิธีหนึ่งในหลายๆ วิธีในการส่งค่าคะแนนจาก richSnippet จากการเรียกกลับเมื่อผลลัพธ์พร้อมไปยังการเรียกกลับเมื่อแสดงผลลัพธ์

ตัวอย่างการเรียกกลับเมื่อผลลัพธ์พร้อมที่ทำงานร่วมกับการเรียกกลับเมื่อแสดงผลลัพธ์
const makeTwoPartCallback = () => {
  let saveForRenderCallback;
  const readyCallback = (name, q, promos, results, resultsDiv) =>
  {
    saveForRenderCallback = [];
    for (const result of results) {
      const {
        richSnippet: {
          answer = []
        } = {},
      } = result;
      const firstAnswer = answer[0];
      if (firstAnswer) {
        const upVotes = firstAnswer['upvotecount'];
        if (upVotes) {
          saveForRenderCallback.push(
            {upvotes: parseInt(upVotes, 10)}
          );
          continue;
        }
      }
      saveForRenderCallback.push({});
    }
  };
  const renderedCallback = (name, q, promos, results) => {
    for (let i = 0; i < results.length; ++i) {
      const div = results[i];
      const votes = saveForRenderCallback[i]['upvotes'];
      if (votes) {
        const innerDiv = document.createElement('div');
        innerDiv.innerHTML = '<b>Upvotes: ' + votes + '</b>';
         div.insertAdjacentElement('afterbegin', innerDiv);
      }
    }
  };
  return {readyCallback, renderedCallback};
};
ติดตั้งการเรียกกลับนี้โดยใช้โค้ดเช่นนี้ขณะตั้งค่า __gcse
const {
  readyCallback: webResultsReadyCallback,
  renderedCallback: webResultsRenderedCallback,
} = makeTwoPartCallback();
window.__gcse || (window.__gcse = {});
window.__gcse.searchCallbacks = {
  web: {
    ready: webResultsReadyCallback,
    rendered: webResultsRenderedCallback,
  },
};
  <script async
  src="https://cse.google.com/cse.js?cx=000888210889775888983:kdroeu4mwju"></script>
<div class="gcse-searchbox"></div>
<div class="gcse-searchresults"></div>
ตัวอย่าง Callback การแสดงผล: การเปิดไฟล์ประเภทที่เฉพาะเจาะจงในแท็บ/หน้าต่างใหม่

ตัวอย่างการเรียกกลับต่อไปนี้สามารถแก้ไขลิงก์ผลการค้นหาหลังจากแสดงผลแล้วเพื่อเปิดไฟล์ที่เฉพาะเจาะจงในแท็บ/หน้าใหม่แทนหน้าต่างปัจจุบัน (เช่น PDF, Excel หรือ Word) ซึ่งจะช่วยปรับปรุงประสบการณ์การท่องเว็บเมื่อผู้ใช้ไม่ต้องการเปิดไฟล์ในหน้าต่างเดียวกันและออกจากหน้าผลการค้นหา

ตัวอย่างการเรียกกลับนี้จะระบุลิงก์ PDF ในผลการค้นหาและตั้งค่าแอตทริบิวต์ target="_blank" ในลิงก์ PDF เพื่อให้ลิงก์เปิดในแท็บใหม่ ระบบจะใช้ MutationObserver เพื่อจัดการผลลัพธ์ใหม่แบบไดนามิกหากหน้าเว็บมีการอัปเดต หมายเหตุ: คุณสามารถแทนที่ .pdf ใน handleSearchResults ด้วยไฟล์ประเภทอื่นได้ตามต้องการ

ตัวอย่างการเรียกกลับนี้ใช้ไม่ได้กับเลย์เอาต์ที่ Google โฮสต์และเลย์เอาต์แบบวางซ้อน

การเปิดไฟล์บางประเภทในแท็บ/หน้าต่างใหม่
function handleSearchResults() {
  const links = document.querySelectorAll('.gsc-results .gs-title');
  links.forEach(link => {
    const url = link.href;
    if (url?.toLowerCase().endsWith('.pdf')) {
      link.setAttribute('target', '_blank');
    }
  });
}

const myWebResultsRenderedCallback = () => {
  // Call handleSearchResults when results are rendered
  handleSearchResults();
  // Set up a MutationObserver to handle subsequent updates to the results
  const observer = new MutationObserver(handleSearchResults);
  const searchResultsContainer = document.querySelector('.gsc-results');
  if (searchResultsContainer) {
    observer.observe(searchResultsContainer, {
      childList: true,
      subtree: true
    });
  } else {
    console.log('No Results.');
  }
};

ติดตั้งการเรียกกลับนี้ใน window.__gcse:

window.__gcse || (window.__gcse = {});
window.__gcse.searchCallbacks = {
  web: {
    rendered: myWebResultsRenderedCallback,
  },
};
  <script async
    src="https://cse.google.com/cse.js?cx=000888210889775888983:y9tkcjel090"></script>
<div class="gcse-searchbox"></div>
<div class="gcse-searchresults"></div>

ตัวอย่าง Callback เพิ่มเติม

ดูตัวอย่าง Callback เพิ่มเติมได้ในเอกสารตัวอย่าง Callback เพิ่มเติม

พร็อพเพอร์ตี้โปรโมชันและพร็อพเพอร์ตี้ผลลัพธ์

พร็อพเพอร์ตี้ของออบเจ็กต์ promotion และ result มีดังนี้โดยใช้สัญกรณ์ JSDoc เราแสดงรายการพร็อพเพอร์ตี้ทั้งหมดที่อาจมีอยู่ที่นี่ พร็อพเพอร์ตี้หลายรายการ จะขึ้นอยู่กับรายละเอียดของโปรโมชันหรือผลการค้นหา

พร็อพเพอร์ตี้โปรโมชัน
{
  content: string,
  image: {
    height: number,
    url: string,
    width: number,
  },
  title: string,
  url: string,
  visibleUrl: string,
}
พร็อพเพอร์ตี้ของออบเจ็กต์ผลลัพธ์
{
  content: string,
  contentNoFormatting: string,
  contextUrl: string, // For image search results only
  fileFormat: string,
  image: { // For image search reseults only
    height: number,
    url: string,
    width: number,
  },
  perResultLabels: !Array<{
    anchor: string,
    label: string,
    labelWithOp: string,
  }>,
  richSnippet: !Array<!Object>, // For web search results only
  thumbnailImage: {
    height: number,
    url: string,
    width: number,
  },
  title: string,
  titleNoFormatting: string,
  url: string,
  visibleUrl: string,
}

richSnippet ใน results มีประเภทแบบหลวมของอาร์เรย์ของ ออบเจ็กต์ ค่าของรายการในอาร์เรย์นี้ควบคุมโดย Structured Data ที่พบในหน้าเว็บสำหรับผลการค้นหาแต่ละรายการ เช่น เว็บไซต์รีวิวอาจมี Structured Data ที่เพิ่มรายการอาร์เรย์นี้ลงใน richSnippet

'review': {
  'ratingstars': '3.0',
  'ratingcount': '1024',
},

Programmable Search Element Control API (V2)

ออบเจ็กต์ google.search.cse.element จะเผยแพร่ฟังก์ชันแบบคงที่ต่อไปนี้

ฟังก์ชัน คำอธิบาย
.render(componentConfig, opt_componentConfig) แสดงผลองค์ประกอบ Search

พารามิเตอร์

ชื่อ คำอธิบาย
componentConfig การกำหนดค่าสำหรับคอมโพเนนต์ Programmable Search Element ระบุสิ่งต่อไปนี้
  • div (string|Element): id ของ <div> หรือองค์ประกอบ div ที่จะแสดง Programmable Search Element
  • tag (สตริง): ประเภทของคอมโพเนนต์ที่จะแสดง (เมื่อระบุ opt_componentConfig ค่าของแอตทริบิวต์ tag ต้องเป็น searchbox) ค่าที่ใช้ได้มีดังนี้
    • search: ช่องค้นหาและผลการค้นหาที่แสดงร่วมกัน
    • searchbox: คอมโพเนนต์ช่องค้นหาของ Programmable Search Element
    • searchbox-only: ช่องค้นหาแบบสแตนด์อโลน ซึ่งจะจับคู่กับบล็อกผลการค้นหาที่ระบุโดย opt_componentConfig ในเลย์เอาต์ 2 คอลัมน์
    • searchresults-only: บล็อกผลการค้นหาแบบสแตนด์อโลน การค้นหาจะทริกเกอร์โดยพารามิเตอร์การค้นหาที่ฝังอยู่ใน URL หรือโดยการดำเนินการแบบเป็นโปรแกรม
  • gname (string): (ไม่บังคับ) ชื่อที่ไม่ซ้ำกันสำหรับคอมโพเนนต์นี้ หากไม่ได้ระบุ Programmable Search Engine จะสร้าง gname โดยอัตโนมัติ
  • attributes (Object): แอตทริบิวต์ที่ไม่บังคับในรูปแบบคู่คีย์:ค่า แอตทริบิวต์ที่รองรับ
opt_componentConfig ไม่บังคับ อาร์กิวเมนต์การกำหนดค่าคอมโพเนนต์ที่ 2 ใช้ในโหมด TWO_COLUMN เพื่อระบุคอมโพเนนต์ searchresults ระบุสิ่งต่อไปนี้
  • div (สตริง): id ของ <div> หรือ องค์ประกอบ div ที่จะแสดงองค์ประกอบ
  • tag (สตริง): ประเภทของคอมโพเนนต์ที่จะแสดง เมื่อระบุ opt_componentConfig ค่าของแอตทริบิวต์ tag ต้องเป็น searchresults นอกจากนี้ ค่าของแอตทริบิวต์ tag ของ componentConfig ต้องเป็น searchbox
  • gname (string): (ไม่บังคับ) ชื่อที่ไม่ซ้ำกันสำหรับคอมโพเนนต์นี้ หากไม่ได้ระบุไว้ Programmable Search Engine จะสร้าง gname สำหรับคอมโพเนนต์นี้โดยอัตโนมัติ หากระบุ ต้องตรงกับ gname ใน componentConfig
  • attributes (Object): แอตทริบิวต์ที่ไม่บังคับในรูปแบบของคู่คีย์:ค่า แอตทริบิวต์ที่รองรับ
.go(opt_container) แสดงแท็ก/คลาส Search Element ทั้งหมดในคอนเทนเนอร์ที่ระบุ

พารามิเตอร์

ชื่อ คำอธิบาย
opt_container คอนเทนเนอร์ที่มีคอมโพเนนต์ขององค์ประกอบการค้นหาที่จะแสดง ระบุ รหัสของคอนเทนเนอร์ (สตริง) หรือองค์ประกอบเอง หาก ละเว้น ระบบจะแสดงคอมโพเนนต์ Programmable Search Element ทั้งหมดภายในแท็ก body ของหน้า
.getElement(gname) รับออบเจ็กต์องค์ประกอบตาม gname หากไม่พบ ให้แสดงผลเป็น Null

ออบเจ็กต์ element ที่แสดงมีแอตทริบิวต์ต่อไปนี้

  • gname: ชื่อของออบเจ็กต์องค์ประกอบ หากไม่ได้ระบุ Programmable Search Engine จะสร้าง gname สำหรับออบเจ็กต์โดยอัตโนมัติ ข้อมูลเพิ่มเติม
  • type: ประเภทขององค์ประกอบ
  • uiOptions: แอตทริบิวต์สุดท้ายที่ใช้ในการแสดงผลองค์ประกอบ
  • execute - function(string): เรียกใช้การค้นหาแบบเป็นโปรแกรม
  • prefillQuery - function(string): ป้อนข้อมูลในช่องค้นหาด้วยคำค้นหา สตริงโดยไม่ต้องเรียกใช้คำค้นหา
  • getInputQuery - function(): รับค่าปัจจุบันที่แสดงในช่องป้อนข้อมูล
  • clearAllResults - function(): ล้างการควบคุมโดยซ่อนทุกอย่างยกเว้น ช่องค้นหา (หากมี)

โค้ดต่อไปนี้จะเรียกใช้คำค้นหา "news" ในองค์ประกอบการค้นหา "element1"

var element = google.search.cse.element.getElement('element1');
            element.execute('news');
.getAllElements() แสดงผลแมปของออบเจ็กต์องค์ประกอบทั้งหมดที่สร้างสำเร็จ โดยมีคีย์เป็น gname