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 分面(在给定字段内搜索)是通过编号q和x参数完成的。 q参数定义要在facet中搜索的术语,由相应的编号x参数表示。
例如,如果您有两个彩块化,它们被命名为大小和颜色,则可以有类似q1=small;x1=size;q2=red;x2=color的内容。此参数映射到sp_q_exact_#后端搜索参数。
请参 阅后端搜索CGI参数
x 不支持跨域跟踪# q#=string 分面(在给定字段内搜索)是通过编号q和x参数完成的。 q参数定义要在facet中搜索的术语,由相应的编号x参数表示。
例如,如果您有两个彩块化,它们被命名为大小和颜色,则可以有类似q1=small;x1=size;q2=red;x2=color的内容。此参数映射到sp_x_#后端搜索参数。
请参 阅后端搜索CGI参数
collection(集合) collection=string 指定要用于搜索的集合。 此参数映射到sp_k后端搜索参数。 请参阅后端搜索CGI参数
count(计数) count=number 指定所显示结果的总计数。 默认值在Settings > Searching > Searches中定义。. 此参数映射到sp_c后端搜索参数。 请参阅后端搜索CGI参数
page 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-Hans#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 = "This week",从当周的星期日到星期六进行搜索。

-3 = "Last week",从当前周之前的星期日到星期六进行搜索。

-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 = "This week",从当周的星期日到星期六进行搜索。

-3 = "Last week",从当前周之前的星期日到星期六进行搜索。

-4 =“本月”,搜索日期在当月内。

-5 = "上个月",搜索当月前一个月内的日期。

-6 =“今年”,搜索日期在当年。

-7 =“去年”,其搜索日期在当前年度之前的年份。

9

sp_dedupe_field

sp_dedupe_field= fieldname

指定要对搜索结果进行重复数据消除的单个字段。 该字段上的所有重复结果都将从搜索结果中删除。 例如,对于sp_dedupe_field=title ,搜索结果中只显示给定标题的顶部结果(没有两个结果将具有相同的标题字段内容)。 对于多值(允许列表)类型字段,整个字段内容用于比较。 只能指定一个字段。 字段名称中不允许使用“table-qualifier”。

10

sp_e

sp_e= number

指定对查询字符串中的任意字进行自动通配符扩展,该字符数大于数字。 换句话说,sp_e=5 指定应使用通配符“*”展开包含5个或更多字符的单词(如“查询”或“number”),使搜索等同于搜索“查询*”或“number*”。 字符数较少的单词不会展开,因此搜索“word”时不会自动扩展通配符。

11

sp_e_#

sp_e_#= number

指定对来自相应sp_q_# 查询字符串的任意字进行自动通配符扩展,该字符串的字符数多于数字。 换句话说,sp_e_2=5 指定在sp_q_2 查询字符串中包含5个或5个以上字符的单词(如"查询"或"number")应使用通配符"* "展开,使搜索等同于搜索"查询*"或"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 )。

例如,要搜索包含大小为“large”(其中项目表示为并行的元数据行)的一个或多个“red”项目的文档,可以使用以下代码:

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参数的典型示例

以下链接查询开始使用“音乐”作为搜索查询的搜索,并使用所有默认参数。 请注意,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>

在此页面上