搜索功能交互設計小結
搜索可以分為輸入、匹配和展示三部分,本文將側重與輸入與展示方面來對這三部分分別進行分析介紹。
總結一下對搜索功能的認識,搜索可歸納為輸入、匹配和展示三大部分,從我的角度側重講輸入與展示。搜索功能設計的關鍵指標是用戶搜索成功率,搜索成功率可以從用戶搜索完成后快速找到相關內容并點擊來設定。
搜索成功率的轉化漏斗就是從輸入、匹配到展示的轉化,所以為了提高關鍵指標,我們需要讓過程指標(如輸入時間、搜索準確率、召回率和搜索結果的點擊率等)完成的更好,以提高最終轉化率。
一、輸入
1.1 輸入入口
常見的搜索入口有:
①固定的輸入框:搜索入口常駐在導航欄,電商類應用或信息層級復雜的應用多采用此方式,因為搜索是一個高頻的使用功能,以及為了用戶易于發現也會在其他一級頁面展現搜索入口。
②固定的搜索 tab: 從tab進入搜索頁。與第一類方式的需求背景相同。只是表現形式的差異,這種方式可以讓信息架構更簡潔,統一的入口方便用戶“一鍵直達”。
③搜索 icon :從搜素icon打開搜索頁或展開輸入框。與①類似的設計方式,以搜索icon代替搜索輸入框。
④隱藏搜索框:需要用戶通過特定的方式來觸發顯示搜索入口,這樣的設計能實現頁面的降噪,設計理念是當用戶需要時才出現,但同時這樣的方式也是學習成本最高的。微信的小程序搜索采用此方式,但是全局搜索仍采用上述方式。
實際應用中根據搜索在產品中的使用場景,來采用不同的交互方式。一個APP中可以靈活采用以上方式的組合。
點擊入口后到文字輸入也有不同的交互方式,一種是在當前頁面直接輸入,還有一種是在跳轉另一頁面,自動獲取輸入焦點。
前者多用于搜索內容簡單的場景,通常提供搜索關鍵詞自動補齊,是一種輕量、簡潔的方式。后者在許多 APP 上比較常見,主要是因為搜索內容復雜,需要有新的頁面來承接結果和結果篩選等,而且通常搜索頁面會用于展示搜索歷史和熱門搜索詞。
1.2 關鍵詞輸入
①搜索框暗提示,告訴用戶可以通過輸入哪些內容來提高搜索準確率。
②載入搜索頁自動獲取輸入焦點,并顯示對應類型鍵盤是一種較好的交互方式。
③自動補齊:用戶輸入關鍵詞后,會在下拉列表中顯示候選詞匯,方便用戶輸入。更進一步地,提供篩選條件,可以幫助用戶更精確搜索。
④刪除:提供快捷的一鍵刪除輸入內容的功能。
⑤搜索熱詞、運營活動:搜索框是一個大流量的入口,根據運營需求,顯示推薦的搜索詞,是一種很好的增長手段。今日頭條的搜索框會輪播熱點新聞事件或廣告,讓搜索框成為類似banner一樣的廣告位。
⑥語音輸入:輸入框增加語音輸入按鈕,通過語音轉換文字代替手動輸入。但語音輸入的場景不多,甚至識別準確率不高帶來的修改成本高于手動輸入。
1.3 搜索與取消
上一步鍵入關鍵詞后,執行搜索操作。
①搜索:有自動搜索、手動搜索兩種。
自動搜索適用于結果簡單的搜索,在鍵入關鍵詞輸入后即自動顯示搜索結果,如通訊錄中的搜索等,自動搜索對服務器要求較高。復雜的搜索場景中多用手動操作,輔以自動補齊來提高輸入效率。
手動搜索的交互方式有多種交互方式,比如通過點擊“搜索”按鈕或軟鍵盤的自定義 enter 鍵來執行。后者是 iOS 系統通用的交互方式,但 Android 某些系統版本原因,會提供鍵盤外的“搜索”按鈕。
還有就是當提供輸入時自動補齊功能時,通過點擊建議候選詞,然后對建議候選詞進行搜索。
②取消:iOS 上通常點擊搜索框幫的“取消”按鈕,取消搜索并返回上一級頁面。由于上述原因,Android 設計可能會采用“返回”按鈕來執行取消和返回。
1.4 歷史記錄
①首先考慮是否需要提供歷史記錄功能,對于那些搜索過程明確的,隱私的可以考慮不提供,對于搜索使用頻繁的,搜索內容模糊的,可以考慮增加這一特性。
②展示搜索記錄的數量,通常有一個固定的上限;但在搜索引擎類應用中,如果用戶需要,會保留所有的搜索記錄。
③刪除:可以看到不同 APP 對刪除設計有不同的考慮,出于防止誤操作或提高用戶的搜索使用率,有些應用的刪除沒提供直接的入口,而且需要二次確認。
二、匹配
獲取用戶輸入的關鍵詞后,對關鍵詞進行分詞,拆分有效分析的詞語,然后將關鍵詞與內容索引庫進行關聯,得到匹配結果,再根據篩選策略來判斷需要向優先用戶展示哪些信息。
如醫療 APP 中,用戶期望通過搜索疾病來找到醫生進行在線問診。在用戶輸入疾病名稱后,將關鍵詞拆分為有效的詞組。如何匹配醫生呢,需要將醫生與疾病名稱之間建立關聯,一種常用的方式是,醫生為自己打上自己診療的疾病名稱標簽,通過關鍵詞和標簽之間的匹配來關聯到具體的醫生。
搜索中兩個重要的指標:召回率和準確率,前者表示搜索到的內容占應該被搜索內容的占比,相當于覆蓋率,后者表示搜索到的結果中相關的內容的占比。為了提高召回率,我們可以將匹配規則定為模糊搜索,顯示所有包含關鍵詞的內容,但內容的相關性可能無法保證。
三、展示
根據我們設計的搜索策略,獲取了相應的結果。將搜索結果以恰當的方式展示,是幫助用戶完成完成搜索任務的重要環節。
①自動糾錯
若有匹配的搜索結果則按照設計方式來顯示。若搜索結果不正確,則可以提供自動糾錯幫助,提供給用戶建議的搜索結果,或其他的推薦結果,盡量避免無內容。倘若無內容時,需要設計友好的缺省頁面。
②排序
默認排序:需要為所有的搜索結果設計排序規則,目的是讓相關性結果更靠前。
提供自主排序:根據業務形態,提供相關的篩選排序條件,如電商根據價格排序,銷量排序等。
③內容分類
當搜索結果有多種類型時,提供搜索結果分類展示,如在 keep搜索關鍵詞“腹肌”,會以“話題”“課程”“動態”等分類來顯示。
④結果顯示
在文本類搜索中,通常會提供關鍵詞高亮顯示功能。
梳理總結了一些常見的搜索交互中輸入、匹配與展示的案例與總結。根據我們的業務需求采用不同的方式,以及部分優化的體驗可以在版本迭代中逐步升級。
①輸入的入口要易于識別和打開,盡量讓輸入的過程更快捷;
②根據業務需求和數據反饋迭代搜索匹配策略;
③搜索結果展示是提高搜索成功率的重要環節。
本文由 @PaulGao 原創發布于人人都是產品經理。未經許可,禁止轉載
題圖來自Unsplash,基于CC0協議
學習了比其他文章寫得好,如果能講講細致匹配規則就好了
搜索記錄全部保留:愛奇藝
請問用Axure怎么實現呢?
中繼器?
對于新人 很受用了
搜索的排序規則,作者似乎沒怎么說。。
這個規則得根據你的內容來定義,相關性比較高的排前面,具體看業務。可以參考比如美團紅包的選擇彈窗,一個意思