跳至主内容
版本:旧版 (v1.x - v2.x)

优化搜索效果的建议

非官方测试版翻译

本页面由 PageTurner AI 翻译(测试版)。未经项目官方认可。 发现错误? 报告问题 →

DocSearch 几乎适用于所有网站,但我们发现某些站点结构能带来更相关的搜索结果或更快的索引速度。本文将分享如何充分发挥 DocSearch 效能的实用技巧。

使用 sitemap.xml

如果在配置中提供站点地图,DocSearch 将直接通过它浏览待索引页面。页面仍会被爬取,这意味着我们会提取所有合规链接。

若尚未配置,我们强烈建议为网站添加 sitemap.xml。这不仅会加速索引过程,还能让您更灵活地控制纳入索引的页面范围。

站点地图在其他方面也被视为最佳实践,包括 SEO(了解更多站点地图信息)。

构建信息层级结构

DocSearch 在结构化文档中表现更佳。结果相关性基于内容的结构化层次。简言之,我们通过解析页面的 <h1><h6> 标题推测信息层级,该结构为记录提供上下文信息。

文档通常先阐述通用概念再深入细节,这体现在 HTML 标记的标题层级中。例如,同一页面中 <h4> 标题下的概念比 <h2> 标题下的更具体。信息在页面中出现越早,其排名权重越高。

DocSearch 利用此结构优化结果相关性并提供潜在过滤功能。遵循此模式的文档通常在搜索结果中具有更佳相关性。

确定文档树的合理深度及内容拆分方式是最复杂的任务之一。对于大型页面,建议设置4个层级(从 lvl0lvl3),至少需三个不同层级。

请注意:您并非必须使用 <hX> 标签,也可用类名替代(例如 <span class="title-X">)。届时需更新 selectors 配置项。

为内容容器设置唯一类名

DocSearch 基于 HTML 结构提取内容。建议为包裹文本内容的 HTML 元素添加自定义 class,这将帮助选择器精准定位相关内容。

此唯一标识符可使配置更健壮,确保索引内容均为有效内容。我们发现这是排除页眉、侧边栏和页脚等无关搜索内容的最可靠方法。

为标题添加锚点

使用标题时(如前所述),建议为每个标题添加自定义锚点。锚点通过 HTML 属性(nameid)在标题上定义,使浏览器能直接跳转至页面指定位置。通过 # 加锚点的链接即可访问。

DocSearch 将识别这些锚点,并自动将用户导航至所选搜索结果最近的锚点位置。

在导航中标记活动页面

若使用多级导航,建议为每个活动层级标记自定义 CSS 类。这有助于 DocSearch 准确识别当前页面在网站层次结构中的位置。

例如,若 troubleshooting.html 页面位于侧边栏的"安装"菜单下,建议为侧边栏中"安装"和"故障排除"链接添加自定义 CSS 类。

CSS 类名无特定要求,只需确保其可作为 CSS 选择器的一部分使用。

保持内容一致性

一致性是构建高质量文档的基石。它能提升文档的可读性,缩短用户获取目标信息的时间。文档主题应具备可识别性结构框架需清晰界定。

层级结构应保持统一规模。务必避免孤立记录(如引言/结论或旁注内容)。选择器需对所有文档高效运作,准确突出层级关系。它们必须按层级匹配目标元素,警惕因匹配意外冗余元素引发的边缘效应

选择器应精准匹配真实文档页面的内容,对其他页面(如着陆页、目录页等)保持无效。强烈建议维护者为包含实际文档内容的主DOM容器定义专属类名(例如.DocSearch-content)。

鉴于文档应具备交互性,关键要使用标准化术语表述概念。这种术语复用结合搜索体验(下拉框),可实现边输入边学习的效果。信息获取方式引导用户直达目标知识时至关重要,也可善用同义词功能

通过唯一性避免重复

文档阅读越耗时,用户使用意愿越低。必须消除模糊点和笼统表述。大而全的文档不仅无益,反而会带来混淆反效果

重复内容会产生噪音误导用户。因此应聚焦核心内容,避免站内重复(如包含全量信息的着陆页/汇总页)。若因跨数据集(如多版本)需保留重复内容,请使用分面功能。

简洁性

思路清晰的内容方能表达得清晰简洁。

强烈推荐阅读这篇关于如何为技术文档构建实用搜索的博文。