2017-01-23 139 views
2

我在一個小的內部網使用的Plone 4.3和搜索FIEL讓我覺得很煩。 實時搜索可以正常工作,但是當您按回車時,搜索會顯示不同的結果。結果可以通過在文本的末尾添加「」獲得,然後顯示與livesearch相同的結果。 那麼請問,是TI可以自動插入「」甩賣,以達到相同的結果實況搜索進入關鍵是什麼時候?自定義的Plone搜索

感謝

PD:我的英語不太好,對不起

+1

我建議你在這裏提交錯誤報告:https://github.com/ plone/Products.CMFPlone/issues – alepisa

+0

有關:http://stackoverflow.com/questions/19731887/customize-the-search-portlet-in-plone-for-specific-content-types/19763519,搜索「克服對於您登錄搜索表單的情況,您可以使用搜索portlet的高級搜索,鏈接點擊或返回鍵擊中search-portlet的輸入字段的方法。 –

回答

6

活搜索顯示結果作爲用戶輸入字母,它是有道理的所有單詞開始與執行查詢(例如,如果你輸入了「汽車」,你會得到包含「汽車」一詞的結果,但也是「小心」的,因爲我們不知道你是否已經完成了字母的輸入)。 在高級搜索中,當您搜索「汽車」時,系統知道您對關於「汽車」的結果感興趣,而不是「謹慎」。 所以這就是爲什麼2個搜索工作方式不同。

和Plone假設,當我們按下的實況搜索輸入,我們已經完成了進入我們要找的話,那麼它重定向到使用我們已經進入了精確的搜索項高級搜索頁面。

它在搜索框的viewlet實現,你會發現代碼plone.app.layout/plone/app/layout/viewlets/searchbox.pt,正如你可以看到它是一個非常簡單的表單提交了「SearchableText」輸入「@@搜索」。

對我來說,來定製它的最簡單的方法是添加一個小JS這樣的地方在你的皮膚:

$('#portal-searchbox form').submit(function(e) { 
    var input = $('#portal-searchbox input[name="SearchableText"]'); 
    input.val(input.val() + '*'); 
}); 
+0

嘿,很酷,這是我第一次看到不同行爲原因的解釋。你的解決方案比我在任務評論中引用的答案thx更優雅! –

+0

是的,那就是我一直在尋找的東西。非常感謝你。 –