如何更改"当前"上课到"活跃"在KNPMenuBundle

时间:2014-06-09 12:59:35

标签: symfony knpmenubundle

我想知道,改变现在"的最佳方法是什么?课程要活跃"所以Bootstrap可以正常使用吗?

我想过复制并覆盖knp_menu_html.twig,但我认为这不是最好的方法......

无论如何做得更好?

2 个答案:

答案 0 :(得分:20)

你可以这样传递:

{{ knp_menu_render('AcmeDemoBundle:Builder:mainMenu', {'currentClass': 'active'}) }}

答案 1 :(得分:20)

要在所有应用程序中应用默认选项,您可以设置knp_menu.renderer.twig.options参数,如下所示:

// app/config/services.yml
parameters:
    knp_menu.renderer.twig.options:
        currentClass: active

Knp\Menu\Renderer\TwigRenderer的默认选项为:

    $this->defaultOptions = array_merge(array(
        'depth' => null,
        'matchingDepth' => null,
        'currentAsLink' => true,
        'currentClass' => 'current',
        'ancestorClass' => 'current_ancestor',
        'firstClass' => 'first',
        'lastClass' => 'last',
        'template' => $template,
        'compressed' => false,
        'allow_safe_labels' => false,
        'clear_matcher' => true,
        'leaf_class' => null,
        'branch_class' => null,
    ), $defaultOptions);