Как изменить текст ноды перед выводом в Drupal 8

Мне понадобилось сделать замену меток в тексте на галереи картинок. В результате хотелось получить функционал по типу MorfeoShow из Joomla. Подходящего модуля не нашел (плохо искал?).

Запилил такой хук в модуле:

/**
 * Implements hook_ENTITY_TYPE_view().
 */
function gallery_node_view(
	array &$build,
	\Drupal\Core\Entity\EntityInterface $entity,
	\Drupal\Core\Entity\Display\EntityViewDisplayInterface $display,
	$view_mode
){	
	$body = $build['body'][0]['#text'];
	$body = str_replace('[label]', 'Text instead label!!!', $body);
	$build['body'][0]['#text'] = $body;
}

hook_node_view alternative in Drupal 8?

In Drupal 8 changed method of use hook_node_view. It’s handled by hook_ENTITY_TYPE_view().
We altered node’s body via module in example above.

Добавить комментарий