如何设计好一个搜索结果列表过滤器?

最近在做产品的时候,遇到搜索结果列表过滤器的问题,要想把过滤器做的好用,是需要花费一些脑筋的,不仅要对搜索结果中数据属性要熟悉,还要巧妙的将这些属性一一配对。

搜索的作用在于按照某个关键字找到最多(最相关)的结果,而过滤器的作用在于找到最少(最接近)的结果。

过滤器设计的几个要点:
1.属性——搜索结果有哪些属性
比如说手机,它的属性就诺基亚、三星,新的、二手、CDMA、GMS等
2.分组——把属性一一归类
还是拿手机举例,诺基亚三星这些属性归为品牌条件组,新的二手的归为成色条件组,CDMA和GMS等归为网络制式;
3.同类条件组属性之间的选择和撤销问题
比如我选了诺基亚,看看没有合适的,想选择其他牌子的手机看看怎么办。

下面就介绍一些网站的过滤器。
Indeed为一家为一个职位垂直搜索引擎,招聘职位的属性比较好做,薪水范围、招聘公司以及地域是较为关注的,下面以product manager为例搜索,左边的过滤器如下图1

(图1) (图2)

我选了薪水范围和招聘公司,如图2,如果要选择其他的薪水范围或者招聘公司,只要点击已选的属性条件边的undo,就可以撤销已选的过滤条件,选择其他的。

过滤器的好处:
对于自己的过滤条件一目了然,他将这些选择的过滤条件都用红色虚线框起来的。
个人觉得缺憾是
比如选择我选择了$20,000+,它就把“薪水范围(Salary Estimate)”这个属性组给隐藏了,需要撤销之后才能看到其他属性条件。

再来看看Simplyhired的过滤器,也是一家职位垂直搜索引擎,如下图3、图4所示


(图3) (图4)

这个和indeed比起来,有了一些改良,
好处是:
我选了Title下面的Product Manager这个条件,整个Title整个条件组还存在,可以自如撤换选其他的Title条件,而自己做的一些条件组合在上面也显示出来,还可以将这些条件组合保存,以便下次快捷使用(51job的搜索条件组合我就经常会用到)
个人觉得缺憾是:
显示自己的过滤条件的区域没有indeed用红虚线框出来的明显,加上这一块区域在未有选择过滤条件的时候就存在,导致视觉上没有明显的差异突出。


(条件选定之前) (条件选定之后)

搜索结果列表过滤器的问题,一直在想高级搜索和过滤器的问题,其实我自己现在很少会用到一个网站的高级搜索,更多的是用过滤器的。

来看看高级搜索过滤器的区别:

使用高级搜索的时候,是所有条件的叠加,然后一步到位的按一个确定,事实上,我条件可以想出很多,但最终能匹配的结果,也许是零条记录与之匹配的;

过滤器用的可以说是排除法,每次只加一个条件,然后看看结果,随着你条件加上去,搜索结果就更接近你的目标。

这让我想起19楼上的哪些征婚相亲帖,上面的女孩子法的征婚帖基本是在用“高级搜索”的思维模式的,比如某女征婚,条件如下:

  • 条件1 个子在175以上,标准型,有点帅,有点酷,有点身材(太瘦太胖不要);
  • 条件2 年龄在25岁——30岁之间,杭州本地人,或者是打算在杭州定居的;
  • 条件3 有点孩子气(幼稚不要),有点成熟,有点男人味,有点幽默,有点体贴。。。
  • 条件4 有点钱,有点聪明,有点责任心,有点修养,尊敬父母,专一。。。。
  • 条件5 最好有房子、有车子,还有些存款
  • 条件6 。。。

这个是很典型的高级搜索思维模式,这些条件组合按确定键,我想最终的搜索结果一定是零。

过滤器的思维方式就相当于是以缘分(相处)来定,是一种渐进的思维模式,有些条件不满足,可以慢慢来,或者一起将这个条件创造出来,假设一个女孩子身边的男生都符合她的要求,然后通过一步步深入,女生一次次的加上一些条件,最后选出来的结果不一定是一个白马王子,但起码是一个很符合的自己的男朋友。如某女找男友,这样来进行:

先输入关键字,单身的男生,搜索出来的结果可能是一大帮身边的朋友或者熟悉的男生,然后逐次加一个条件来慢慢筛选,

加条件1 个子在175cm以上的,发现剩下的只有6名男生,其中最有感觉的A男不在其中,那就把这个条件撤销,改换169cm以上,发现A男进入其中。
好,开始加条件2,帅气,可爱,幽默,发现有4名入围,可是发现B君没有入围,B君虽然长的一般,但是有幽默感,很好相处,于是条件在修正下,B君入围,后面的条件随着交往的深入和时间的推移,定能将身边的男生过滤到很多,剩下的,就是最有可能成为未来的如意郎君。

有些女孩子在征婚时候,有些条件不一定非要男孩子满足,比如买房子这个条件,男孩子有是最好的,没有可以在未来的日子中共同创建出来。这就提醒我们在设计过滤器的时候,允许用户自己添加一些条件。

综述,好的过滤器设置应该有如下几点:
1。好多用户对于自己要找什么样子的东西,是非常模糊的,这需要一个设计者对于自己的类目的属性要非常熟悉,才能将这些条件一一展示给用户;
2 。用户是经常“反悔”,好的过滤器能允许用户能很好的撤销已选的条件,选其他的条件;
3。对于一些条件,也许过滤器中没有,好的过滤器应该让用户参与进来,一起创造出一些条件;
4。好的过滤器应该是循循善诱的,将“条件”一一列出来给用户,而不应该一下子摆出所有的条件,最先应摆出了的条件应该是最大的最能影响结果的条件;

  • Share/Bookmark

留下评论

*
To prove you're a person (not a spam script), type the security word shown in the picture. Click on the picture to hear an audio file of the word.
Click to hear an audio file of the anti-spam word