CGI參數

CGI參數

搜索CGI參數

提供搜尋表單程式碼,您可將其複製並貼至網站的HTML(Design > Auto-Complete > Form Source)。

請參閱將搜索表單的HTML代碼複製到……

您也可以設定搜尋表單本身或指令碼中所列的參數。 除了下面列出的參數外,您還可以使用後端搜尋參數來控制搜尋。

請參閱後端搜尋CGI參數

搜尋請求包含基本URL。 基本URL會指出客戶正在搜尋的帳戶,以及一組CGI參數(金鑰值配對),用以指出如何傳回相關帳戶所需的搜尋結果。

基本URL與特定帳戶以及分段或即時環境相關聯。 您可以向帳戶管理員請求基本URL的多個別名。 例如,一家名為Megacorp的公司可能有兩個與其帳戶關聯的基本URL:https://search.megacorp.comhttps://stage.megacorp.com。 前者URL會搜尋其即時索引,後者URL則會搜尋其分段索引。

支援三種格式的CGI參數。 預設情況下,您的帳戶配置為使用分號分隔CGI參數,如下例所示:

https://search.megacorp.com?q=shoes;page=2

如果您願意,您可以讓帳戶管理員設定您的帳戶,使用&符號來分隔CGI參數,如下列範例所示:

https://search.megacorp.com?q=shoes&page=2

另外還支援另一種格式,稱為SEO格式,其中正斜線/用來取代分隔符號,並與下列範例中的等號相同:

https://search.megacorp.com/q/shoes/page/2

只要使用SEO格式傳送請求,所有輸出連結都會以相同格式傳回。

