Programmable Search एलिमेंट कंट्रोल एपीआई

एचटीएमएल मार्कअप का इस्तेमाल करके, अपने वेब पेजों और दूसरे वेब ऐप्लिकेशन में Programmable Search Engine के कॉम्पोनेंट (खोज बॉक्स और खोज के नतीजों वाले पेज) एम्बेड किए जा सकते हैं. Programmable Search Engine के इन एलिमेंट में ऐसे कॉम्पोनेंट होते हैं जो Programmable Search के सर्वर की सेव की गई सेटिंग के आधार पर रेंडर होते हैं. साथ ही, इनमें अपनी पसंद के मुताबिक किए गए बदलाव भी शामिल होते हैं.

सभी JavaScript, एसिंक्रोनस रूप से लोड होती हैं. इससे, ब्राउज़र पर Programmable Search Engine JavaScript को फ़ेच करने के दौरान, आपका वेबपेज लोड होता रहता है.

परिचय

इस दस्तावेज़ में, आपके वेब पेज में Programmable Search Engine एलिमेंट जोड़ने का बेसिक मॉडल दिया गया है. साथ ही, इसमें एलिमेंट के कॉन्फ़िगर किए जा सकने वाले कॉम्पोनेंट और सुविधाजनक JavaScript API के बारे में जानकारी भी दी गई है.

दायरा

इस दस्तावेज़ में, Programmable Search Engine Control API के खास फ़ंक्शन और प्रॉपर्टी को इस्तेमाल करने का तरीका बताया गया है.

ब्राउज़र के साथ काम करना

Programmable Search Engine के साथ काम करने वाले ब्राउज़र की सूची यहां देखें.

दर्शक

यह दस्तावेज़ उन डेवलपर के लिए है जो अपने पेजों में Google Programmable Search की सुविधा जोड़ना चाहते हैं.

Programmable Search के एलिमेंट

अपने पेज पर Programmable Search एलिमेंट जोड़ने के लिए, एचटीएमएल मार्कअप का इस्तेमाल किया जा सकता है. हर एलिमेंट में कम से कम एक कॉम्पोनेंट होता है: एक खोज बॉक्स, खोज के नतीजों का एक ब्लॉक या दोनों. खोज बॉक्स, इनमें से किसी भी तरीके से उपयोगकर्ता का इनपुट स्वीकार करता है:

  • टेक्स्ट इनपुट फ़ील्ड में टाइप की गई खोज क्वेरी
  • यूआरएल में जोड़ी गई क्वेरी स्ट्रिंग
  • प्रोग्राम के हिसाब से, अपने-आप होने वाली प्रोसेस

इसके अलावा, खोज नतीजों का ब्लॉक इन तरीकों से इनपुट स्वीकार करता है:

  • यूआरएल में जोड़ी गई क्वेरी स्ट्रिंग
  • प्रोग्राम के हिसाब से, अपने-आप होने वाली प्रोसेस

Programmable Search के एलिमेंट इस तरह के उपलब्ध होते हैं:

तत्व प्रकार घटक ब्यौरा
स्टैंडर्ड <div class="gcse-search"> एक खोज बॉक्स और खोज के नतीजे, एक ही <div> में दिखाए जाते हैं.
दो कॉलम <div class="gcse-searchbox"> और <div class="gcse-searchresults"> दो कॉलम वाला लेआउट, जिसमें एक तरफ़ खोज के नतीजे दिख रहे हैं. दूसरी तरफ़ खोज बॉक्स दिख रहा है. अगर आपको अपने वेबपेज में, दो कॉलम में एक से ज़्यादा एलिमेंट डालने हैं, तो gname एट्रिब्यूट का इस्तेमाल करके, खोज बॉक्स को खोज के नतीजों के साथ जोड़ा जा सकता है.
सिर्फ़ खोज बॉक्स <div class="gcse-searchbox-only"> स्टैंडअलोन खोज बॉक्स.
केवल-खोज परिणाम <div class="gcse-searchresults-only"> खोज नतीजों का एक अलग ब्लॉक.

अपने वेबपेज पर कितने भी मान्य खोज एलिमेंट जोड़े जा सकते हैं. दो-कॉलम वाले मोड के लिए, सभी ज़रूरी कॉम्पोनेंट मौजूद होने चाहिए. जैसे, खोज बॉक्स और खोज नतीजों वाला ब्लॉक.

यहां एक सामान्य खोज एलिमेंट का उदाहरण दिया गया है:

<!-- 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 के एलिमेंट का इस्तेमाल करके, अलग-अलग लेआउट के विकल्प बनाना

Programmable Search Engine के कंट्रोल पैनल के 'लुक और स्टाइल' पेज पर, ये लेआउट विकल्प उपलब्ध हैं. Programmable Search के एलिमेंट का इस्तेमाल करके, लेआउट विकल्प लिखने के बारे में कुछ सामान्य दिशा-निर्देश यहां दिए गए हैं. इनमें से किसी भी विकल्प का डेमो देखने के लिए, लिंक पर क्लिक करें.

