Хочу добавить внутрь пункта меню кусочек html, один дополнительный span.
Span добавлятся, но экранируется и не рендерится.
Т.е. должно быть так:
Но у меня выводится "голый" html (не рендерится) при использовании KnpMenuBundle c safe_label = true и alow_safe_labels = true:
Код рендеринга меню в .twig:
{{ knp_menu_render('AppBundle:Builder:navBarMenu', {'allow_safe_labels': true}) }}
Код меню билдера:
$menu->addChild($dropdown->getName(), [ 'uri' => '#', 'class' => 'dropdown active', 'childrenAttributes' => [ 'class' => 'dropdown active', 'data-toggle' => 'dropdown', 'role' => 'button', 'aria-haspopup' => true, 'aria-expanded' => false, ], 'label' => $dropdown->getName() . '<span class="caret"></span>', 'extras' => ['safe_label' => true] ])
Даже с минимальным кодом не работает.
$menu->addChild('title', [ 'uri' => '#', 'label' => 'title<span class="caret"></span>', 'extras' => ['safe_label' => true] ]);
Версия KnpMenuBundle бандла 2.1.3, symfony 3.2.4.