新人在做搜索功能时会有很多疑问,用户搜索内容是我们无法决定的,怎么能更好的为用户更快更精准的查找到用户想要的结果尤其重要,许多用户是带有相对明确的目的才会使用搜索功能,直接进行问题的搜索,若查找不到他想要的结果,也许就不会再打开APP第二次了,我们先来说一下搜索功能如何实现以及对应的实例:
一.搜索功能的基本原则
1.对用户输入信息的解读转译,即进行相关字段的检索匹配;
2.根据用户输入的信息将检索后的内容进行筛选;
3.将筛选后的内容结果进行排序(排序时需注意是否有公司重点推广的或其他运营需求,若有需要将其单独拿出来放在最前面);
二.搜索入口、搜索页面及结果的展示
如果搜索功能在产品中的比重相对比较重要,是需要重点突出的,如果搜索相对而言不是很重要或者通过监控发现搜索的使用效率不高,再或者由于内容数量的问题,搜索后有比较高的概率出现无结果,可以相对弱化其位置,移动端的搜索往往都是跳转至单独的搜索页面,根据时间顺序可以分为三个阶段:搜索前、搜索输入中、搜索完成后(需要注意这个过程中APP的交互体验,比如:搜索中完全可以加入模糊匹配,用户无需打完只打出部分文字就可以给出匹配的搜索建议词)。下面拿本人所画原型举例:
搜索结果页面需要根据APP展示内容合理安排,也可以参考一下其他APP的搜索结果页面,比如:腾讯动漫搜索结果页面(列表页平铺式),天猫(橱窗式),大家可以多翻一下APP参考一下。
入口的摆放和结果的页面展示形式在这里不给大家详细介绍了,我们重点说一下搜索功能的实现。
三.搜索的热门搜索及历史记录的设计
1.需要注意,无搜索结果的词不可出现在热门搜索中,像我在设计后台时将搜索的词加了个上下架,点击下架后词就不会再出现;
2.后台建立热门搜索的黑名单,将一些违禁词或恶意刷量词进行管控,防止引起不必要的麻烦;
3.建立白名单,方便运营对热搜展示的内容类型分布;
4.热门搜索推荐词个数的限制、文字的展示(过长怎么展示)等,历史记录的排列,历史记录所存记录的个数,下图为本人在做搜索功能时设置的要求:
另外:还需注意根据业务对这几种不同的类型进行热门关键词的占比排布(eg:展示60%的内部讲师,30%的课程名称,10%的课程分类,或者全部展示课程名称),这些需要由不同的产品形态和业务需要进行调整。
四.搜索中的设计
如何让用户快速高效的找到自己想要的课程在这里的设计中可以进行体现,满足用户只记得部分关键字等一些模糊搜索需求时的场景,同时也节省了用户的操作成本,不需要全部打完,只打出部分文字就可以给出建议搜索词或匹配词(此处可参考知乎、QQ音乐的搜索)。下面总结为以下几点:
1.搜索建议词的匹配规则,匹配后的排序(查询量的高低、建议词的销量、点击人气、阅读、评分等维度,总而言之就是把大读书人感兴趣的结果排序提前);
2.搜索建议相关词的高亮;
3.完全命中的建议结果有特殊的展示方式(QQ音乐);
4.一些操作内容可以考虑是否要前置到建议列表,如播放、收藏(简书APP);
5.拼音模糊匹配(知乎APP);
6.智能纠错(QQ音乐);
7.同义词的建议;
大家可以参考一下淘宝(细化搜索条件)、豆瓣(响应式搜索:用户每次输入停留后会自动进行搜索结果呈现,将不同分类的查找结果进行了汇聚)等等,多多留意和体验。
五.搜索后的设计
1.排序
2.筛选条件/筛选器;
3.无结果的展示,例如猜你想搜等高关联度结果推荐;
4.搜索结果的排序算法;
下面拿我所做的搜索为大家举例:
我所做的搜索主要是对课程以及讲师的搜索,首先说一下课程的搜索条件以及排序:
a.用户在进行输入搜索词后,需要依次检索匹配课程的名称、所属分类/学术分类、关键字、课程简介;
b.检索后将检索筛选结果进行排序,课程名称匹配最高的排在最前面,其次是课程的浏览量,然后是课程的类别(所属行业、所属分类),最后是课程的关键字和简介。
讲师的搜索条件及排序:
a.用户在进行输入搜索词后,需要依次检索匹配讲师的姓名、讲师简介、擅长领域、擅长行业;
b.检索后将检索筛选结果进行排序,讲师姓名匹配度最高的排在最前面,其次是关注度(或课程浏览量),然后是课程数量,另外需要注意平台是否有重点推荐的讲师。
由于APP处于起步阶段,课程数量以及讲师数量较少,将搜索条件和排序条件做了简化,最后简化为:
本人所做的搜索结果页面:
筛选页面:
希望对做搜索的盆友有帮助~~~