2010-11-23 16 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を入れましたが、入力タイプは変更されていません –

0

template.phpに新しいプリプロセス関数を追加した後、テーマキャッシュをクリアしてください。

関連する問題