Ця відповідь ґрунтується на https://drupal.stackexchange.com/a/208061/394
// Designate the field we want to render.
$field_name = 'body';
// Retrieve a render array for that field with the given view mode.
$render_array = $entity->$field_name->view('full');
// Render the result.
\Drupal::service('renderer')->renderRoot($render_array);
Повністю програмно візуалізувати поле, яке ви закінчуєте, зателефонувавши renderRoot()
, який встановлює окремий контекст візуалізації, ніж типові відповіді сторінки, - єдиний контекст візуалізації для запиту чи підзапиту. Ми також могли б скористатися renderPlain()
, але тоді це втече від усіх речей.
У відтворенні Drush, але не в звичайному виконанні сторінки, це кинуло попередження для мене:
PHP warning: DOMDocument::loadHTML(): Tag drupal-entity invalid in Entity, line: 1 in /drupal/core/lib/Drupal/Component/Utility/Html.php on line 286
$nodeview
є#node
ключовим