如果你的网站原来的站内搜索功能突然失灵,访客进入站点后找不到想看的页面,这种情况并不少见。与其纠结于已经失效的旧方案,不如根据当前网站的情况,重新规划一套可用的检索路径。目前比较实际的思路有三种:借助站外搜索引擎的定向指令、制作一个简单的跳转搜索页,或者搭建独立的站内搜索系统。
在选定任何一种方案之前,不妨先站在访客的角度想一想:他们通常在什么情况下会用到搜索框?如果是售卖具体产品的站点,访客多半带着明确的型号或参数来找对应商品;如果是资讯或博客类站点,访客可能更习惯用关键词去翻找某篇历史文章。
当网站页面数量在数百条左右,且更新频率不算太高时,使用外部搜索引擎的定向检索功能基本可以应付大多数查询需求,最重要的是基本上不需要额外的资金投入。但是,如果网站内容已经积累到数千篇甚至更多,而且每天都在新增文章,访客对搜索结果的时效性和准确度会有更高的要求,此时考虑自建一套搜索系统会更为合适。
有一点需要提醒的是,原有的站内搜索产品申请通道已经关闭,网络上偶尔还能看到宣称可以代为开通的消息,多数情况下这些信息已经过时,不必再花费时间去核实或尝试。
选择搜索方案不能只凭感觉,建议从下面这几个维度去衡量哪种方式更贴合自己站点的实际状况:
一个比较务实的判断方法是:先主动执行一次定向检索,看看自家域名下有多少页面已经被收录。如果收录情况正常且内容规模适中,直接沿用外部搜索方案即可;如果发现大量页面未被收录,或者内容结构确实过于复杂,再考虑投入资源去搭建自己的搜索功能。
在动手改代码之前,先花几分钟确认几个前提条件,能够避免很多返工的情况:
确认上述准备无误后,在网站模板的合适位置插入一个搜索输入框。表单提交的地址指向外部搜索页,同时需要附带一个隐藏参数,用于限定检索范围只能来自你的域名。配置完成之后,建议用几个不同类型的词组分别测试几次,确保每次返回的条目均指向站点自身的页面。
这里有一个经常出现的操作误区需要特别说明:定向检索指令对子域名的处理是独立的。如果你的站点在多个不同的子域下运行,例如把论坛和资讯内容分放在两个域名下,就需要分别为这两个子域设置检索限定参数,无法通过一个设置自动覆盖全部子域。
不少人在实际操作时会忽略一些细节,导致搜索功能虽然上线了,但实际使用效果并不理想。以下几个问题相对常见:
基本不会。因为搜索请求是直接提交到外部搜索引擎服务器的,你的网站本身并不需要承担数据检索的计算负担,访客发起搜索后只是在等待外部页面返回结果,对站点自身页面的加载速度没有任何影响。
取决于外部引擎对站点的抓取和更新频率。如果新发布的文章往往要过一段时间才能通过定向指令被检索到,那么对于时效性要求很高的内容,访客很容易搜不到最新的内容。这种情况下更建议考虑自建搜索系统,由自己掌控索引更新的节奏。
完全可以。你可以在网站模板中通过条件判断的方式,只为指定的页面类型显示搜索框,比如只在产品列表页显示,而在文章详情页隐藏。这样可以根据不同页面的访客行为习惯进行灵活调整,不必全站保持完全一致的配置。
站内搜索失效的问题并非无解,关键在于根据网站自身的内容积攒量、访客的使用习惯以及维护人员的技术能力做一个合理的取舍。如果内容规模不大且收录状况良好,优先采用外部搜索引擎的定向检索方案,成本低且见效快;如果内容体系庞大且对结果准确度要求较高,则应该规划自建搜索的路线。无论选择哪种方式,动手操作前都建议先完成收录情况的确认和配置文件的备份,这样能最大程度减少上线后出现的新问题。