Мой пользовательский модуль определяет пользовательский объект, который расширяет класс EntityAPIController. Мне удалось заставить его в основном работать, то есть отображать поля и т. Д. Через мой пользовательский файл tpl.php. Но я хотел бы создать mymodule_preprocess_entity
функцию (как предложено здесь ) для добавления пользовательских переменных в файл tpl.php. Но такая функция не работает (не вызывается).
Кроме того, когда я отображал эту сущность, я заметил, что функция template_preprocess_entity(&$variables)
из entity.module тоже не работает.
Что еще нужно определить, чтобы сделать функцию предварительной обработки для вызываемой пользовательской сущности?
Ответы:
Я создал общую
mymodule_preprocess(&$variables, $hook)
функцию, и она показала, что конкретное имя функции должно бытьmymodule_preprocess_myentity
. Гдеmyentity
собственное имя сущности.Итак, этот код работает для меня:
источник
Более общий подход:
К сожалению
module_implements()
, не проверяет, реализует ли активная тема обработчик препроцесса.источник