Узел предварительной обработки: функция, которая вызывает все типы узлов

В preprocess.node.inc файл, каждый тип узла вызывает соответствующую функцию предварительной обработки. mytheme_preprocess_node__article для статьи, mytheme_preprocess_node__bio для био и т. д. Есть ли функция, которая работает на всех этих типах узлов? Я пытаюсь избежать использования функции, которая должна вызываться для каждой из этих конкретных функций предварительной обработки. Заранее спасибо!

1

Решение

Это просто hook_preprocess_node(&$variables), Как в MYTHEME_preprocess_node(&$variables), Это работает аналогично почти со всеми элементами.

  • hook_preprocess_page
  • hook_preprocess_html
  • hook_preprocess_field
  • и т.п.

Все они просто варианты из hook_preprocess_HOOK(&$variables) где HOOK заменяется любым элементом, который вы хотите.

Для некоторых элементов вы также можете присоединить имя машины экземпляра к имени функции, чтобы сохранить ваш код хорошо структурированным, когда у вас есть что-то, что необходимо предварительно обработать только для определенных типов.

  • hook_preprocess_field__FIELD_NAME
  • hook_preprocess_paragraph__PARAGRAPH_TYPE
  • и т.п.

Для узлов вы также можете выбрать режим просмотра, возможно, это работает и для полей.

  • hook_preprocess_node__NODE_TYPE__VIEW_MODE
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]