2013-02-06 84 views
3

我有一個Drupal視圖,用於過濾分類標記字段。我希望能夠通過在「Exposed Filters」表單上顯示一個複選框來打開/關閉過濾器。 爲了說明這個問題,比如說詞彙是水果,而術語是蘋果,梨,橘子和檸檬。我可以通過創建一個說明水果是(橙子,檸檬)之一的過濾器來選擇柑橘類水果的內容。現在我想公開過濾器,讓我選擇是否應用我的柑橘類水果過濾器。如何將複選框添加到暴露的篩選器表單中,選中時將應用篩選器,並在未選中時忽略篩選器?將Drupal Views過濾器作爲開啓/關閉複選框公開,以啓用/禁用過濾器

回答

1

你會認爲Views會開箱即用。它沒有。使用更好的曝光過濾器模塊 - >http://drupal.org/project/better_exposed_filters

它甚至具有嵌套複選框/單選按鈕的分類與層次結構。

下面是一些具體到你想要做什麼文檔...

「複選框/單選按鈕:此選項可用於該有選擇數量有限的任何過濾勾選強制單選項。使用單選按鈕,取消選中它的複選框

嵌套的複選框/單選按鈕:當這個選項顯示,經常複選框選項顯示任何過濾器,它實際上只使用了具有層次分類過濾器如果你正在使用。一個選擇類型設置爲Dropdown並顯示下拉列表中顯示層次結構的taxomomy過濾器,這些過濾器將呈現爲嵌套的無序列表。勾選Force single選項以使用nes特德單選按鈕「

+0

你能解釋一下如何使用Better Exposed Filters來做我想做的事嗎?我公開了過濾器,選擇了我想要的術語,並將限制列表設置爲選定項目。然後,在BEF設置中,我選擇了複選框/單選按鈕。我沒有看到Force單選項。現在在我公開的過濾器表格中,我將我選擇的術語無線電看作單選按鈕。但那不是我想要的。我想要的是顯示一個複選框,當選中時應用/啓用過濾器,以及未選中時忽略/禁用過濾器。我不認爲更好的曝光過濾器允許我這樣做。 – Mir

3

假設您正在使用BEF並且您已經在BEF選項中爲您的暴露過濾器選中了」複選框/單選按鈕「選項,設置複選框而不是單選按鈕的方法是檢查」在配置對話框中爲您的暴露過濾器在視圖中允許多個選擇「。

+0

我想你應該詳細說明一下,如果你想避免這個答案被標記爲「這不是答案」,並最終關閉。 – davidkonrad

+1

答案確實很簡短,但解決方案本身非常簡單。我盡力擴大答案。感謝您的建議。 – alouette

3

這是可能的:

  • 的相應字段中添加過濾器(任期參照水果 你的例子)。

在配置過濾條件對話框:

  • 設置「過濾類型暴露」到「分組過濾器」。
  • 選中「允許多選」
  • 將'Widget Type'設置爲無線電。
  • 您可能想要清空'標籤'。
  • 刪除下表中除了一個以外的所有過濾器組。

在這剩下的過濾器設置:

  • 填寫標籤( '柑橘類水果' 在你的例子)。
  • 將'操作員'設置爲'是其中之一'。
  • 根據價值選擇你想過濾的值(在你的例子中的橘子和檸檬)。

這給你1個複選框,標記爲'柑橘類水果'。所以UI就在那裏。不幸的是,問題[#2224601]阻止它的工作,因爲它導致無效的查詢,但工作修補程序可用。

1

我想這裏沒有答案回答這個問題。 「我想要的是顯示一個複選框,當選中此選項時,將應用/啓用過濾器,而未選中的複選框會忽略/禁用過濾器。我認爲Better Exposed過濾器不允許我這樣做。」

你不需要「更好的暴露過濾器」來做到這一點。 您需要使用分組過濾器。

  • 點擊公開此過濾器,以遊客
  • 過濾類型暴露:分組過濾器
  • 檢查「可選」
  • 檢查「窗口小部件類型:收音機」
  • 檢查「允許多選」
  • 如果需要,刪除/清空「標籤」
  • 在底部,您將有幾行可以根據需要設置每一行。如果你想只有一個,刪除所有,但一個
  • 單擊應用

這個答案是非常晚。但我希望這有助於某人。

+0

我完全按照這些說明操作,但它仍然顯示單個無線電盒,而不是複選框。你在D7中測試過了嗎? – Sam

相關問題