2017-10-13 10 views
0

Je souhaite créer un modèle de CMS Django à partir d'un modèle trouvé sur https://startbootstrap.com.Django CMS: Comment modifier le style de show_menu

J'ai charge les balises suivantes

{% load cms_tags menu_tags sekizai_tags staticfiles %} 

puis dans la partie <body> de menu

... 
<nav class="navbar navbar-expand-lg navbar-dark bg-dark fixed-top"> 
    <div class="container"> 
    <a class="navbar-brand" href="#">Start Bootstrap</a> 
    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarResponsive" aria-controls="navbarResponsive" aria-expanded="false" aria-label="Toggle navigation"> 
     <span class="navbar-toggler-icon"></span> 
    </button> 
    <div class="collapse navbar-collapse" id="navbarResponsive"> 
     <ul class="navbar-nav ml-auto"> 
     {% show_menu 0 100 100 100 %} 
     </ul> 
    </div> 
    </div> 
</nav> 
... 

Malheureusement, les liens pour les pages du menu ont presque pas de CSS (voir l'image) .

menu without css

Fondamentalement, les liens doivent être de classe nav-link. Comment puis-je réparer cela?

Répondre

1

Vous pouvez utiliser un modèle personnalisé pour les balises de menu;

<ul class="dropdown"> 
    {% show_menu 1 100 100 100 "partials/navigation.html" %} 
</ul> 

Puis dans partials/navigation.html;

{% load cms_tags menu_tags cache cms_page %} 

{% for child in children %} 

    <li class="nav-link"> 
     <a href="{{ child.attr.redirect_url|default:child.get_absolute_url }}">{{ child.get_menu_title }}</a> 
     {% if child.children %} 
      <ul class="sub_menu"> 
       {% show_menu from_level to_level extra_inactive extra_active template '' '' child %} 
      </ul> 
     {% endif %} 
    </li> 

{% endfor %}