最近在做产品的时候,遇到搜索结果列表过滤器的问题,要想把过滤器做的好用,是需要花费一些脑筋的,不仅要对搜索结果中数据属性要熟悉,还要巧妙的将这些属性一一配对。
搜索的作用在于按照某个关键字找到最多(最相关)的结果,而过滤器的作用在于找到最少(最接近)的结果。
过滤器设计的几个要点:
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。好的过滤器应该是循循善诱的,将“条件”一一列出来给用户,而不应该一下子摆出所有的条件,最先应摆出了的条件应该是最大的最能影响结果的条件。 |