我尝试在php中创建一个菜单构建器,以重现此代码:
<ul class="nav nav-pills">
<li class="first"><a title="Voir panier"
href="{{ path('cs_web_homepage') }}"> <i
class="fa fa-shopping-cart icon-large"></i> Voir Panier
</a></li>
{% if is_granted("IS_AUTHENTICATED_REMEMBERED") %}
<li><a title="Mon compte"
href="{{ path('fos_user_profile_show') }}"><i
class="fa fa-user icon-large"></i> Mon compte
</a></li>
<li><a title="Déconnexion"
href="{{ path('fos_user_security_logout') }}"><i
class="fa fa-power-off icon-large"></i> Déconnexion
</a></li>
{% else %}
<li><a title="Connexion"
href="{{ path('fos_user_security_login') }}"><i
class="fa fa-lock icon-large"></i> Connexion
</a></li>
<li class="last"><a title="Register"
href="{{ path('fos_user_registration_register') }}"> <i
class="fa fa-user icon-large"></i> Inscription
</a>
</li>
{% endif %}
</ul>
所以,我从这段代码开始:
public function mainMenu(FactoryInterface $factory, array $options)
{
$request = $this->container->get('request');
$securityContext = $this->container->get('security.context');
$menu = $factory->createItem('root', array(
'childrenAttributes' => array(
'class' => 'nav nav-pills'
)
));
$menu->addChild('cart', array(
'route' => 'cultural_store_web_homepage',
'linkAttributes' => array('title' => 'Voir Panier'),
'labelAttributes' => array('icon' => 'icon-user')))->setLabel('Voir Panier');
return $menu;
}
但是,图标未添加。 我也试着说:
$menu->addChild('cart', array(
'route' => 'cs_web_homepage',
'linkAttributes' => array('title' => 'Voir Panier')))
->setLabel('Voir Panier')
->addChild('icon' => array('class' => 'fa fa-shopping-cart');
但它不起作用...... 我真的不明白如何使用图标孩子..
任何帮助?
THX
答案 0 :(得分:0)
已发布与您的方法类似的问题。您可以为您的目的转换代码。请参阅:KnpMenuBundle - send Options and use them in Twig