विकल्प घटक
पूरी चौड़ाई <div class="gcse-search">
छोटा <div class="gcse-search">
दो कॉलम <div class="gcse-searchbox">, <div class="gcse-searchresults">
दो पेज पहले पेज पर <div class="gcse-searchbox-only">, दूसरे पेज पर <div class="gcse-searchresults-only"> (या दूसरे कॉम्पोनेंट).
सिर्फ़ नतीजे <div class="gcse-searchresults-only">
Google की मदद से होस्ट किए गए <div class="gcse-searchbox-only">

लेआउट के विकल्पों के बारे में ज़्यादा जानकारी.

Programmable Search के एलिमेंट को पसंद के मुताबिक बनाना

रंग, फ़ॉन्ट या लिंक स्टाइल को पसंद के मुताबिक बनाने के लिए, प्रोग्राम किए जा सकने वाले सर्च इंजन के 'लुक और स्टाइल' पेज पर जाएं.

Programmable Search Engine के कंट्रोल पैनल में बनाए गए कॉन्फ़िगरेशन को ओवरराइट करने के लिए, वैकल्पिक एट्रिब्यूट का इस्तेमाल किया जा सकता है. इससे आपको पेज के हिसाब से खोज करने का अनुभव मिलता है. उदाहरण के लिए, यह कोड एक खोज बॉक्स बनाता है, जिससे नतीजे वाला पेज (http://www.example.com?search=lady+gaga) नई विंडो में खुलता है. नतीजों का यूआरएल बनाने के लिए, queryParameterName एट्रिब्यूट की वैल्यू और उपयोगकर्ता की क्वेरी स्ट्रिंग का इस्तेमाल किया जाता है.

ध्यान दें कि queryParameterName एट्रिब्यूट की शुरुआत data- से होती है. यह प्रीफ़िक्स सभी एट्रिब्यूट के लिए ज़रूरी है.

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

अगर आपने ऑटोकंप्लीट या रिफ़ाइन जैसी सुविधाओं को चालू करने के लिए, Programmable Search Engine के कंट्रोल पैनल का इस्तेमाल किया है, तो उन सुविधाओं को पसंद के मुताबिक बनाने के लिए, एट्रिब्यूट का इस्तेमाल किया जा सकता है. इन विशेषताओं का इस्तेमाल करके, पसंद के मुताबिक बनाने की सुविधा कंट्रोल पैनल में की गई सेटिंग को बदल देगी. इस उदाहरण में, दो कॉलम वाला Search एलिमेंट बनाया गया है, जिसमें ये सुविधाएं हैं:

  • इतिहास को मैनेज करने की सुविधा चालू है
  • अपने-आप पूरा होने की ज़्यादा से ज़्यादा संख्या 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 two-column होगा. इस उदाहरण में, searchbox कॉम्पोनेंट को searchresults कॉम्पोनेंट के साथ लिंक करने के लिए, storesearch नाम का इस्तेमाल किया गया है:
<div class="gcse-searchbox" data-gname="storesearch"></div>
<div class="gcse-searchresults" data-gname="storesearch"></div>

किसी ऑब्जेक्ट को वापस पाने के लिए, अगर एक से ज़्यादा कॉम्पोनेंट में एक ही gname होता है, तो Programmable Search Engine, पेज पर मौजूद आखिरी कॉम्पोनेंट का इस्तेमाल करेगा.

कोई भी
autoSearchOnLoad बूलियन इस नीति से तय होता है कि लोड हो रहे पेज के यूआरएल में एम्बेड की गई क्वेरी की मदद से खोज करनी है या नहीं. ध्यान दें कि अपने-आप खोजने की सुविधा के लिए, यूआरएल में क्वेरी स्ट्रिंग का मौजूद होना ज़रूरी है. डिफ़ॉल्ट: true. कोई भी
enableHistory बूलियन true पर क्लिक करने पर, ब्राउज़र के 'वापस जाएं' और 'आगे बढ़ें' बटन के लिए, इतिहास को मैनेज करने की सुविधा चालू हो जाती है. डेमो देखें.

searchbox

सिर्फ़ खोज बॉक्स

queryParameterName स्ट्रिंग क्वेरी पैरामीटर का नाम—उदाहरण के लिए, q (डिफ़ॉल्ट) या query. यह यूआरएल में एम्बेड हो जाएगा (उदाहरण के लिए, http://www.example.com?q=lady+gaga). ध्यान दें कि सिर्फ़ क्वेरी पैरामीटर का नाम बताने से, लोड होने पर ऑटो-सर्च ट्रिगर नहीं होता. अपने-आप खोजने की सुविधा के लिए, यूआरएल में क्वेरी स्ट्रिंग का मौजूद होना ज़रूरी है. कोई भी
resultsUrl यूआरएल नतीजों वाले पेज का यूआरएल. (डिफ़ॉल्ट रूप से यह Google का होस्ट किया गया पेज होता है.) सिर्फ़ खोज बॉक्स
newWindow बूलियन इससे पता चलता है कि नतीजों वाला पेज नई विंडो में खुलता है या नहीं. डिफ़ॉल्ट: false. सिर्फ़ खोज बॉक्स
ivt बूलियन

इस पैरामीटर की मदद से, एक बूलियन भेजा जा सकता है, जिससे Google को पता चलता है कि आप ऐसे विज्ञापनों को अनुमति देना चाहते हैं जो सहमति वाले और बिना सहमति वाले ट्रैफ़िक, दोनों के लिए अमान्य ट्रैफ़िक कुकी और लोकल स्टोरेज का इस्तेमाल करते हैं.

true अगर यह पैरामीटर मौजूद नहीं है या इसे "सही" पर सेट किया जाता है, तो हम सिर्फ़ ट्रैफ़िक के लिए अमान्य कुकी सेट करेंगे और सिर्फ़ सहमति वाले ट्रैफ़िक के लिए, लोकल स्टोरेज का इस्तेमाल करेंगे.

false अगर इस पैरामीटर को "गलत" पर सेट किया जाता है, तो हम सिर्फ़ ट्रैफ़िक के लिए अमान्य कुकी सेट करेंगे. साथ ही, सहमति वाले और बिना सहमति वाले, दोनों तरह के ट्रैफ़िक के लिए लोकल स्टोरेज का इस्तेमाल करेंगे.

डिफ़ॉल्ट: false

इस्तेमाल का उदाहरण: <div class="gcse-search" data-ivt="true"></div>

खोज के नतीजे

केवल-खोज परिणाम

mobileLayout स्ट्रिंग

इस नीति से तय होता है कि मोबाइल डिवाइसों के लिए मोबाइल लेआउट स्टाइल का इस्तेमाल किया जाए या नहीं.

enabled मोबाइल लेआउट का इस्तेमाल सिर्फ़ मोबाइल डिवाइसों के लिए करता है.

disabled किसी भी डिवाइस के लिए मोबाइल लेआउट का इस्तेमाल नहीं करता.

forced सभी डिवाइसों के लिए मोबाइल लेआउट का इस्तेमाल करता है.

डिफ़ॉल्ट: enabled

इस्तेमाल का उदाहरण: <div class="gcse-search" data-mobileLayout="disabled"></div>

कोई भी
ऑटोकंप्लीट
enableAutoComplete बूलियन यह सुविधा सिर्फ़ तब उपलब्ध होती है, जब Programmable Search Engine के कंट्रोल पैनल में ऑटोकंप्लीट की सुविधा को चालू किया गया हो. true, ऑटोकंप्लीट की सुविधा को चालू करता है. कोई भी
autoCompleteMaxCompletions पूर्णांक अपने-आप पूरा होने की ज़्यादा से ज़्यादा संख्या, दिखाई जा सकती है.

searchbox

सिर्फ़ खोज बॉक्स

autoCompleteMaxPromotions पूर्णांक अपने-आप पूरा होने की सुविधा में दिखाए जाने वाले प्रमोशन की ज़्यादा से ज़्यादा संख्या.

searchbox

सिर्फ़ खोज बॉक्स

autoCompleteValidLanguages स्ट्रिंग भाषाओं की कॉमा-सेपरेटेड लिस्ट, जिनके लिए ऑटोकंप्लीट की सुविधा चालू होनी चाहिए. यह सुविधा इन भाषाओं में काम करती है.

searchbox

सिर्फ़ खोज बॉक्स

रिफ़ाइन करने की सुविधा
defaultToRefinement स्ट्रिंग यह तब ही उपलब्ध होता है, जब Programmable Search Engine के कंट्रोल पैनल में, रिफ़ाइनमेंट लागू किए गए हों. यह दिखाने के लिए, डिफ़ॉल्ट तौर पर रिफ़ाइन करने का लेबल दिखाता है.ध्यान दें: यह एट्रिब्यूट, Google के होस्ट किए गए लेआउट के साथ काम नहीं करता. कोई भी
refinementStyle स्ट्रिंग स्वीकार की जाने वाली वैल्यू tab (डिफ़ॉल्ट) और link हैं. link का इस्तेमाल सिर्फ़ तब किया जा सकता है, जब इमेज खोजने की सुविधा बंद हो या इमेज खोजने की सुविधा चालू हो. हालांकि, वेब खोज बंद होने पर भी ऐसा हो सकता है.

खोज के नतीजे

केवल-खोज परिणाम

इमेज सर्च
enableImageSearch बूलियन यह तब ही उपलब्ध होगा, जब Programmable Search Engine के कंट्रोल पैनल में इमेज सर्च की सुविधा चालू हो.

अगर true हो, तो इमेज खोजने की सुविधा चालू हो जाती है. इमेज से जुड़े नतीजे, अलग टैब पर दिखाए जाएंगे.

खोज के नतीजे

केवल-खोज परिणाम

defaultToImageSearch बूलियन यह तब ही उपलब्ध होगा, जब Programmable Search Engine के कंट्रोल पैनल में इमेज सर्च की सुविधा चालू हो.

true होने पर, खोज नतीजों के पेज पर डिफ़ॉल्ट रूप से, इमेज के खोज के नतीजे दिखेंगे. वेब नतीजे एक अलग टैब पर उपलब्ध होंगे.

कोई भी
imageSearchLayout स्ट्रिंग यह तब ही उपलब्ध होगा, जब Programmable Search Engine के कंट्रोल पैनल में इमेज सर्च की सुविधा चालू हो.

इमेज के खोज नतीजों के पेज का लेआउट तय करता है. स्वीकार की जाने वाली वैल्यू classic, column या popup हैं.

खोज के नतीजे

केवल-खोज परिणाम

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 के कंट्रोल पैनल में इमेज सर्च की सुविधा चालू हो.

लॉजिकल ओआर का इस्तेमाल करके खोज के नतीजे फ़िल्टर करें.

अगर आपको ऐसे खोज नतीजे चाहिए जिनमें "term1" या "term2" शामिल हो, तो इस्तेमाल का उदाहरण:<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 के कंट्रोल पैनल में इमेज सर्च की सुविधा चालू हो.

खोज के नतीजे

केवल-खोज परिणाम

webSearchQueryAddition स्ट्रिंग लॉजिकल OR का इस्तेमाल करके खोज क्वेरी में अतिरिक्त शब्द जोड़े गए हैं.

इस्तेमाल का उदाहरण: <div class="gcse-search" data-webSearchQueryAddition="term1 term2"></div>

कोई भी
webSearchResultSetSize पूर्णांक, स्ट्रिंग सेट किए गए नतीजों का ज़्यादा से ज़्यादा साइज़. इमेज खोज और वेब खोज, दोनों पर लागू होती है. डिफ़ॉल्ट सेटिंग, लेआउट के हिसाब से तय होती है. साथ ही, यह इस बात पर निर्भर करता है कि Programmable Search Engine को पूरे वेब पर खोजने के लिए कॉन्फ़िगर किया गया है या सिर्फ़ बताई गई साइटों पर. ये वैल्यू स्वीकार की जाती हैं:
  • 1 से 20 तक का पूर्णांक
  • small: छोटे नतीजों के सेट के लिए अनुरोध करता है. आम तौर पर, हर पेज पर चार नतीजों के लिए अनुरोध किया जाता है.
  • large: बड़े नतीजों के सेट के लिए अनुरोध करता है. आम तौर पर, हर पेज पर आठ नतीजों के लिए अनुरोध किया जाता है.
  • filtered_cse: हर पेज पर ज़्यादा से ज़्यादा 10 नतीजों के लिए अनुरोध किया जाता है. ज़्यादा से ज़्यादा 10 पेज या 100 नतीजे दिखाए जा सकते हैं.
कोई भी
webSearchSafesearch स्ट्रिंग इससे पता चलता है कि SafeSearch की सुविधा, वेबखोज के नतीजों के लिए चालू है या नहीं. off और active वैल्यू का इस्तेमाल किया जा सकता है. कोई भी
as_filetype स्ट्रिंग चुने गए एक्सटेंशन की फ़ाइलों को नतीजों में दिखाता है. Google जिन फ़ाइल टाइप को इंडेक्स कर सकता है उनकी सूची Search Console के सहायता केंद्र पर देखी जा सकती है.

कोई भी

as_oq स्ट्रिंग लॉजिकल ओआर का इस्तेमाल करके खोज के नतीजे फ़िल्टर करें.

अगर आपको ऐसे खोज नतीजे चाहिए जिनमें "term1" या "term2" शामिल हो, तो इस्तेमाल का उदाहरण:<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.

खोज के नतीजे

केवल-खोज परिणाम

noResultsString स्ट्रिंग क्वेरी से मिलता-जुलता कोई नतीजा नहीं मिलने पर, डिफ़ॉल्ट टेक्स्ट दिखाता है. डिफ़ॉल्ट नतीजे वाली स्ट्रिंग का इस्तेमाल, स्थानीय भाषा में उपलब्ध स्ट्रिंग को सभी भाषाओं में दिखाने के लिए किया जा सकता है. हालांकि, पसंद के मुताबिक बनाई गई स्ट्रिंग का इस्तेमाल नहीं किया जा सकता.

खोज के नतीजे

केवल-खोज परिणाम

resultSetSize पूर्णांक, स्ट्रिंग सेट किए गए नतीजों का ज़्यादा से ज़्यादा साइज़. उदाहरण के लिए, large, small, filtered_cse, 10. डिफ़ॉल्ट विकल्प, लेआउट के साथ-साथ, इस बात पर निर्भर करता है कि इंजन को पूरे वेब पर खोजने के लिए कॉन्फ़िगर किया गया है या सिर्फ़ खास साइटों पर खोजने के लिए. कोई भी
safeSearch स्ट्रिंग इससे पता चलता है कि सेफ़ सर्च की सुविधा वेब और इमेज खोज, दोनों के लिए चालू है या नहीं. off और active वैल्यू इस्तेमाल की जा सकती हैं. कोई भी

कॉलबैक

कॉलबैक सीक्वेंस डायग्राम
Search Element JavaScript से कॉलबैक के सीक्वेंस डायग्राम

कॉलबैक की मदद से, खोज एलिमेंट को शुरू करने और खोजने की प्रोसेस को बेहतर तरीके से कंट्रोल किया जा सकता है. इन्हें ग्लोबल __gcse ऑब्जेक्ट की मदद से, Search Element के JavaScript के साथ रजिस्टर किया जाता है. रजिस्टर करने वाले कॉलबैक में, इस्तेमाल किए जा सकने वाले सभी कॉलबैक के रजिस्ट्रेशन की जानकारी दी गई हो.

कॉलबैक रजिस्टर करें

  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 से डीओएम में सर्च एलिमेंट रेंडर करने से पहले, इनिशलाइज़ेशन कॉलबैक को शुरू किया जाता है. अगर __gcse में parsetags को explicit पर सेट किया गया है, तो सर्च एलिमेंट JavaScript, खोज एलिमेंट को इनिशलाइज़ेशन कॉलबैक (जैसे कि कॉलबैक रजिस्टर करें में दिखाया गया है) में रेंडर करना छोड़ देता है. इसका इस्तेमाल, रेंडर करने के लिए एलिमेंट चुनने या रेंडर करने वाले एलिमेंट को तब तक रोकने के लिए किया जा सकता है, जब तक उनकी ज़रूरत न हो. यह एलिमेंट के एट्रिब्यूट भी बदल सकता है; उदाहरण के लिए, कंट्रोल पैनल या एचटीएमएल एट्रिब्यूट से कॉन्फ़िगर किए गए खोज बॉक्स को, डिफ़ॉल्ट रूप से इमेज के खोज बॉक्स में बदला जा सकता है. इसके अलावा, Programmable Search Engine के फ़ॉर्म से सबमिट की गई क्वेरी को, सिर्फ़ खोज के नतीजों वाले एलिमेंट में लागू किया जा सकता है. डेमो देखें.

इनिशलाइज़ेशन कॉलबैक की भूमिका, __gcse की parsetags प्रॉपर्टी की वैल्यू से कंट्रोल होती है.

  • अगर इसकी वैल्यू onload है, तो Search Element JavaScript, पेज पर मौजूद सभी खोज एलिमेंट को अपने-आप रेंडर करता है. इनिशलाइज़ेशन कॉलबैक अब भी शुरू किया जाता है, लेकिन यह सर्च एलिमेंट को रेंडर करने के लिए ज़िम्मेदार नहीं है.
  • अगर इसकी वैल्यू explicit है, तो Search एलिमेंट JavaScript, Search एलिमेंट को रेंडर नहीं करता. कॉलबैक उन्हें render() फ़ंक्शन का इस्तेमाल करके, चुनिंदा तरीके से रेंडर कर सकता है या go() फ़ंक्शन की मदद से, खोज के सभी एलिमेंट को रेंडर कर सकता है

इस कोड से पता चलता है कि explicit पार्सटैग और इनिशलाइज़ेशन कॉलबैक का इस्तेमाल करके, div में खोज के नतीजों के साथ खोज बॉक्स को कैसे रेंडर किया जाता है:

शुरुआत के कॉलबैक का उदाहरण

हमें आईडी वैल्यू के साथ एक <div> शामिल करना होगा, जहां हमें सर्च एलिमेंट कोड की ज़रूरत होगी:

    <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
};
की पहचान करने के लिए किया जाता है

खोज एलिमेंट लोड करना शुरू करने के लिए, यह एचटीएमएल शामिल करें. src क्लॉज़ में cx वैल्यू को अपने cx से बदलें.

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

कॉलबैक खोजें

Search Element JavaScript ऐसे छह कॉलबैक के साथ काम करता है जो सर्च कंट्रोल फ़्लो में काम करते हैं. खोज कॉलबैक, पेयर, वेब खोज कॉलबैक, और इमेज सर्च कॉलबैक से मेल खाते हैं:

  • खोज शुरू हो रही है
    • इमेज सर्च के लिए
    • वेब खोज के लिए
  • जांच पूरी हो गई
    • इमेज सर्च के लिए
    • वेब खोज के लिए
  • रेंडर किए गए नतीजे
    • इमेज सर्च के लिए
    • वेब खोज के लिए

इनीशियलाइज़ेशन कॉलबैक की तरह,खोज कॉलबैक को भी __gcse ऑब्जेक्ट में एंट्री का इस्तेमाल करके कॉन्फ़िगर किया जाता है. ऐसा, Search एलिमेंट JavaScript के शुरू होते ही होता है. स्टार्टअप के बाद __gcse में किए गए बदलावों को अनदेखा किया जाता है.

इनमें से हर कॉलबैक को, Search एलिमेंट के लिए gName को आर्ग्युमेंट के तौर पर पास किया जाता है. gname तब काम आता है, जब किसी पेज में एक से ज़्यादा खोजें होती हैं. data-gname एट्रिब्यूट का इस्तेमाल करके, खोज एलिमेंट को gname वैल्यू दें:

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

अगर एचटीएमएल, gname की पहचान नहीं कर पाता है, तो Search Element JavaScript एक वैल्यू जनरेट करता है. यह वैल्यू तब तक एक जैसी रहेगी, जब तक एचटीएमएल में बदलाव नहीं किया जाता.

इमेज/वेब सर्च-स्टार्टिंग कॉलबैक

खोज शुरू करने वाले कॉलबैक, अपने सर्वर से खोज के नतीजों के लिए खोज के नतीजे का अनुरोध करने से ठीक पहले, सर्च एलिमेंट JavaScript शुरू कर देते हैं. इसका एक उदाहरण है, क्वेरी में बदलावों को कंट्रोल करने के लिए, दिन के स्थानीय समय का इस्तेमाल करना.

searchStartingCallback(gname, query)
gname
Search Element की पहचान करने वाली स्ट्रिंग
query
उपयोगकर्ता का डाला गया मान (शायद खोज एलिमेंट JavaScript से बदला गया है.)

कॉलबैक वह वैल्यू दिखाता है जिसे इस खोज के लिए क्वेरी के तौर पर इस्तेमाल किया जाना चाहिए. अगर यह कोई खाली स्ट्रिंग दिखाता है, तो रिटर्न वैल्यू को अनदेखा कर दिया जाता है. साथ ही, कॉल करने वाला बिना बदलाव की गई क्वेरी का इस्तेमाल करता है.

इसके अलावा, आपके पास कॉलबैक फ़ंक्शन को __gcse ऑब्जेक्ट में रखने या JavaScript का इस्तेमाल करके, ऑब्जेक्ट में डाइनैमिक तौर पर कॉलबैक जोड़ने का विकल्प है:

window.__gcse['searchCallbacks']['web']['starting'] = function(gname, query) {...};
उदाहरण खोज शुरू होने वाली कॉलबैक

उदाहरण के लिए, Search पर कॉलबैक शुरू करने की सुविधा में, खोज शुरू करने के उदाहरण में, दिन के अलग-अलग समय के हिसाब से क्वेरी में 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>

इमेज/वेब खोज के नतीजों के लिए तैयार कॉलबैक

इन कॉलबैक को, Search एलिमेंट JavaScript के प्रमोशन और नतीजों को रेंडर करने से ठीक पहले शुरू किया जाता है. इस्तेमाल के उदाहरण में, ऐसा कॉलबैक होना चाहिए जो प्रमोशन को रेंडर करता है और नतीजों को ऐसी स्टाइल में रेंडर करता है जिसे सामान्य तौर पर पसंद के मुताबिक बनाने की सुविधा के साथ तय नहीं किया जा सकता.

resultsReadyCallback(gname, query, promos, results, div)
gname
Search Element की पहचान करने वाली स्ट्रिंग
query
क्वेरी, जिसकी वजह से ये नतीजे मिले
promos
प्रमोशन से जुड़े ऑब्जेक्ट का कलेक्शन, जो उपयोगकर्ता की क्वेरी से मेल खाने वाले प्रमोशन से मेल खाता है. प्रमोशन ऑब्जेक्ट की परिभाषा देखें.
results
नतीजे वाले ऑब्जेक्ट की कलेक्शन. रिज़ल्ट ऑब्जेक्ट की परिभाषा देखें.
div
डीओएम में मौजूद एक एचटीएमएल डीव, जहां सर्च एलिमेंट आम तौर पर प्रमोशन और खोज के नतीजे शामिल करता है. आम तौर पर, सर्च एलिमेंट JavaScript इस डीव को पॉप्युलेट कर सकता है, लेकिन यह कॉलबैक, नतीजों की अपने-आप रेंडरिंग को बंद कर सकता है. साथ ही, नतीजों को रेंडर करने के लिए, इस div का इस्तेमाल कर सकता है.

अगर यह कॉलबैक true वैल्यू दिखाता है, तो Search एलिमेंट JavaScript अपने पेज-फ़ुटर के काम पर ले जाता है.

नतीजों के लिए तैयार कॉलबैक के उदाहरण

नतीजों के लिए तैयार कॉलबैक में मौजूद resultsReady कॉलबैक, प्रमोशन और नतीजों के डिफ़ॉल्ट प्रज़ेंटेशन को बदल देता है. इसके लिए, बहुत आसानी से बदलाव किया जा सकता है.

नतीजों के लिए तैयार कॉलबैक का उदाहरण
    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>

खोज शुरू करने वाले कॉलबैक की तरह ही, कॉलबैक को __gcse ऑब्जेक्ट में रखने के कई तरीके ऊपर दिए गए हैं.

इमेज/वेब खोज नतीजे-रेंडर किए गए कॉलबैक

खोज एलिमेंट JavaScript से पेज फ़ुटर को रेंडर करने से ठीक पहले, इन कॉलबैक को शुरू किया जाता है. इस्तेमाल के उदाहरणों में एक कॉलबैक शामिल होगा, जो नतीजे में ऐसा कॉन्टेंट जोड़ता है जो Search एलिमेंट में नहीं दिखता. उदाहरण के लिए, इसे सेव करें चेकबॉक्स या अपने-आप रेंडर न होने वाली जानकारी या ज़्यादा जानकारी के लिए बटन जोड़ने वाला कॉलबैक.

अगर रेंडर किए गए नतीजे के कॉलबैक में, ऐसी जानकारी की ज़रूरत होती है जो नतीजों के लिए तैयार कॉलबैक के promos और results पैरामीटर में थी, तो यह इन दोनों के बीच पास कर सकता है, जैसे कि:

callback(gname, query, promoElts, resultElts);
gname
Search Element की पहचान करने वाली स्ट्रिंग
query
खोज स्ट्रिंग.
promoElts
प्रमोशन वाले DOM एलिमेंट की कलेक्शन.
resultElts
DOM एलिमेंट की एक कलेक्शन, जिसमें नतीजे शामिल हैं.

कोई रिटर्न वैल्यू नहीं है.

में पास किए जाते हैं.
उदाहरण के तौर पर, रेंडर किए गए कॉलबैक

नतीजे रेंडर किए गए कॉलबैक के उदाहरण में दिए गए resultsRendered कॉलबैक में, हर प्रमोशन और नतीजे के लिए एक डमी रखें चेकबॉक्स जोड़ा जाता है.

नतीजों के रेंडर होने पर कॉलबैक का उदाहरण
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 सेट अप करते समय, इस तरह के कोड का इस्तेमाल करके इस कॉलबैक को इंस्टॉल करें __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>

कॉलबैक के ज़्यादा उदाहरण

कॉलबैक के अन्य उदाहरण, कॉलबैक के अन्य उदाहरण दस्तावेज़ में देखे जा सकते हैं.

प्रमोशन और नतीजे की प्रॉपर्टी

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 के ऑब्जेक्ट की कैटगरी ढीली है. इस कलेक्शन में मौजूद एंट्री की वैल्यू को खोज के हर नतीजे के लिए, वेब पेज पर मिलने वाले स्ट्रक्चर्ड डेटा से कंट्रोल किया जाता है. उदाहरण के लिए, समीक्षा करने वाली वेबसाइट पर ऐसा स्ट्रक्चर्ड डेटा हो सकता है जो इस कलेक्शन एंट्री को richSnippet में जोड़ता हो:

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

Programmable Search Element Control API (V2)

google.search.cse.element ऑब्जेक्ट, इन स्टैटिक फ़ंक्शन को पब्लिश करता है:

फ़ंक्शन ब्यौरा
.render(componentConfig, opt_componentConfig) खोज एलिमेंट रेंडर करता है.

पैरामीटर

नाम ब्यौरा
componentConfig Programmable Search Element के कॉम्पोनेंट का कॉन्फ़िगरेशन. इनके बारे में जानकारी देती है:
  • div (स्ट्रिंग|एलिमेंट): <div> का id या div एलिमेंट, जिसमें Programmable Search Element को रेंडर करना है.
  • tag (स्ट्रिंग): रेंडर किए जाने वाले कॉम्पोनेंट का टाइप. (opt_componentConfig दिए जाने पर, tag एट्रिब्यूट की वैल्यू searchbox होनी चाहिए.) इन वैल्यू को इस्तेमाल करने की अनुमति है:
    • search: खोज बॉक्स और खोज के नतीजे, एक साथ दिखाए जाते हैं
    • searchbox: Programmable Search Element का खोज बॉक्स कॉम्पोनेंट.
    • searchbox-only: एक अलग खोज बॉक्स, जिसे opt_componentConfig की ओर से दो कॉलम वाले लेआउट में तय किए गए खोज नतीजों के ब्लॉक के साथ जोड़ा जाएगा.
    • searchresults-only: खोज के नतीजों का स्टैंडअलोन ब्लॉक. खोजें, यूआरएल में एम्बेड किए गए क्वेरी पैरामीटर से या प्रोग्राम के हिसाब से, अपने-आप होने वाली प्रोसेस से ट्रिगर होती हैं.
  • gname (स्ट्रिंग): (ज़रूरी नहीं है) इस कॉम्पोनेंट के लिए एक खास नाम. अगर यह नहीं दिया जाता है, तो Programmable Search Engine अपने-आप gname जनरेट करेगा.
  • attributes (ऑब्जेक्ट): कुंजी:वैल्यू के जोड़े के तौर पर वैकल्पिक एट्रिब्यूट. इस्तेमाल किए जा सकने वाले एट्रिब्यूट.
opt_componentConfig ज़रूरी नहीं. दूसरा कॉम्पोनेंट कॉन्फ़िगरेशन आर्ग्युमेंट. इसका इस्तेमाल, TWO_COLUMN मोड में searchresults कॉम्पोनेंट की जानकारी देने के लिए किया जाता है. इनके बारे में जानकारी देती है:
  • div (स्ट्रिंग): <div> की id या div एलिमेंट, जिसमें एलिमेंट को रेंडर किया जाना है.
  • tag (स्ट्रिंग): रेंडर किए जाने वाले कॉम्पोनेंट का टाइप. opt_componentConfig दिए जाने पर, tag एट्रिब्यूट की वैल्यू searchresults होनी चाहिए. इसके अलावा, componentConfig के tag एट्रिब्यूट की वैल्यू searchbox होनी चाहिए.
  • gname (स्ट्रिंग): (ज़रूरी नहीं है) इस कॉम्पोनेंट के लिए एक खास नाम. अगर डेटा नहीं दिया जाता है, तो Programmable Search Engine इस कॉम्पोनेंट के लिए, अपने-आप gname जनरेट करेगा. अगर यह दिया गया है, तो यह componentConfig के gname से मेल खाना चाहिए.
  • attributes (ऑब्जेक्ट): कुंजी:वैल्यू के जोड़े के तौर पर वैकल्पिक एट्रिब्यूट. इस्तेमाल किए जा सकने वाले एट्रिब्यूट.
.go(opt_container) बताए गए कंटेनर में सभी खोज एलिमेंट टैग/क्लास को रेंडर करता है.

पैरामीटर

नाम ब्यौरा
opt_container वह कंटेनर जिसमें रेंडर करने के लिए, खोज एलिमेंट वाले कॉम्पोनेंट होते हैं. कंटेनर (स्ट्रिंग) के आईडी या खुद एलिमेंट का आईडी बताएं. अगर पेज को हटाया जाता है, तो पेज के body टैग में मौजूद Programmable Search Element के सभी कॉम्पोनेंट रेंडर किए जाएंगे.
.getElement(gname) gname से एलिमेंट ऑब्जेक्ट की जानकारी मिलती है. अगर वह नहीं मिलता है, तो 'शून्य' डालें.

दिखाए गए element ऑब्जेक्ट में ये एट्रिब्यूट शामिल हैं:

  • gname: एलिमेंट ऑब्जेक्ट का नाम. अगर पैरामीटर नहीं दिया जाता है, तो Programmable Search Engine, ऑब्जेक्ट के लिए अपने-आप gname जनरेट करेगा. ज़्यादा जानकारी.
  • type: एलिमेंट का टाइप.
  • uiOptions: एलिमेंट को रेंडर करने के लिए इस्तेमाल किए गए आखिरी एट्रिब्यूट.
  • execute - फ़ंक्शन(स्ट्रिंग): प्रोग्रामैटिक क्वेरी को पूरा करता है.
  • prefillQuery - फ़ंक्शन(स्ट्रिंग): क्वेरी को एक्ज़ीक्यूट किए बिना, क्वेरी स्ट्रिंग की मदद से खोज बॉक्स को पहले से ही भर देता है.
  • getInputQuery - फ़ंक्शन(): इनपुट बॉक्स में दिखाई गई मौजूदा वैल्यू दिखाता है.
  • clearAllResults - काम(): अगर खोज बॉक्स है, तो उसे छोड़कर बाकी सब कुछ छिपाकर, कंट्रोल को हटा देता है.

यह कोड, सर्च एलिमेंट "element1" में क्वेरी "news" को एक्ज़ीक्यूट करता है:

var element = google.search.cse.element.getElement('element1');
            element.execute('news');
.getAllElements() gname का इस्तेमाल करके, बनाए गए सभी एलिमेंट ऑब्जेक्ट का मैप दिखाता है.