回答:
これを行う方法がいくつかあります。
おそらく他の要件に合わせてフォームを変更する際の柔軟性が高まるため、おそらくオプション1を選択します。
hook_form_alter()
http://api.drupal.org/api/drupal/modules--system--system.api.php/function/hook_form_alter/7
デフォルトのテキストを空に設定するなど、任意のフォームに接続して変更できます。以下は、有効な要素についてのヘルプです。
http://api.drupal.org/api/drupal/developer--topics--forms_api_reference.html
開始する最良の方法は、mymodule_form_alter()
関数を作成し、ページの上部に表示されるように$form_id
使用方法を印刷してフォームIDを判別するprint
ことです。(さらに良いことに、Dvelalステータスメッセージに出力するにはdevelモジュールを使用してください)。フォームIDがわかったら、を追加して、if
そのフォームのみを操作するようにし、配列を変更して不要なデフォルト値を削除できます。
実装例については、ほとんどすべてのモジュールを見てください。多くのモジュールがこのフックを使用しています。頭の上の具体的な例は思いつきませんが、負荷はあります。
編集:これは問題についての良いLullabotブログ投稿です...この点でDrupal 6とDrupal 7の間に大きな違いはありません。AFAIK:http ://www.lullabot.com/articles/modifying-forms-drupal-5- および-6
hook_form_FORM_ID_alter()
。これはhook_form_alter()
、すべての実装の前に呼び出され、フック関数に渡されるパラメーターの値を確認する必要はありません。
カスタムモジュールを使用することを決定したが、明確な理由もなく[ 名前]入力ボックスに[ 匿名]が表示され、それらのhook_form_alter
(またはhook_form_comment_form_alter
)は大丈夫であるという人へのメモです。
のモジュールJavascriptが以前に使用した名前を保存するために使用するcomment_info_name
Cookie を必ず削除してくださいcomment
。見つけるのに少し時間がかかりました...
ここではすべて1か所で説明されています。http://jan.tomka.name/blog/how-remove-anonymous-name-comment-form
これは、私がJavaScriptで行う一種の簡単な調整です。
$(document).ready(function() {
var editbox = $('#edit-name');
if (editbox.val() == 'Anonymous' {
editbox.val('');
}
});
テーマのどこかにポップし、ページが読み込まれると名前フィールドがクリアされます。
Anonymous
JavaScriptが無効になっているとまだ言っているボックスは、優雅な低下の範疇に入ると思います。質問は「それを行う最も簡単な方法は何ですか?」でした。、そしてテンプレートに数行のJavaScriptを追加する方が、モジュールを作成するよりも簡単だと思います。