网站的opensearch.xml文件怎么写

admin 百科 15
opensearch.xml 是用于声明网站站内搜索功能的标准 XML 文件,需置于根目录,并通过 标签在 HTML 中声明;其核心字段包括 ShortName、Description、Url(含 {searchTerms} 占位符)、InputEncoding 和 Language。

网站的opensearch.xml文件怎么写-第1张图片-佛山资讯网

opensearch.xml 是一个标准的 XML 文件,用来告诉浏览器或搜索引擎:你的网站支持站内搜索,并提供搜索接口的元信息。它通常放在网站根目录(比如 https://example.com/opensearch.xml),用户在浏览器地址栏输入关键词后按 Tab 键,或在某些浏览器中点击搜索框时,就能直接用你的站内搜索。


基本结构和必填字段

一个最小可用的 `opensearch.xml` 至少包含以下元素:

  • ShortName:简短名称(最多 16 字符),显示在浏览器搜索框里
  • Description:描述(建议简洁说明搜索范围,如“搜索本站文章”)
  • Url:搜索请求的模板 URL,必须含 {searchTerms} 占位符
  • InputEncoding:推荐设为 UTF-8
  • Language:语言代码,如 zh-CNen-US

示例(适配中文网站):

<?xml version="1.0" encoding="UTF-8"?>
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/">
  <ShortName>我的博客</ShortName>
  <Description>搜索本站所有文章</Description>
  <Tags>blog search</Tags>
  <Contact>admin@example.com</Contact>
  <Url type="text/html" template="https://example.com/search?q={searchTerms}" />
  <InputEncoding>UTF-8</InputEncoding>
  <Language>zh-CN</Language>
</OpenSearchDescription>

登录后复制


Url 模板怎么写才有效

关键在 <url></url> 标签里的 template 属性,它定义了用户搜索时浏览器实际发起的请求地址。

  • 必须使用 {searchTerms}(不能拼错,区分大小写)作为关键词占位符
  • 支持多个参数,例如:https://example.com/search?q={searchTerms}&site=blog
  • 如果网站用 GET 参数传递搜索词,就按实际参数名写(如 qkeywords 等)
  • type 属性推荐用 text/html;若提供 JSON API 可加 application/json,但浏览器只认 HTML 类型用于地址栏搜索

常见错误:

  • 写成 {searchterm}{query} → 浏览器无法替换,搜索失效
  • URL 中没做 URL 编码 → 实际搜索含空格或特殊字符会出错(浏览器会自动编码,你只需写原始模板)
  • 用了相对路径(如 /search?q=...)→ 必须是绝对 URL(含协议和域名)

如何让浏览器自动发现这个文件

仅放好 `opensearch.xml` 不够,还需在网站每个页面的 `

标签: vue word html js json 编码 浏览器 app edge 搜索引擎 邮箱 opensea

发布评论 0条评论)

还木有评论哦,快来抢沙发吧~