Как создать и внедрить вывод сущности сообщения, созданной модулем сообщений?


Мне нужно, учитывая mid (=Идентификатор сообщения), сгенерировать содержимое сообщения для определенного режима просмотра. Как я могу это сделать?

Это, по-видимому, усложняется тем фактом, что сообщение является сущностью (созданной модулем Сообщение), и существует несколько типов сообщений, каждый из которых имеет свои собственные поля и в значительной степени зависит от токенов.

Я надеюсь на что-то простое, например:

$message = message_load($mid, $view_mode);
$output = drupal_render(entity_view($message));

... но все, что я нашел, что загружает сообщения, похоже, полагайтесь на странные обертки и прочее, и я не смог найти рабочего решения, сколько бы я с ним ни возился.

Author: Pierre.Vriens, 2013-09-23

2 answers

Есть вариант получше:

$build = $message->buildContent('my_view_mode');
$output = drupal_render($build);
 1
Author: Andre Baumeier, 2013-12-16 17:06:26

Понял.

$message = message_load($mid);
$build = $message->view();
$build += array(
  '#theme' => 'message',
  '#entity' => $message,
  '#view_mode' => 'full',
);  
$output = drupal_render($build);
 3
Author: Mike Crittenden, 2013-09-23 03:21:27