Bootstrapが正しく動作するように、「現在の」クラスを「アクティブ」に変更する最良の方法は何ですか?
knp_menu_html.twig をコピーしてオーバーライドすることを考えましたが、最善の方法ではないと思います...
とにかくやったほうがいい?
Bootstrapが正しく動作するように、「現在の」クラスを「アクティブ」に変更する最良の方法は何ですか?
knp_menu_html.twig をコピーしてオーバーライドすることを考えましたが、最善の方法ではないと思います...
とにかくやったほうがいい?
すべてのアプリケーションにデフォルト オプションを適用するには、次の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);
次のように渡すことができます。
{{ knp_menu_render('AcmeDemoBundle:Builder:mainMenu', {'currentClass': 'active'}) }}