0

我尝试在 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');

但它不起作用......我真的不明白如何使用icon child..

有什么帮助吗?

谢谢

4

1 回答 1

0

已经发布了与您的方法类似的问题。您可以根据自己的目的转换代码。请参阅:KnpMenuBundle - 发送选项并在 Twig 中使用它们

于 2014-01-29T06:05:35.280 回答