Display Suiteはhook_preprocess_node()を無視します


8

Display Suiteモジュールはhook_preprocess_node()andを完全に無視しているようhook_process_node()です。これは事実ですか?

もしそうなら、すべてのノード変数へのアクセス権を持つ最終的なレンダリングに小さな変更を加える方法は何ですか?

回答:


12

Display Suiteは、ノードのレンダリングを実際にハイジャックして、デフォルトの前処理機能を使用できない場合があります。

このモジュールには、ds.api.phpに記載されている一連の独自の前処理関数が付属しています。

この場合、のhook_ds_pre_render_alter()代わりに使用しhook_preprocess_node()て、完全なレンダー配列を介して出力を変更できます。また、$entityオブジェクトはすべての値で使用できます。


このフックで$ enitityを取得するにはどうすればよいですか
Moby M

@MobyMは変数でそれを見つけることができます$context["entity"]
Renrhaf 2018年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.