hook_field_loadおよびhook_field_formatter_viewはいつ呼び出されますか?


7

私が実施しているhook_field_load()hook_field_formatter_view()、特定のフィールドの値に一部の文字を置換するために機能します。しかし、彼らはまったく呼ばれていないようです。私のようないくつかのコマンドを書いたexit()し、print_r($field)フックではなく、何も起こりません。

このフックはいつ呼び出されますか?(そしてこれはビューのフィールド値を変更する正しい方法ですか?)

回答:


5

hook_field_load()hook_field_formatter_view()本当にフックではありません。それらはむしろ、問題のフィールドを単独で実装するモジュールからのみ使用できるコールバックです。api.drupal.orgにある両方のフックに関するドキュメントは、何も記述していないか、漠然としているかだけではあまり明確ではありません。

このモジュールのフィールドタイプのカスタムロード動作を定義します。

Drupal 7のコードをgrepするとき、module_invoke_all()これによって呼び出されるいわゆるフックが表示されることはありません。これは、関数がフックのように処理されないことの明確な兆候です。

hook_field_attach_load()hook_field_load()実際のフックの代わりに使用できます。

これについては、http://drupal.org/node/702586での議論も参照してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.