2010-11-23 70 views
1

對於在Drupal中使用的主題搜索框,文本字段如下:Drupal搜索主題表單 - 更改輸入類型?

<input type="text" class="form-text" id="edit-search-theme-form-1"> 

正如我開發移動網站,我想改變文本字段的輸入類型進行搜索。

有人會知道如何去做這個改變?

謝謝,馬克。

回答

0

你將不得不做HTML5,它實際上有一個輸入類型「搜索」,但我不知道移動瀏覽器當前的HTML5兼容性狀態是什麼。您可以嘗試使用主題更改輸入類型。

0

這是不可能的標準方式。 Drupal的形式API控制的列表,請訪問:http://api.drupal.org/api/drupal/developer--topics--forms_api_reference.html/6

文本字段用於呈現<輸入類型=「文本」

也許在page.tpl.php中文件在下面的技巧你主題會得到你所需要的:在你的page.tpl.php中下面的代碼行後

,立即

<?php if ($search_box): ?>

加,

<?php $search_box = preg_replace ("/<input type=\"text\"/", "<input type=\"search\"", $search_box); ?>

它爲我工作。嘗試。 :-)

0

還有一個很好的解決這個問題,在D6和D7效果很好:

/** 
* Changes the search form to use the "search" input element of HTML5. 
*/ 
function tao_preprocess_search_block_form(&$vars) { 
    $vars['search_form'] = str_replace('type="text"', 'type="search"', $vars['search_form']); 
} 

這段代碼進入你的主題的template.php文件中。在我的情況下,它是tao,這就是爲什麼函數以「tao_」開頭的原因。您必須將其重命名爲與您的主題名稱相匹配。

+0

確實可以爲您工作嗎?我將它添加到template.php文件中,將tao添加到我的主題名稱中,但未改變輸入類型 – 2011-03-16 13:51:16

0

確保您在template.php中添加任何新的預處理函數後清除主題緩存