ภาพรวม
Programmable Search Engine มีโอเปอเรเตอร์การค้นหาที่มีโครงสร้างเพื่อช่วยให้ผู้ใช้เข้าถึงหน้าที่ถูกต้องในเว็บไซต์ได้ ซึ่งจะช่วยให้คุณเจาะลึกผลการค้นหาชุดย่อยได้ตาม Structured Data ที่พบในหน้าเว็บหรือข้อมูลเมตาที่เชื่อมโยงกับรูปภาพในเว็บไซต์
สำหรับการค้นหารูปภาพ Google จะอาศัยทั้งข้อมูลที่มีโครงสร้างในหน้าเว็บและข้อมูลเมตาของรูปภาพที่ค้นพบเมื่อรวบรวมข้อมูลเว็บไซต์ เราขอแนะนำให้ผู้ดูแลเว็บทุกคนทำความคุ้นเคยกับหลักเกณฑ์การเผยแพร่รูปภาพ
ค้นเว็บ
ข้อมูลที่มีโครงสร้างมีการจัดระเบียบตามตรรกะเป็นชุดออบเจ็กต์ที่มีชุดแอตทริบิวต์ ซึ่งต่างจากข้อความที่เป็นลำดับคำแบบอิสระ Programmable Search Engine จะดึงข้อมูลที่มีโครงสร้างต่างๆ เพื่อใช้งานโดยโอเปอเรเตอร์การค้นหาที่มีโครงสร้าง รวมถึงวันที่ ผู้เขียน คะแนน และราคา ข้อมูลนี้เป็นข้อมูลเดียวกันกับที่ใช้ในตัวอย่างข้อมูลที่กำหนดเอง นอกจากนี้ Programmable Search Engine ยังรองรับข้อมูลที่มีโครงสร้างในรูปแบบต่อไปนี้ด้วย
- PageMap: PageMap แสดงข้อมูลที่มีโครงสร้างเป็น DataObjects อย่างชัดเจนโดยมีแอตทริบิวต์และค่า ซึ่งเข้ารหัสเป็นบล็อก XML ที่ฝังอยู่ในหน้าเว็บ Programmable Search Engine ช่วยให้ข้อมูล PageMap ที่มีการจัดรูปแบบที่ดีทั้งหมดพร้อมใช้งานสำหรับโอเปอเรเตอร์การค้นหาที่มีโครงสร้าง และยังนำไปใช้ในตัวอย่างข้อมูลที่กำหนดเองได้ด้วย
- แท็ก
meta
: Google จะดึงเนื้อหาที่เลือกออกจากแท็กmeta
ของแบบฟอร์ม<meta name="NAME" content="VALUE">
ใช้แท็กmeta
ของแบบฟอร์ม<meta name="pubdate" content="20100101">
กับโอเปอเรเตอร์การค้นหาของแบบฟอร์ม&sort=metatags-pubdate
ได้ - วันที่ของหน้าเว็บ: Google จะประมาณวันที่ของหน้าเว็บโดยอิงจาก URL, ชื่อ, บรรทัดวันที่ และฟีเจอร์อื่นๆ วันที่นี้ใช้กับโอเปอเรเตอร์การจัดเรียงได้โดยใช้ข้อมูลที่มีโครงสร้างประเภท
date
แบบพิเศษ เช่น&sort=date
- ข้อมูลตัวอย่างข้อมูลสื่อสมบูรณ์:
Google ยังดึงข้อมูลบางส่วนออกจากมาตรฐานสาธารณะด้วย เช่น
เพื่อใช้ในโอเปอเรเตอร์ข้อมูลที่มีโครงสร้างของ Programmable Search Engine
เช่น หากต้องการจัดเรียงหน้าที่มาร์กอัปด้วยมาตรฐาน Microformat
hrecipe
ตามการจัดประเภท ให้ใช้&sort=recipe-ratingstars
ข้อมูลเพิ่มเติมเกี่ยวกับการระบุข้อมูลที่มีโครงสร้าง
หากหน้าเว็บของคุณมีข้อมูลที่มีโครงสร้าง คุณอาจใช้โอเปอเรเตอร์การค้นหาที่มีโครงสร้างของ Programmable Search Engine เพื่อจำกัดการค้นหาไว้เฉพาะช่องที่มีค่าข้อมูลที่เจาะจง โดยจัดเรียงตามค่าตัวเลขอย่างเคร่งครัด ให้น้ำหนักกับค่าบางค่ามากกว่าการจัดเรียง หรือจำกัดช่วงของค่าที่ระบุ
Programmable Search Engine รองรับโอเปอเรเตอร์การค้นหาต่อไปนี้ผ่าน Structured Data
- กรองตามแอตทริบิวต์ซึ่งใช้ได้กับรูปแบบข้อมูลที่มีโครงสร้างทั้งหมด ยกเว้น JSON-LD
- กรองตามกิ่งไม้ ซึ่งใช้ได้กับ JSON-LD, Microformat และ RDFa
- จัดเรียงตามแอตทริบิวต์
- อคติตามแอตทริบิวต์
- จำกัดเฉพาะช่วง
กรองตามแอตทริบิวต์
การกรองตามแอตทริบิวต์จะช่วยให้คุณเลือกผลลัพธ์ได้ 3 ประเภท ดังนี้
- ผลลัพธ์ที่มี DataObject แบบแนบที่เจาะจง เช่น รีวิว
- ผลลัพธ์ที่มี DataObject ที่มีช่องที่ระบุ เช่น รีวิวที่มีช่วงราคา
- ผลการค้นหาที่มีค่าที่เจาะจงของช่อง เช่น รีวิวที่มี 5 ดาว
หากต้องการกรองตามแอตทริบิวต์ ให้เพิ่มโอเปอเรเตอร์ more:pagemap:TYPE-NAME:VALUE
ลงในคำค้นหา วิธีนี้จะจำกัดผลการค้นหาให้แสดงเฉพาะหน้าที่มีข้อมูลที่มีโครงสร้างตรงกับประเภท ชื่อ และค่านั้นๆ ทุกประการ (Programmable Search Engine
จะแปลงแอตทริบิวต์ได้สูงสุด 200 รายการต่อหน้าเว็บ เริ่มต้นด้วยข้อมูล Pagemap ตามด้วย JSON-LD, microformat, เมตาแท็ก, RDFa และ Microdata) แอตทริบิวต์ไม่ควรยาวเกิน 128 อักขระ
คุณสามารถทำให้โอเปอเรเตอร์นี้เป็นข้อมูลทั่วไปได้โดยการละเว้น VALUE
เพื่อจับคู่อินสแตนซ์ทั้งหมดของฟิลด์ที่มีชื่อ หรือละเว้น -NAME:VALUE
เพื่อจับคู่ออบเจ็กต์ทั้งหมดของประเภทหนึ่งๆ
ดูตัวอย่างที่เราใช้ก่อนหน้านี้เพื่อดูวิธีสร้างโอเปอเรเตอร์แบบสมบูรณ์จากข้อมูลที่มีโครงสร้าง
[halloween more:pagemap:document-author:lisamorton]
การแจกแจงข้อจำกัด more:pagemap:document-author:lisamorton
ให้ลงรายละเอียดมากขึ้น
โอเปอเรเตอร์ more:
คือสิ่งที่ Programmable Search Engine ใช้
สำหรับป้ายกำกับการปรับแต่ง ส่วน pagemap:
ของการปรับเกณฑ์การค้นหา
จะบอกเราให้ปรับแต่งผลการค้นหาตามแอตทริบิวต์เฉพาะใน PageMaps ที่จัดทำดัชนี
และองค์ประกอบที่เหลือของโอเปอเรเตอร์ ซึ่งก็คือ document-author
และ
lisamorton
ระบุเนื้อหาที่จะเจาะลึกลงไปในข้อจำกัด เรียกคืน PageMap จากตัวอย่าง:
<PageMap> <DataObject type="document"> <Attribute name="title">The Five Scariest Traditional Halloween Stories</Attribute> <Attribute name="author">lisamorton</Attribute> </DataObject> </PageMap>
ตัวระบุ document-author:
ของโอเปอเรเตอร์ช่วยให้เรามองหา DataObject ประเภท document
โดยมีแอตทริบิวต์ชื่อ author
คีย์ข้อมูลที่มีโครงสร้างนี้ตามด้วยค่า lisamorton
ซึ่งต้องตรงกับค่าของแอตทริบิวต์ทั้งหมด จึงจะแสดงผลในการค้นหาที่มีข้อจำกัดนี้
more:p:document-author:lisamorton
เมื่อกรองตามแอตทริบิวต์ คุณจะสร้างตัวกรองที่ซับซ้อนมากขึ้น (และคำสั่งที่สั้นลง) ได้โดยใช้คำค้นหาที่กะทัดรัด ตัวอย่างเช่น คุณสามารถเพิ่ม PageMap ต่อไปนี้สำหรับ URL
<pagemap> <DataObject type="document"> <Attribute name="keywords">horror</Attribute> <Attribute name="keywords">fiction</Attribute> <Attribute name="keywords">Irish</Attribute> </DataObject> </pagemap> </page>
หากต้องการดึงผลลัพธ์สำหรับการค้นหา "Irish AND fiction" ให้ใช้คำสั่งต่อไปนี้
more:p:document-keywords:irish*fiction
ซึ่งเทียบเท่ากับ more:pagemap:document-keywords:Irish more:pagemap:document-keywords:fiction
หากต้องการเรียกดูผลลัพธ์สำหรับ "Irish AND (fiction OR horror)" ให้ใช้คำสั่งต่อไปนี้
more:p:document-keywords:irish*fiction,irish*horror
กรองตามสาขา
กรองตามสาขาเป็นรูปแบบหนึ่งของกรองตามแอตทริบิวต์ที่ใช้ได้กับ JSON-LD, Microformat และ RDFa ซึ่งเป็นตัวกรองประเภทเดียวตามแอตทริบิวต์ที่ใช้ได้กับข้อมูลที่มีโครงสร้าง JSON-LD
หากข้อมูลที่มีโครงสร้างไม่มีต้นไม้หรือมีแต่ต้นไม้ที่ไม่มีรายการย่อย ข้อจำกัดจะเหมือนกับการกรองตามแอตทริบิวต์ อย่างไรก็ตาม ต้นไม้ที่มีรายการย่อยจะมีข้อจำกัดที่มี type-name สำหรับแต่ละโหนดตั้งแต่รากถึงโหนด Leaf ดังนั้นต้นไม้ที่มีลักษณะต่อไปนี้
- รูทอยู่ในประเภทเหตุการณ์
- เด็กมีชื่อว่าการให้คะแนน
- ผู้เผยแพร่โฆษณาย่อยดังกล่าวมีประเภท AggregateRating
- ย่อยมีแอตทริบิวต์ชื่อ ratingCount และค่า 22
การใช้การกรองตามแอตทริบิวต์หรือสาขาที่มีฟีเจอร์อื่นๆ
คุณสามารถใช้ไวยากรณ์ปลายเปิดนี้เพื่อเจาะลึกเนื้อหาที่ระบุไว้ใน PageMaps บนเอกสารบนเว็บไซต์ได้ และคุณยังใช้ไวยากรณ์เดียวกันนี้กับข้อมูลที่มีโครงสร้างประเภทอื่นๆ เกือบทุกประเภทที่ Google รองรับได้ โดยไม่รวมวันที่ของหน้าเว็บโดยประมาณเท่านั้น นอกจากนี้ คุณยังสามารถใช้โอเปอเรเตอร์ more:pagemap:
เหล่านี้กับ
ป้ายกำกับการปรับแต่งหรือ
เอลิเมนต์การค้นหาที่ซ่อน เพื่อกรองผลลัพธ์ตามแอตทริบิวต์ที่สำคัญต่อแอปพลิเคชันของคุณ เพื่อให้ผู้ใช้ปลายทางไม่ต้องพิมพ์ตัวระบุข้อจำกัดเหล่านี้โดยตรง
คุณยังละเว้นบางส่วนของโอเปอเรเตอร์การค้นหาได้ด้วย ในตัวอย่างข้างต้น โปรดทราบว่า PageMap จะระบุ DataObject ประเภท document
และแอตทริบิวต์ประเภท author
แต่บางหน้าในเว็บไซต์อาจไม่ใช่เอกสาร และเอกสารบางรายการอาจไม่ได้มีแอตทริบิวต์ผู้เขียน หากคุณใช้โอเปอเรเตอร์ของรูปแบบ more:pagemap:document-author
ผลลัพธ์ที่แสดงจะรวมหน้าทั้งหมดที่มีแอตทริบิวต์ author
ใน document
DataObject ไม่ว่าค่าของแอตทริบิวต์จะเป็นอย่างไร ในทำนองเดียวกัน more:pagemap:document
จะแสดงผลลัพธ์ทั้งหมดด้วย PageMaps ที่มี DataObjects ประเภท document
โดยไม่คำนึงถึงช่องที่อยู่ใน DataObject นั้น
การแปลงค่าข้อความเป็นโทเค็นสำหรับข้อจำกัด
ค่าแอตทริบิวต์ที่มีการเว้นวรรค เครื่องหมายวรรคตอน หรือสัญลักษณ์พิเศษ มักจะแยกเป็นโทเค็นแยกกันเสมอ เช่น ค่าแอตทริบิวต์ "Programmable Search Engine@google" จะแยกเป็น 3 โทเค็นแยกกัน ได้แก่ "custom", "search" และ "google" ซึ่งอนุญาตให้ค้นหาด้วยคำเดี่ยวๆ ที่ฝังอยู่ในลำดับคำและเครื่องหมายวรรคตอนที่มากขึ้น เช่น คำอธิบายสำหรับเวอร์ชันที่ใช้จริง (Programmable Search Engine จะแยกโทเค็นได้สูงสุด 10 รายการต่อสตริง ดังนั้นหากค่าแอตทริบิวต์ของคุณมีคำมากกว่า 10 คำ อาจมีการจำกัดผลการค้นหาเพียงบางรายการ) ตัวอย่างเช่น PageMap ต่อไปนี้มีคำอธิบาย Programmable Search Engine ในเวอร์ชันที่ใช้งานจริง
<PageMap> <DataObject type="product"> <Attribute name="description">Programmable Search Engine provides customized search engines</Attribute> </DataObject> </PageMap>
ข้อจำกัดต่อไปนี้จะค้นหาทุกหน้าที่มีแอตทริบิวต์ product-description
เกี่ยวกับ "การค้นหา"
[more:pagemap:product-description:search]
กฎอื่นๆ สำหรับการแปลงค่าข้อความเป็นโทเค็นมีดังนี้
- ระบบจะแปลงค่าข้อความเป็นตัวพิมพ์เล็กเพื่อให้มีข้อจำกัด
- สำหรับสตริงที่มีโทเค็นได้สูงสุด 6 รายการ ระบบจะสร้างการจำกัดเพิ่มเติมสำหรับทั้งสตริง โดยแทนที่ช่องว่างด้วย
_
เช่นplease_attend
- ระบบจะไม่สร้างขีดจํากัดแยกต่างหากสําหรับคำหยุด เช่น คําอย่างเช่น the, a, แต่ และด้วยเหตุนี้ จึงไม่มีประโยชน์สำหรับการค้นหา ดังนั้นค่าข้อความ "the main point" จะสร้างขีดจำกัดสำหรับ main, point และ the_main_point แต่จะไม่สร้างข้อจำกัดสำหรับ the
- เฉพาะสิบคำแรกในค่าข้อความเท่านั้นที่ใช้เพื่อสร้างขีดจำกัด
-
ระบบจะแปลงอักขระเครื่องหมายวรรคตอนที่ไม่ถือเป็นตัวคั่นเป็นขีดล่าง
_
การเจาะลึกค่าที่แปลงข้อมูลเป็นโทเค็นโดยใช้ข้อจำกัดหลายรายการ
หากต้องการเจาะลึกมากขึ้น คุณสามารถเพิ่มข้อจำกัดอื่นๆ เช่น หากต้องการรับเฉพาะหน้าที่อธิบายผลิตภัณฑ์ของเครื่องมือค้นหา ให้เพิ่มข้อจำกัดต่อไปนี้
[more:pagemap:product-description:search more:pagemap:product-description:engine]
ลำดับของข้อจำกัด more:pagemap:
ไม่สำคัญ เพราะโทเค็นจะดึงจากค่าแอตทริบิวต์ไปไว้ในชุดที่ไม่เรียงลำดับ
ระบบจะรวมข้อจำกัดเหล่านี้ไว้โดยค่าเริ่มต้นด้วย AND แต่คุณจะรวมข้อจำกัดเหล่านี้เข้ากับโอเปอเรเตอร์ OR เพื่อให้ได้ผลลัพธ์ที่ตรงกับข้อจำกัดอย่างใดอย่างหนึ่งก็ได้ ตัวอย่างต่อไปนี้เป็นการค้นหาที่ จับคู่เนื้อหาจากการค้นหาหรือเกม
[more:pagemap:product-description:search OR more:pagemap:product-description:game]
ข้อยกเว้นอย่างหนึ่งของการแปลงเป็นโทเค็นคือสำหรับค่าแอตทริบิวต์ที่เป็น URL เนื่องจากโทเค็นจาก URL มีประโยชน์ส่วนเพิ่ม เราจึงไม่สร้างโทเค็นจากค่าแอตทริบิวต์ที่เป็น URL ที่ถูกต้อง
ในบางกรณี เช่น เมื่อพบโทเค็นแบบสั้นร่วมกันอยู่บ่อยๆ Programmable Search Engine อาจรวมโทเค็นเหล่านั้นเข้าด้วยกันเพื่อสร้างโทเค็นพิเศษ เช่น หากโทเค็น "P President" และ "Obama" ปรากฏอยู่ติดกันบ่อยครั้ง Programmable Search Engine อาจสร้าง Supertoken "p President_obama" ด้วย ดังนั้น [more:pagemap:leaders-name:president_obama]
จะแสดงผลลัพธ์เหมือนกับ [more:pagemap:leaders-name:president AND more:pagemap:leaders-name:obama]
ข้อยกเว้นหลักอีกข้อหนึ่งของการแปลงข้อมูลเป็นโทเค็นตามเครื่องหมายวรรคตอนคือเครื่องหมายทับ "/" เมื่อคั่นตัวเลข ค่าแอตทริบิวต์ในรูปแบบ "NUMBER/NUMBER" หรือ "NUMBER/NUMBER/NUMBER" จะถือว่าเป็นโทเค็นที่ต่อเนื่องกัน เช่น "3.5/5.0" และ "09/23/2006" จะถือว่าเป็นโทเค็นเดี่ยว ตัวอย่างเช่น หากต้องการค้นหาแอตทริบิวต์ที่มีค่า "2006/09/23" ให้ใช้ขีดจำกัดดังนี้
[more:pagemap:birth-date:2006/09/23]
การเข้าร่วมตามเครื่องหมายทับจะใช้ได้ก็ต่อเมื่อเครื่องหมายทับอยู่ระหว่างตัวเลขโดยไม่มีการเว้นวรรค การเว้นวรรคระหว่างเครื่องหมายทับและตัวเลขจะส่งผลให้มีการสร้างโทเค็นแยกกัน นอกจากนี้ จำนวนที่เชื่อมด้วยเครื่องหมายทับต้องตรงกันทั้งหมด โอเปอเรเตอร์ "กรองตามแอตทริบิวต์" จะไม่ตีความค่าเหล่านี้เป็นเศษส่วนหรือวันที่ โอเปอเรเตอร์การค้นหาที่มีโครงสร้างอื่นๆ ของ Programmable Search Engine เช่น จัดเรียงตามแอตทริบิวต์และจำกัดช่วง จะตีความจำนวนเหล่านี้เป็นเศษส่วนและวันที่ โปรดดูรายละเอียดเพิ่มเติมในเอกสารประกอบเกี่ยวกับการให้ข้อมูลที่มีโครงสร้าง
ข้อจำกัดจาก JSON-LD
JSON-LD เป็นรูปแบบมาตรฐานที่มีประสิทธิภาพสำหรับข้อมูลที่มีโครงสร้าง
ข้อมูลอยู่ในรูปแบบ JSON และใส่ไว้ในแท็ก <script>
ที่มี type="application/ld+json"
ต่อไปนี้คือบิตของ HTML ที่มี JSON-LD แบบง่ายบางส่วน:
<script type="application/ld+json"> { "@id": "http://event.example.com/events/presenting-foo", "@type": "http://schema.org/AggregateRating", "http://schema.org/ratingCount": "22", "http://schema.org/ratingValue": "4.4", "http://schema.org/itemReviewed": { "@type": "http://schema.org/Event", "http://schema.org/description": "Please attend.", "http://schema.org/name": "Presenting Foo", "http://schema.org/startdate": "2022-05-24", "http://schema.org/location": "Back room" } } </script>
ระบบจะสร้างข้อจำกัดต่อไปนี้
- more:pagemap:aggregaterating-ratingcount:22
- more:pagemap:aggregaterating-ratingvalue:4.4
- more:pagemap:aggregaterating-itemreviewed-event-description:please_attend
- more:pagemap:aggregaterating-itemreviewed-event-description:please
- more:pagemap:aggregaterating-itemreviewed-event-description:attend
- more:pagemap:aggregaterating-itemreviewed-event-name:presenting_foo
- more:pagemap:aggregaterating-itemreviewed-event-name:presenting
- more:pagemap:aggregaterating-itemreviewed-event-name:foo
- more:pagemap:aggregaterating-itemreviewed-event-startdate:2022-05-24
- more:pagemap:aggregaterating-itemreviewed-event-location:back_room
- more:pagemap:aggregaterating-itemreviewed-event-location:back
- more:pagemap:aggregaterating-itemreviewed-event-location:room
สำหรับ JSON-LD เราจะสร้างการจำกัดสำหรับทั้งเส้นทางตั้งแต่รูทเท่านั้น โปรดดูกรองตาม Branch อย่างไรก็ตาม รากของต้นไม้ JSON-LD มีโหนด Leaf เป็นระดับย่อย ซึ่งข้อจำกัดที่ได้จะมีรูปแบบเดียวกันกับ "ข้อจำกัดแอตทริบิวต์" ข้อจำกัดบางอย่างในตัวอย่างข้างต้นสร้างขึ้นจากโหนด Leaf ที่รูทและกรอกแบบฟอร์มของแอตทริบิวต์ Restrict (type-name-value) เช่น more:pagemap:aggregaterating-ratingcount:22
หมายเหตุ: รูปแบบข้อมูลที่มีโครงสร้างอื่นๆ อนุญาตให้ใช้สตริงได้สูงสุด 128 ไบต์ แต่สำหรับ JSON-LD ทุกสตริงจะถูกตัดให้เหลือประมาณ 50 อักขระ เพื่อไม่ให้สตริงยาวเกินกว่าคำกลางของคำ การดำเนินการนี้อาจจำกัดจำนวนโทเค็นที่สร้างขึ้นจากสตริงมากกว่าขีดจำกัดโทเค็นไว้ที่ 10 รายการ ทั้งนี้ขึ้นอยู่กับความยาวของคำ
จัดเรียงตามแอตทริบิวต์
บางครั้งการจำกัดการค้นหาแค่ผลการค้นหาบางประเภทก็ไม่เพียงพอ
ตัวอย่างเช่น ในการค้นหารีวิวร้านอาหาร คุณอาจต้องการให้ร้านอาหารที่มีคะแนนสูงสุดแสดงอยู่ที่ด้านบนสุดของรายการ คุณสามารถทำได้ด้วยฟีเจอร์การจัดเรียงตามแอตทริบิวต์ของ Programmable Search Engine ซึ่งจะเปลี่ยนลำดับของผลลัพธ์ตามค่าของแอตทริบิวต์ Structured Data
การจัดเรียงจะเปิดใช้งานโดยการเพิ่มพารามิเตอร์ URL &sort=TYPE-NAME:DIRECTION
ไปยัง URL ของคำขอไปยัง Programmable Search Engine
เช่นเดียวกับการค้นหาที่มีโครงสร้าง การจัดเรียงตามแอตทริบิวต์จะขึ้นอยู่กับข้อมูลที่มีโครงสร้างในหน้าเว็บของคุณ ซึ่งต่างจากการค้นหาแบบมีโครงสร้างตรงที่การจัดเรียงจะต้องมีการตีความเชิงตัวเลข เช่น ตัวเลขและวันที่
ในรูปแบบที่ง่ายที่สุด คุณระบุประเภทข้อมูลที่มีโครงสร้างโดยอิงตามประเภทออบเจ็กต์ข้อมูลและชื่อแอตทริบิวต์ใน PageMap แล้วเพิ่มลงใน URL ของคำขอเป็น &sort=TYPE-NAME
เช่น หากต้องการจัดเรียงตามวันที่ในหน้าเว็บที่แสดงข้อมูลเป็นประเภท date
และชื่อ sdate
ให้ใช้ไวยากรณ์ต่อไปนี้
https://www.google.com/cse?cx=000525776413497593842:aooj-2z_jjm&q=comic+con&sort=date-sdate
โดยค่าเริ่มต้น ฟังก์ชันนี้จะจัดเรียงข้อมูลตามลำดับจากมากไปน้อย กล่าวคือ ผลการค้นหาจะเรียงลำดับตามวันที่อย่างเคร่งครัด โดยวันที่ล่าสุด (ซึ่งแปลเป็นจำนวนมากที่สุด) จะเรียงตามลำดับก่อนหลัง
หากต้องการเปลี่ยนลำดับการจัดเรียงเป็นจากน้อยไปมาก ให้เพิ่ม :a
ลงในช่อง (หรือต่อท้าย :d
เพื่อระบุจากมากไปน้อยอย่างชัดเจน) ตัวอย่างเช่น หากต้องการแสดงผลการค้นหาเก่าที่สุดก่อน
คุณสามารถใช้ข้อจำกัดของแบบฟอร์ม
https://www.google.com/cse?cx=000525776413497593842:aooj-2z_jjm&q=comic+con&sort=date-sdate:a
ผลลัพธ์ที่จัดเรียงจากเครื่องมือของคุณจะแสดงตามค่าที่หน้าเหล่านั้นมีใน PageMaps สำหรับ DataObject และแอตทริบิวต์นั้น หน้าที่ไม่มี PageMaps ประเภท DataObject หรือค่าที่แยกวิเคราะห์ได้ของแอตทริบิวต์นั้นจะไม่แสดงในประเภทฮาร์ดโค้ด ในตัวอย่างด้านบน หน้าที่ไม่มีแอตทริบิวต์ date-sdate
จะไม่แสดงในผลลัพธ์ ไม่สามารถรวมการจัดเรียงแบบซับซ้อนกับฟีเจอร์การให้น้ำหนักตามแอตทริบิวต์ซึ่งอธิบายไว้ในส่วนถัดไป แต่สามารถใช้ร่วมกับกรองตามแอตทริบิวต์และจำกัดตามช่วงได้
การให้น้ำหนักตามแอตทริบิวต์
บางครั้งคุณอาจไม่ต้องการยกเว้นผลการค้นหาที่ไม่มีคุณค่า ตัวอย่างเช่น คุณต้องการค้นหาอาหารเลบานอน ร้านอาหารต่างๆ มากมายอาจตรง ตั้งแต่เลบานอนแท้ (เกี่ยวข้องที่สุด) ไปจนถึงกรีก (เกี่ยวข้องน้อยที่สุด) สำหรับกรณีนี้ คุณสามารถใช้ความอคติแบบรุนแรงหรืออ่อนแอ ซึ่งจะส่งเสริมผลลัพธ์ที่มีคุณค่าของคุณอย่างยิ่งหรืออ่อนลง แต่จะไม่ยกเว้นผลลัพธ์ที่ขาดไป คุณระบุการให้น้ำหนักพิเศษหรือความอ่อนไหวด้วยการเพิ่มค่าที่ 2 ต่อท้ายทิศทางการจัดเรียง: &sort=TYPE-NAME:DIRECTION:STRENGTH
อาจเป็น :s
สำหรับการให้น้ำหนักพิเศษมาก หรือ :w
สำหรับการให้น้ำหนักพิเศษแบบอ่อน (และ :h
สำหรับการจัดเรียงแบบถาวร แม้ว่าการเพิ่ม :h
จะเป็นตัวเลือกที่ไม่บังคับเนื่องจากเป็นค่าเริ่มต้น)
เช่น การเพิ่มการให้น้ำหนักพิเศษมากจะทำให้ร้านอาหารเมดิเตอร์เรเนียนเรตติ้งที่ได้รับคะแนนดีที่สุดจะมีประสิทธิภาพสูงกว่าร้านอาหารเมดิเตอร์เรเนียนที่ให้คะแนนแย่ที่สุด แต่ไม่น่าจะได้อันดับสูงกว่าร้านเลบานอนใดๆ
https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=review-rating:d:s
คุณสามารถรวมการให้น้ำหนักพิเศษหลายรายการได้โดยใช้โอเปอเรเตอร์คอมมา ดังนี้
https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=review-rating:d:s,review-pricerange:d:w
ลำดับของการให้น้ำหนักพิเศษไม่มีความสำคัญ อย่างไรก็ตาม คุณไม่สามารถรวมการจัดเรียงแบบเข้มงวดกับการจัดเรียงประเภทอื่นๆ ได้ เนื่องจากมีการบังคับใช้การเรียงลำดับแบบเข้มงวด โอเปอเรเตอร์การจัดเรียงล่าสุดที่คุณระบุในรายการจะลบล้างโอเปอเรเตอร์การจัดเรียงและการให้น้ำหนักก่อนหน้าทั้งหมด
จำกัดตามช่วง
หากต้องการรวมผลลัพธ์ระหว่างช่วงของค่าหรือสูงกว่าหรือต่ำกว่าค่า ให้ใช้ข้อจำกัดของช่วง ขีดจำกัดช่วงจะกำหนดโดย :r
ต่อท้ายชื่อแอตทริบิวต์ ตามด้วยขอบเขตบนและล่างของค่าแอตทริบิวต์: &sort=TYPE-NAME:r:LOWER:UPPER
ตัวอย่างเช่น หากต้องการรวมเฉพาะรีวิวที่เขียนระหว่างเดือนมีนาคมถึงเมษายน 2009 คุณอาจระบุข้อจำกัดเป็นช่วงดังนี้
https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=review-date:r:20090301:20090430
สำหรับโอเปอเรเตอร์ "จำกัดเฉพาะช่วง" Google จะรองรับตัวเลขในรูปแบบแบบลอยและวันที่ใน
ISO 8601
YYYYMMDD
โดยไม่มีเครื่องหมายขีดคั่น
คุณไม่จำเป็นต้องระบุขอบเขตบนหรือขอบเขตล่าง เช่น หากต้องการระบุเฉพาะวันที่ก่อนปี 2009 คุณสามารถเขียนดังนี้
https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=review-date:r::20091231
หากต้องการรวมเฉพาะการให้คะแนนที่มากกว่า 3 ดาว ให้ใช้รูปแบบต่อไปนี้
https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=rating-stars:r:3.0
ช่วงจะมีความครอบคลุม และสามารถใช้ร่วมกับโอเปอเรเตอร์คอมมาร่วมกับแต่ละรายการ หรือกับการจัดเรียง 1 รายการหรือเกณฑ์การให้น้ำหนักพิเศษอย่างน้อย 1 รายการ โปรดทราบว่าการรวมการจำกัดช่วงกับทั้งเกณฑ์การจัดเรียงและการให้น้ำหนักจะทำให้มีการจัดเรียงรายการที่มีค่าในช่วงเท่านั้น ตัวอย่างเช่น ในการจัดเรียงตามการให้คะแนนเฉพาะรายการที่มีดาว 3 ดาวขึ้นไป ให้ใช้ข้อความต่อไปนี้
https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=rating-stars,rating-stars:r:3.0
คุณสามารถจัดเรียงเกณฑ์มากกว่า 1 เกณฑ์และจำกัดตามช่วงบนอีกเกณฑ์ได้ ตัวอย่างเช่น หากต้องการจัดเรียงตามการให้คะแนนเฉพาะรายการที่รีวิวในเดือนตุลาคม ให้ใช้ข้อมูลต่อไปนี้
https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=rating-stars,review-date:r:20101001:20101031
ค้นหารูปภาพ
เมื่อคุณเปิดใช้งานการค้นหารูปภาพในเครื่องมือค้นหา Google จะแสดงผลการค้นหารูปภาพในแท็บแยกต่างหาก คุณเปิดใช้การค้นหารูปภาพได้โดยใช้แผงควบคุม Programmable Search Engine หรือโดยการอัปเดตไฟล์ Context.xml
การค้นหารูปภาพอาศัยข้อมูลที่ Google ค้นพบเมื่อรวบรวมข้อมูลในไซต์ของคุณ หากต้องการปรับปรุงวิธีแสดงรูปภาพในผลการค้นหา (ทั้งใน Programmable Search Engine และ Google Web Search) คุณควรทำความคุ้นเคยกับหลักเกณฑ์การเผยแพร่รูปภาพของ Google
กรองตามแอตทริบิวต์รูปภาพ
การค้นหารูปภาพรองรับการกรองแอตทริบิวต์ต่างๆ เช่น src
, alt
และ title
เช่นเดียวกับการค้นเว็บ
Structured Search ในองค์ประกอบ Programmable Search
ฟีเจอร์การค้นหาที่มีโครงสร้างใช้ร่วมกับองค์ประกอบ
Programmable Search ของ Google ได้ด้วย เช่นเดียวกับโอเปอเรเตอร์ที่แสดงในข้อความค้นหาหรือพารามิเตอร์ URL การค้นหาแบบมีโครงสร้างในองค์ประกอบจะกำหนดให้หน้าที่คุณกำลังค้นหาต้องมาร์กอัปด้วยแอตทริบิวต์ที่คุณต้องการค้นหาก่อน จากนั้นโอเปอเรเตอร์ sort
ของ Programmable Search Element รวมกับโอเปอเรเตอร์ more:pagemap:
ในการค้นหาจะจัดเรียงหรือจำกัดผลการค้นหาอย่างเหมาะสม
ตัวอย่างเช่น SignOnSanDiego.com ซึ่งเป็นพอร์ทัลข่าวในแคลิฟอร์เนียได้ใช้ Element Programmable Search ในการแสดงผลเรื่องราวล่าสุดที่มีรูปภาพในผลการค้นหา
เพื่อให้แน่ใจว่าผู้อ่านจะได้เห็นทั้งข่าวที่เกี่ยวข้องที่สุดและทันเหตุการณ์ด้วย SignOnSanDiego จึงนำการให้น้ำหนักตามแอตทริบิวต์ที่มีน้ำหนัก "สูง" สำหรับวันที่เผยแพร่ล่าสุด SignOnSanDiego นำแอตทริบิวต์วันที่เหล่านี้ไปใช้ กับ PageMaps โดยที่ SignOnSanDiego ใช้แอตทริบิวต์วันที่
<!-- <PageMap> <DataObject type="date"> <Attribute name="displaydate" value="Wednesday, August 25, 2010"/> <Attribute name="sdate" value="20100825"/> </DataObject> <DataObject type="thumbnail"> <Attribute name="src" value="http://media.signonsandiego.com/img/photos/2010/08/25/635a63e9-f4a1-45aa-835a-ebee666b82e0news.ap.org_t100.jpg"/> <Attribute name="width" value="100"/> </DataObject> </PageMap> -->
หากต้องการใช้ "จัดเรียงตามแอตทริบิวต์" ในช่องนี้ ให้ตั้งค่าตัวเลือก
sort
ในโค้ดการค้นหาสำหรับ
Programmable Search Element ดังที่แสดงด้านล่าง
... <div class="gcse-search" sort_by="date-sdate:d:s"></div> ...
ตัวเลือกการจัดเรียงในองค์ประกอบ Programmable Search
<div class="gcse-search" sort_by="date-sdate:d:s"></div>
ใช้ชื่อแอตทริบิวต์แบบรวม เช่น date-sdate
และพารามิเตอร์ที่ไม่บังคับอีกหลายรายการที่คั่นด้วยโคลอน เช่นเดียวกับพารามิเตอร์ &sort=
ของ URL ที่อธิบายข้างต้น ในกรณีนี้ SignOnSanDiego ระบุการจัดเรียงในลำดับจากมากไปหาน้อย d
โดยใช้การให้น้ำหนักพิเศษ s
ของโอเปอเรเตอร์ หากคุณไม่ระบุตัวระบุ ค่าเริ่มต้นคือใช้ลำดับจากมากไปหาน้อยโดยจัดเรียงยาก เหมือนกับในกรณีของโอเปอเรเตอร์ URL
ตัวเลือกการจัดเรียงจะเปิดใช้ฟีเจอร์จำกัดตามช่วงด้วย ตัวอย่างเช่น เว็บไซต์อย่าง SignOnSanDiego อาจช่วยให้ผู้ใช้ค้นหาบทความที่เผยแพร่ระหว่างวันที่ 25 สิงหาคมถึง 9 กันยายนในปี 2010 ได้ หากต้องการใช้งาน ให้ตั้งค่าตัวเลือกการจัดเรียงเป็น date-sdate:r:20100825:20100907
ซึ่งอีกครั้งใช้ชื่อแอตทริบิวต์รวม date-sdate
แต่จะจำกัดช่วง r
ของค่าที่ระบุ 20100825:20100907
แทน
เช่นเดียวกับพารามิเตอร์ของ URL คุณจะละเว้นรายการระดับบนหรือล่างของช่วงในตัวเลือก sort
ขององค์ประกอบ Programmable Search ได้
คุณลักษณะที่มีประสิทธิภาพอีกอย่างของตัวเลือกการจัดเรียงคือ คุณสามารถรวม "จัดเรียงตามแอตทริบิวต์" และ "จำกัดตามช่วง" ได้ คุณสามารถรวมโอเปอเรเตอร์หลายรายการ
ในตัวเลือกการจัดเรียงโดยใช้เครื่องหมายจุลภาค ตัวอย่างเช่น หากต้องการรวมการให้น้ำหนักพิเศษของ SignOnSanDiego กับการจำกัดวันที่ด้านบน คุณต้องระบุ date-sdate:d:s,date-sdate:r:20100825:20100907
ฟีเจอร์นี้อาจรวมแอตทริบิวต์ที่แตกต่างกัน เช่น เว็บไซต์รีวิวภาพยนตร์อาจแสดงภาพยนตร์ที่ได้รับคะแนนสูงสุดที่ออกฉายในสัปดาห์ที่ผ่านมาพร้อมตัวเลือก review-rating,release-date:r:20100907:
โปรดดูแอตทริบิวต์ที่รองรับทั้งหมดในหน้านี้
คุณยังใช้ "กรองตามแอตทริบิวต์" กับองค์ประกอบ Programmable Search ได้ด้วย
ตัวอย่างเช่น ดูตัวอย่างก่อนหน้านี้กับหน้าเว็บที่มีแอตทริบิวต์ linked-blog
เพื่อสร้างการควบคุมการค้นหาที่กำหนดเองซึ่งแสดงเฉพาะหน้าเว็บที่มีลิงก์เพื่อใช้โค้ดต่อไปนี้เพื่อแทรกโอเปอเรเตอร์ more:pagemap:linked-blog:blogspot
ลงในคำค้นหาทุกๆ รายการ
... <div class="gcse-search" webSearchQueryAddition="more:pagemap:linked-blog:blogspot"></div> ...
วิธีการนี้ค่อนข้างไม่ยืดหยุ่นเนื่องจากจะเพิ่มข้อจำกัดไปยังคำค้นหาทั้งหมดที่มาจากการควบคุมนี้ หากต้องการดูตัวเลือกอื่นๆ โปรดดูเอกสารในองค์ประกอบ Programmable Search
การสำรวจฟีเจอร์อื่นๆ
ฟีเจอร์การค้นหาที่มีโครงสร้างเป็นชุดตัวเลือกอันทรงพลังที่ให้คุณควบคุมแอปพลิเคชันการค้นหาได้อย่างดีเยี่ยม อีกทั้งยังใช้แอตทริบิวต์ที่กำหนดเองเพื่อจัดลำดับและจำกัดผลการค้นหาได้อย่างมีประสิทธิภาพอย่างมากสำหรับผู้ใช้ การค้นหาที่มีโครงสร้างยังทำงานได้ดีกับฟีเจอร์อื่นๆ ของ Programmable Search Engine เช่น ข้อมูลโค้ดผลการค้นหาที่กำหนดเอง สำหรับข้อมูลเพิ่มเติม
- ดูข้อมูลเพิ่มเติมเกี่ยวกับข้อมูลที่มีโครงสร้างที่ Google รองรับได้ที่การให้ข้อมูลที่มีโครงสร้าง
- ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้ข้อมูลที่มีโครงสร้างสำหรับตัวอย่างข้อมูลได้ที่การปรับแต่งตัวอย่างข้อมูลของผลลัพธ์