引導搜尋參數 範例 說明
q q=string 指定搜索的查詢字串。 此參數會映射至sp_q後端搜尋參數。 請參閱後端搜尋CGI參數
q# q#=string Faceting(在指定欄位內搜尋)是透過編號q和x參數來完成。 q參數會定義您在Facet中搜尋的詞語,如對應的編號x參數所示。
例如,如果您有兩個刻面,其名稱為size和color,則可以有q1=small;x1=size;q2=red;x2=color。此參數會映射至sp_q_exact_#後端搜尋參數。
請參 閱後端搜尋CGI參數
x 中的頁面載入要求# q#=string Faceting(在指定欄位內搜尋)是透過編號q和x參數來完成。 q參數會定義您在Facet中搜尋的詞語,如對應的編號x參數所示。
例如,如果您有兩個刻面,其名稱為size和color,則可以有q1=small;x1=size;q2=red;x2=color。此參數會映射至sp_x_#後端搜尋參數。
請參 閱後端搜尋CGI參數
集合 collection=string 指定要用於搜尋的系列。 此參數會映射至sp_k後端搜尋參數。 請參閱後端搜尋CGI參數
計數 count=number 指定顯示的結果總計。 預設值定義於Settings > Searching > Searches。. 此參數會映射至sp_c後端搜尋參數。 請參閱後端搜尋CGI參數
頁面 page=number 指定返回的結果頁。
排名 rank=field 指定用於靜態排名的排名欄位。 欄位必須是關聯性大於0的「排名」類型欄位。 此參數會映射至sp_sr後端參數。 請參閱後端搜尋CGI參數
排序 sort=number 指定排序順序。
「0」是預設值,並依關聯分數排序;「1」按日期排序;"-1"不排序。使用者可以指定sp_s參數值的欄位名稱。 例如,sp_s=title會根據標題欄位中包含的值來排序結果。 當使用欄位名稱作為sp_s參數的值時,結果會依該欄位排序,然後依相關性子排序。 若要啟用此功能,請按一下「Settings > Metadata > Definitions」。 在「定義」頁面上,按一下Add New Field或按一下Edit獲取特定欄位名稱。 在Sorting下拉式清單中,選取Ascending或Descending。 此參數會映射至sp_s後端搜尋參數。
請參 [閱後端搜尋CGI參數]。(/docs/search-promote/using/appendices/c-cgiparameters.html?lang=zh-Hant#reference_582E85C3886740C98FE88CA9DF7918E8)。

後端搜尋CGI參數

通常客戶會與稱為引導式搜尋的表現層互動。 但是,理論上可以略過引導式搜尋層,並直接使用本頁所述的CGI參數與後端核心搜尋互動。

您可以從下表中選擇後端搜索CGI參數:

單一查詢支援

多重查詢支援

範例

說明

1

sp_a

sp_a= string

指定帳號字串。 此參數為必要參數,且必須是有效的帳號字串。 您可以在「設定 > 帳戶選項 > 帳戶設定」下找到您的帳戶號碼字串。

2

sp_advanced

sp_advanced= 0 or 1

如果sp_advanced=1 隨查詢提交,則搜索模板中<search-if-advanced> 標籤和</search-if-advanced> 標籤之間的所有代碼都將用於搜索表單。 將忽略<search-if-not-advanced> 標籤和</search-if-not-advanced> 標籤之間的所有代碼。 如果提交了sp_advanced=0 (或任何其他值),則會忽略<search-if-advanced>範本區塊,並使用<search-if-not-advanced>範本區塊。

3

sp_c

sp_c= number

指定要顯示的結果總計。 預設值為 10。

4

sp_context_field

sp_context_field= field

收集指定欄位的內容相關資訊。 收集的資訊會透過<search-context> 範本標籤輸出至搜尋結果。 預設值為 body

5

sp_d

sp_d= type

指定要執行的日期範圍搜尋的類型。 類型的可能值是任意值,這表示不執行日期範圍搜索、自定義,指出應使用sp_date_range 的值確定要搜索的日期,並具體指出使用sp_start_day sp_start_month sp_start_year sp_end_day sp_end_month sp_end_year 中的值確定要搜索的日期範圍。 sp_d 只有在您的搜尋表單包含依自訂範圍(依方式 sp_date_range )或依特定開始和結束日期範圍進行搜尋的選項時,才需要此選項。

6

sp_d_#

sp_d_#= type

指定要對相應sp_q_# 查詢執行的日期範圍搜索的類型。 "#"被1到16之間的數字取代(例如sp_d_8 ,適用於編號的查詢sp_q_8 )。

您可以將type 設為任何,這表示不執行日期範圍搜尋、自訂,指出sp_date_range_# 的值用於決定要搜尋的日期,而具體指出sp_q_min_day_# sp_q_min_month_# sp_q_min_year_# sp_q_max_day_# sp_q_max_month_# sp_q_max_year_# 中的值應用於決定日期範圍。 只有當您的搜尋表單包含依自訂範圍(透過sp_date_range_# )或依特定開始和結束日期範圍進行搜尋的選項時,才需要使用sp_d_#

7

sp_date_range

sp_date_range= number

指定要套用至搜尋的預先定義日期範圍。 大於或等於零的值會指定今天之前要搜尋的天數— 例如,值"0"指定"今天",值"1"指定"今天和昨天",值"30"指定"在過去30天內"等。

低於零的值會指定自訂範圍,如下所示:

-1 = "無",與指定無日期範圍相同。

-2 = "本週",在當周的週日到週六搜尋。

-3 = "上週",在當周前一週的星期日到星期六進行搜尋。

-4 = "本月",搜尋當月日期。

-5 = "上個月",搜尋當月前一個月的日期。

-6 = 「今年」,其搜索日期在當年。

-7 = 「去年」,搜尋日期在當年前一年。

8

sp_date_range_#

sp_date_range_#= number

指定要套用至對應sp_q_# 查詢的預先定義日期範圍。 "#"被1到16之間的數字取代(例如sp_date_range_8 ,適用於編號的查詢sp_q_8 )。

大於或等於零的值指定今天之前要搜索的天數。 例如,0的值指定今天;值1表示今天和昨天;值30指定在最近30天內,依此類推。

低於零的值會指定自訂範圍,如下所示:

-1 = "無",與指定無日期範圍相同。

-2 = "本週",在當周的週日到週六搜尋。

-3 = "上週",在當周前一週的星期日到星期六進行搜尋。

-4 = "本月",搜尋當月日期。

-5 = "上個月",搜尋當月前一個月的日期。

-6 = 「今年」,其搜索日期在當年。

-7 = 「去年」,搜尋日期在當年前一年。

9

sp_dedupe_field

sp_dedupe_field= fieldname

指定一個欄位,用於刪除上的重複搜索結果。 該欄位上的所有重複結果都會從搜尋結果中移除。 例如,若是sp_dedupe_field=title ,則搜尋結果中只會顯示指定標題的頂端結果(沒有兩個結果會有相同的標題欄位內容)。 對於多值(允許清單)類型欄位,將使用整個欄位內容進行比較。 只能指定一個欄位。 欄位名稱中不允許使用「表限定詞」。

10

sp_e

sp_e= number

指定應針對查詢字串中具有數字以上字元的任何字詞,進行自動萬用字元擴增。 換言之,sp_e=5 指定應以萬用字元'*'來擴充包含5個或更多字元的字詞,例如"query"或"number",使搜尋等同於搜尋"query*"或"number*"。 字元數較少的字詞不會展開,因此搜尋「word」時不會自動擴充萬用字元。

11

sp_e_#

sp_e_#= number

指定自動通配符擴展對於具有多於數字字元的對應sp_q_# 查詢字串中的任何字進行。 換言之,sp_e_2=5 指定在sp_q_2 查詢字串中含有5個或多個字元的字詞,例如"query"或"number",應以萬用字元' * '展開,使搜尋等同於搜尋"query*"或"number*"。 字元數較少的字詞不會展開,因此在sp_q_2 中搜尋"word"時,不會自動擴充萬用字元。

12

sp_end_day、sp_end_month、sp_end_year

sp_end_day= number,sp_end_month= number, sp_end_year= number

這三重數值指定搜尋的結束日期範圍,且必須以集合形式提供。

13

sp_f

sp_f= string

指定查詢參數字串的字元集(如sp_q )。 此字串必須始終與包含搜尋表單之頁面的字元集相符。

14

sp_field_table

sp_field_ table=table: field,field...

定義由給定欄位組成的邏輯資料表。 例如,由"color"、"size"和"price"欄位組成的名為"items"的表格會定義為:

sp_field_table=items:color,size,price

邏輯表與已選中「允許清單」的欄位(在設定 > 元資料 > 定義下)一起使用時最有用。 所有將欄位名稱作為值的CGI參數和模板標籤,可以選擇指定表名,後面跟有"。" 在欄位名稱之前(例如sp_x_1=tablename.fieldname )。

例如,要搜索包含一個或多個「大」(其中項目表示為並行元資料行)大小為「大」的「紅色」項目的文檔,可以使用以下內容:

sp_q_exact_1=red&sp_x_1=items.color& sp_q_exact_2=large&sp_x_2=items.size&sp_field_table=items:color,size,price

15

sp_i

sp_i=1 sp_i=2

sp_k= string

sp_l= string

sp_q string

sp_literal= 0 or 1

sp_literal=1

sp_literal=0

sp_m= number

sp_n= number

sp_not_found_page= url

sp_p= any/all/phrase

any all phrase

phrase all sp_p

sp_p

sp_p_#= any/all/phrase

sp_q_# sp_p_8 sp_q_8 any all phrase

all phrase sp_p_# any

sp_pt= exact/equivalent/compatible

exact equivalent compatible sp_p exact sp_p all phrase equivalent sp_pt compatible

sp_pt_#= exact/equivalent/compatible

sp_q_# sp_p_8 sp_q_8 exact equivalent exact compatible sp_p_# exact sp_p_# equivalent sp_pt_# compatible

sp_q= string

sp_q_#= text

sp_q_# sp_q_1 sp_q_16

Search for: <input type="text" name="sp_q" value="great"> Search for: <input type="text" name="sp_q_1" value="books">

sp_q_day= integer value

sp_q_month= integer value

sp_q_year= integer value

sp_q_day_#= integer value

sp_q_month_#= integer value

sp_q_year_#= integer value

sp_q_day sp_q_month sp_q_year sp_q

# sp_q_day_6 sp_q_6

PublishDate

<input type="hidden" name="sp_x_1" value="PublishDate"> Search for: <input type="text" name="sp_q" value="orange">On : <input type="text" name="sp_q_day_1" size="2" value="1"> Day<input type="text" name="sp_q_month_1" size="2" value="1"> Month <input type="text" name="sp_q_year_1" size="4" value="2000"> Year 

sp_q_location=latitude/longitude OR areacode OR zipcode

sp_q_location_#= latitude/longitude OR areacode OR zipcode

sp_q_location sp_q_location_# #

sp_q_max_relevant_distance= value

sp_q_max_relevant_distance_#= value

sp_q_max_relevant_distance sp_q_max_relevant_distance_# #

sp_q_max_relevant_distance

sp_q_max_relevant_distance_#

sp_q_min_day=integer value

sp_q_min_month=integer value

sp_q_min_year=integer value

sp_q_max_day=integer value

sp_q_max_month=integer value

sp_q_max_year=integer value

sp_q_min_day_#=integer value

sp_q_min_month_#=integer value

sp_q_min_year_#=integer value

sp_q_max_day_#=integer value

sp_q_max_month_#=integer value

sp_q_max_year_#=integer value

sp_q_min_day sp_q_min_month sp_q_min_year sp_q_max_day sp_q_max_month sp_q

# sp_q_min_day_6 sp_q_6

PublishDate

<input type="hidden" name="sp_x_1" value="PublishDate">Search for: <input type="text" name="sp_q" value="orange">Between: <input type="text" name="sp_q_min_day_1" size="2" value="1"> Start Day<input type="text" name="sp_q_min_month_1" size="2" value="1"> Start Month <input type="text" name="sp_q_min_year_1" size="4" value="2000"> Start Year And: <input type="text" name="sp_q_max_day_1" size="2" value="31"> End Day <input type="text" name="sp_q_max_month_1" size="2" value="12"> End Month <input type="text" name="sp_q_max_year_1" size="4" value="2000"> End Year

sp_q_min= value

sp_q_max= value

sp_q_min_#= value

sp_q_max_#= value

sp_q_exact_#=value

sp_q_min sp_q_max sp_q_exact sp_q

# sp_q_min_8 sp_q_8

sp_q_exact_# sp_q_min_# sp_q_max_# sp_q_exact_# sp_q_min_# sp_q_max_#

sp_q_min_# sp_q_max_# sp_q_exact_# ...&sp_q_exact_1=green|red&sp_x_1=color

sp_q_nocp= 1 or 0

sp_q_nocp_#= 1 or 0

0

1

sp_q_nocp sp_q # sp_q_nocp_8 sp_q_8

sp_q_required= 1 or 0 or -1

sp_q_required_#= 1 or 0 or -1

sp_q_required sp_q

# sp_q_required_8 sp_q_8

<input type="hidden" name="sp_x_1" value="platform"> Search for: <input type="text" name="sp_q" value="calc"> Exclude: <input type="text" name="sp_q_1" value="mac win all"> <input type="hidden" name="sp_q_required_1" value="-1">

sp_redirect_ if_one_result= 0 or 1

sp_referrer= url

ro

sp_ro=body:10

sp_ro=body:9|title:9

sp_ro=title:10 title sp_ro sp_ro

sp_s= number

sp_s sp_s=title sp_s

sp_s

<input type="hidden" name="sp_s" value="artist"> <input type="hidden" name="sp_s" value="album"> <input type="hidden" name="sp_s" value="track"> Search for: <input type="text" name="sp_q" value="Music Search">

sp_field_table

sp_sr= field

sp_sr

sp_sr <input type="hidden" name="sp_sr" value="">

sp_sfvl_field= string

search-field-value-list

sp_sfvl_field

search-field-value-list

dynamic-facet-field-count dynamic-facet-field-count

sp_sfvl_df_count dynamic-facet-field-count sp_sfvl_df_count sp_sfvl_df_count

sp_sfvl_df_count sp_sfvl_df_include sp_sfvl_df_include sp_sfvl_df_count

sp_staged= 0 or 1

sp_staged=1

sp_start_day= number

sp_start_month= number

sp_start_year= number

sp_suggest_q= number

sp_suggest_q sp_q[_#]

sp_suggest_q sp_q

sp_suggest_q=1 sp_q_1

sp_t= string

sp_trace= 0 or 1

sp_stage=1

sp_w= sound-alike-enable

sp_w_control=sound-alike-control

sp_w_control

sp_w_control=0 sp_w

<input type=hidden name="sp_w_control" value="0"><input type=checkbox name="sp_w" value="exact">No Sound-Alike matching

sp_w_control=1 sp_w

<input type=hidden name="sp_w_control" value="1"><input type=checkbox name="sp_w" value="alike">Sound-Alike matching

sp_w_control sp_w

sp_x= field

sp_q sp_x

sp_x

sp_x=any sp_x

sp_x

<input type="hidden" name="sp_x" value="title"><input type="hidden" name="sp_x" value="author">Search for: <input type="text" name="sp_q" value="Great Books">

sp_x_#= field-name

sp_q_# # sp_x_8

sp_x_#

Search for: <input type="text" name="sp_q" value="great"><input type="hidden" name="sp_x_1" value="author">Search only documents written by: <input type="text" name="sp_q_1" value="Fitzgerald">

sp_x sp_x_#

<input type="hidden" name="sp_x_1" value="body"><input type="hidden" name="sp_x_1" value="keys">Search for: <input type="text" name="sp_q_1" value="flower">

使用後端搜尋CGI參數的典型範例

下列連結查詢會以"Music"作為搜尋查詢,開始搜尋,並使用所有預設參數。 請注意,URL會分割為兩行,以利閱讀。 在您的HTML中,此連結應全部在一行上。

<a href="https://search.atomz.com/search/?sp_q=Music&sp_a=sp99999999"> 
Testing...</a>

相同的功能通常以表單來定義:

<form action="https://search.atomz.com/search/"> 
<input size=12 name="sp_q" value="Music"><br> 
<input type=hidden name="sp_a" value="sp99999999"> 
<input type=submit value="Search"><br> 
</form>

在開始搜索時,通常應使用預設參數。 如此,第一頁會依相關性排序,並允許客戶選擇其他頁面和其他選項。 如果您網站上的搜尋表單包含系列選項,請將系列名稱作為參數傳入。

使用後端搜尋CGI參數的詳細範例

以下表單查詢顯示25結果,從結果10開始。 系統不會顯示摘要,排序順序是依日期,並使用名為support的系列。 只會傳回最近30天內的檔案。

<form action="https://search.atomz.com/search/"> 
<input size=12 name="sp_q"><br> 
<input type=hidden name="sp_a" value="sp99999999"> 
<input type=submit value="Search"><br> 
<input type=hidden name=sp_n value=10> 
<input type=hidden name=sp_c value=25> 
<input type=hidden name=sp_m value=0> 
<input type=hidden name=sp_s value=1> 
<input type=hidden name=sp_k value="support"> 
<input type=hidden name=sp_date_range value=30> 
</form>

本頁內容