2014-10-01 109 views
1

我正在使用KnpMenuBundle,我需要添加自定义CSS和一个标签到'uri'=>'#'路线的链接之一。我怎么做到这一点?KnpMenuBundle需要添加自定义CSS和HTML到链接

我想链接到这个样子:

<a href="#" class="js-sub-menu-toggle"> 
     <span class="text">Settlements</span><i class="toggle-icon fa fa-angle-left"></i> 
</a> 

目前的链接呈现这样的:

<a class="asdfasdf" href="#">Settlements</a> 

这里是我的代码:

$menu->addChild($name, $array(
      'uri' => '#' 
    )); 

谢谢!

回答

2

尝试这样:

$menu->addChild('<span class="text">Settlements</span><i class="toggle-icon fa fa-angle-left"></i>', array(
    'uri' => '#', 
    'class' => 'js-sub-menu-toggle', 
    'extras' => array(
     'safe_label' => true 
    ), 
)); 

在你嫩枝你必须做出knp_menu_render()打印RAW HTML(看看this other answer of mine):

{{ knp_menu_render('main', {'allow_safe_labels': true}) | raw }} 
+0

这伟大的工作,感谢这么许多! – LargeTuna 2014-10-03 19:10:15

+0

但是,我建议这种在数组中使用预定义标签属性的方式是一种正确的方法。 http://stackoverflow.com/questions/16152396/how-to-disable-html-escaping-of-labels-in-knpmenubundle/26132111#26132111 – Dung 2015-10-19 15:42:24

相关问题