开发django-cms下拉菜单

Developing django-cms dropdown menus

我是 django 和 django-cms 的新手。我阅读了官方文档并试图在互联网上找到任何其他信息,这些信息可以指导我在 django cms 中制作下拉菜单。但对我来说不幸的是,官方文档真的很原始(我根本不明白菜单是什么)而且在互联网上也没有足够明智的东西。

请就此主题向我解释或提供分步指南。

此时菜单正在运行,我唯一的代码是一对 <ul> 和其中的 {% show_menu 0 100 100 100 %}

在 django-cms 中使用下拉菜单的最简单方法是遵循以下步骤: (在这个例子中,我为我的菜单使用 Bootstrap 代码)

  1. 在您的 base.html 文件(或您正在使用的任何其他名称)中使用这种显示菜单的方式 {% show_menu 0 10 10 10 %} 例如,这是我在 base.html 的代码中用来呈现菜单的内容:

    <ul>
        {% show_menu 0 10 10 10 "menu/custom-menu.html" %}
    </ul>
    
  2. 现在使用这些 sekizai 标签和类似的 html 代码在目录“/templates/menu/custom-menu.html”中创建模板,这些代码将覆盖您的 base.html 并使用下拉元素呈现您的菜单:

    <div class="dropdown">
        {% for child in children %}
    <!-- no child pages  -->
            {% if child.is_leaf_node %}
                <li><a href="{{ child.get_absolute_url }}">{{child.get_menu_title }}</a></li>
            {% endif %}
    <!-- /no child pages  -->
    <!-- has child pages  -->
            {% if not child.is_leaf_node or child.ancestor %}
                <li class="dropdown">
                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">
                    {{child.get_menu_title }}<b class="caret"></b></a>
                    <ul class="dropdown-menu">
                        {% if child.get_descendants %}
                            {% for kid in child.get_descendants %}
                                <li>
                                    <a href="{{ kid.get_absolute_url }}">
                                        {{kid.get_menu_title }}
                                    </a>
                                </li>
                            {% endfor %}
                        {% endif %}
                    </ul>
                </li>
            {% endif %}
    <!-- /has child pages  -->
        {% endfor %} 
    <!-- /end for child -->
    </div>
    
  3. 并且不要忘记将 {% load menu_tags %} sekizai 标签放在自定义-menu.html 文件的顶部。