2012-05-17 99 views
2

我想更改Drupal 7視圖用於暴露的下拉過濾器的默認「-Any-」文本。在Drupal 7中更改默認的'-Any-'暴露的視圖下拉選擇器過濾器

基於在這個線程的答案,

How to change the label of the default value (-Any-) of an exposed filter in Drupal Views?

我創建了一個叫做用鉤形any_exposed模塊改變:

function any_exposed_form_alter(&$form, &$form_state, $form_id) { 
    if ($form['#id'] == 'views-exposed-form-vendors-page') { 
$form['field_vendor_type_tid']['#options']['ALL'] = t('Everything'); } } 

不過這些都不會是添加另一種選擇下拉菜單中的'Everything',它不覆蓋/翻譯'-Any-'。只是爲了測試我說:

$form['submit']['#value'] = t('Search'); 

這改變了Submit按鈕從「應用」到「搜索」文本,並能正常工作。如果你不能說,我不是一個程序員,但我想我必須錯過簡單的東西。任何幫助,將不勝感激!

回答

4

這是一箇舊的帖子,但如果你仍然在尋找或任何人來尋找答案。 「ALL」必須是「所有」作爲

$form['field_vendor_type_tid']['#options']['All'] = t('Everything'); 

由於陣中擁有成員「全部」而不是「全部」(情況是這裏重要的),要添加成員「全部」,而要覆蓋'所有'。

1

使用hook_form_views_exposed_form_alter代替hook_form_alter。

function hook_form_views_exposed_form_alter(&$form, $form_state, $form_id) { 
    if ($form_id == 'views_exposed_form') { 
     $form['tid']['#options']['All'] = t('Search'); 
    } 
} 
0
function any_exposed_form_alter(&$form, &$form_state, $form_id) { 
    if ($form['#id'] == 'views-exposed-form-vendors-page') { 
$form['field_vendor_type_tid']['#options']['ALL'] = t('Everything'); } } 

作品後完全改變ALLAll

+0

歡迎來到Stack Overflow!這似乎並沒有在先前的答案中增加任何內容;如果你只是表示感謝,請不要這樣做。投入一些時間在網站上,你將獲得足夠的[特權](http://stackoverflow.com/privileges)來滿足你喜歡的答案,這就是堆棧溢出方式表示感謝。 –

0

我推薦使用Better Exposed Filters模塊,它允許您只需通過Views UI界面來完成此操作。

  1. 安裝&使模塊
  2. 編輯視圖,然後單擊「裸露形式>裸露的形式風格」
  3. 選擇「更好的暴露過濾器」
  4. 點擊「更多選項」
  5. 變化'Override'的值任意「選項標籤」
相關問題