自定义 Django Wagtailmenus 平面菜单模板

Custom Django Wagtailmenus Flatmenu Template

我正在为我的 Django Wagtail 菜单使用 https://github.com/rkhleics/wagtailmenus,但似乎无法弄清楚如何为我的 flat_menu 使用自定义模板。我遵循了指南,但我认为我可能做错了什么。

我的 flat_menu 模板在目录 menus/top_sub_menu.html 中,其中 top_sub_menu 是我创建的菜单的句柄。

top_sub_menu.html

{% load menu_tags %}
{% if menu_items %}
  <ul class="c-links c-theme-ul">
    {% for item in menu_items %}
      <li>
        <a href="{{ item.href }}">{{ item.text }}</a> {% if item.has_children_in_menu %}{% sub_menu item %}{% endif %}
      </li>
    {% endfor %}
  </ul>
{% endif %}

header.html

{% load menu_tags %}
...
{% flat_menu 'top_sub_menu' %}
...

我在同一目录中有一个自定义 main_menu.html 和一个 sub_menu.html,它们可以工作,所以我知道我的菜单目录位于正确的位置。谢谢。

{% flat_menu %} 标签 (https://github.com/rkhleics/wagtailmenus#4-using-the--flat_menu--tag) 的自述文件中描述的模板位置行为仅在版本 2.2.0 中引入。不过,您应该能够通过使用 template 参数来使用您的自定义模板。例如:

在header.html

{% load menu_tags %}
...
{% flat_menu 'top_sub_menu' template="menus/top_sub_menu.html" %}
...