3

フォームがあり、ページの上部に表示されるヘルプテキストをプログラムで変更したいと思います。これを行うために利用できるフックはありますか?

編集:「ヘルプテキスト」とは、次のCCKフォームに入力されたテキストを意味します:admin / content / node-type / sample-form

テキストボックスの上には、次のラベルが付いています。

説明または提出のガイドライン:

textareaのIDはedit-help

以下にテキストがあります:

このテキストは、このコンテンツタイプの送信フォームの上部に表示されます。これは、ユーザーを支援または指示するのに役立ちます。

これで十分ですか?

4

1 に答える 1

3

ヘルプ テキストはモジュールのhook_help()実装によって返されるため、独自のものを追加するには、ここを参照してください。

別のモジュールによって設定されるヘルプ テキストを変更hook_help()する場合、これはもう少しトリッキーです。を見てください- これは、モジュールの実装を呼び出すtheme_help()への呼び出しを介して、ヘルプ テキストが組み立てられる場所です。menu_get_active_help()hook_help()

したがって、これに対する最初のオプションtheme_help()は、の呼び出しを省略しmenu_get_active_help()て独自の値を直接設定するか、呼び出しを行って結果を変更してから返すことにより、のオーバーライドのようです。

このtheme_help()関数はレンダリングされるページごとに呼び出され、適切なページ (必要なフォーム ページ変更します)。フォーム ページのパス構造が明確に認識できる場合は、おそらくarg()関数を使用する必要があります。

ヘルプ テキストを取得するための2 つ目のオプションは、page.tpl.php に渡される $help 変数の内容を変更することによって、1 ステップ後になります。独自のpreprocess_page(&$variables)関数を実装して、その内容を変更できます$variables['help']。正しいページにいるかどうかを確認する必要がありますが、$variables 配列には、そのページで役立つ情報がたくさん含まれています。

于 2009-08-23T18:37:50.110 に答える