🔎 站内全文搜索
最后更新:2026-10-02
📋 搜索页可用变量
{{.Keyword}}用户当前输入的关键词(已清洗、已截断 50 字)文本
{{.Results}}结果数组,逐条字段见下方 结果对象;无关键词或限流时为空数组数组
{{.ResultCount}}命中结果总数(= len(Results))数字
{{.SearchError}}限流时的提示文案;正常为空字符串文本
{{.PageTitle}}页面标题,形如「搜索:关键词」文本
公共变量(站点名、导航、SEO 等)与首页一致,见 02-公共标签。
🧩 结果对象({{range .Results}} 内)
{{.Type}}内容类型:
新闻 / 产品 / 案例(注意是中文,不是 news/product/case)文本{{.Title}}内容标题文本
{{.URL}}详情页链接(已带站点前缀,形态如
/news/5.htm,由后台「URL 规则」决定)URL{{.Snippet}}摘要:取 summary 去空白后截断 120 字,为空时显示「点击查看详情」文本
💻 模板示例(默认 search.html 已内置)
<!-- 搜索框 -->
<form method="get" action="/search">
<input type="text" name="q" value="{{.Keyword}}" placeholder="输入关键词搜索…">
<button type="submit">搜索</button>
</form>
{{if .SearchError}}
<p class="error">{{.SearchError}}</p>
{{end}}
{{if .Keyword}}
<p>"{{.Keyword}}" 共找到 {{.ResultCount}} 条结果</p>
<div class="results">
{{range .Results}}
<div class="result">
<h3><a href="{{.URL}}">{{.Title}}</a><span class="tag">{{.Type}}</span></h3>
<div class="snippet">{{.Snippet}}</div>
</div>
{{end}}
</div>
{{else}}
<p>请输入关键词开始搜索。</p>
{{end}}
📍 接口与范围说明
| 项 | 说明 |
|---|---|
请求参数 | 仅 ?q=关键词;无类型过滤、无分页、无 JSON 接口 |
搜索范围 | 新闻 / 产品 / 案例三类(不含单页),每类最多 20 条 |
未开启 | 后台未开启「站内搜索」时,/search 渲染错误页 error.html(提示「搜索功能未开启」) |
结果排序 | 每类按 id DESC(最新优先) |
Gitl.cn云建站 SaaS