Display Suiteモジュールはhook_preprocess_node()
とhook_process_node()
を完全に無視しているようです。これは事実ですか?
もしそうなら、すべてのノード変数にアクセスできるように、最終的なレンダリングに小さな変更を加える方法は何ですか?
Display Suiteは、ノードのレンダリングを実際にハイジャックして、デフォルトの前処理機能が使用されないポイントまで実行します。
モジュールには、 ds.api.php に記載されている独自の前処理関数のセットが付属しています。
この場合、hook_ds_pre_render_alter()
の代わりにhook_preprocess_node()
を使用して、完全なレンダー配列を介して出力を変更できます。また、$entity
オブジェクトはすべての値で使用できます。