如何设置和显示安企CMS网站的导航菜单(顶部/底部)?

📅 👁️ 57

网站导航是用户探索网站内容的关键路径,也是搜索引擎理解网站结构的重要参考。在安企CMS(AnQiCMS)中,您可以灵活地设置和管理网站的顶部及底部导航菜单,以满足不同的设计和功能需求。

本文将详细介绍如何在安企CMS后台配置导航菜单,以及如何在网站前端模板中将其显示出来。

第一部分:后台配置导航菜单

在安企CMS中,导航菜单的设置集中在后台的“后台设置”区域,具体是“网站导航设置”功能。

一、管理导航类别

安企CMS允许您创建多个独立的导航类别,这对于管理不同位置的菜单(例如,主导航、页脚导航、侧边栏导航)非常有用。

  1. 访问导航类别: 进入后台后,找到“后台设置”菜单下的“导航设置”,您会看到一个“导航类别管理”的选项。
  2. 添加新类别: 点击进入,系统默认会有一个“默认导航”类别。如果您需要一个独立的底部导航,可以点击“添加导航类别”,输入一个有意义的名称,例如“底部导航”或“页脚菜单”,然后保存。
    • 通过这种方式,您可以为网站的不同区域创建专属的导航结构,便于管理和维护。

二、配置导航链接

在选定或创建导航类别后,接下来就是为该类别添加具体的导航链接。每个导航链接都可以进行细致的配置:

  1. 选择导航类别: 在“网站导航设置”页面,首先选择您要配置的导航类别(例如“默认导航”或您创建的“底部导航”)。
  2. 添加/编辑导航链接:
    • 显示名称: 这是用户在网站前台看到的文字,应简洁明了,准确反映链接内容。例如“关于我们”、“产品中心”。
    • 子标题名称: 如果您的设计需要,可以在主标题下方显示一个次级标题,例如在“产品”下方显示“Products”。
    • 导航描述: 可以为导航项添加一段简短的描述,这在某些模板设计中可能用于显示提示信息。
    • 链接类型: 安企CMS提供了三种强大的链接类型,满足您链接到不同内容的需要:
      • 内置链接: 适用于网站的固定页面,如首页、文章模型首页、产品模型首页或其他自定义模型首页。选择后系统会自动生成链接。
      • 分类页面链接: 可以直接链接到您网站已有的文章分类、产品分类或单页面(如“联系我们”页面)。选择对应内容即可。
      • 外部链接: 提供了最大的灵活性,您可以手动输入任何站内或站外的URL地址。这对于链接到第三方服务或外部合作网站非常方便。
    • 上级导航: 若要创建下拉菜单或子菜单,您只需在添加子菜单项时,将其“上级导航”设置为对应的父级菜单项即可。安企CMS支持两级导航(一级主菜单,二级下拉菜单)。
    • 显示顺序: 通过调整数字大小来控制导航项在同一级别中的排列顺序。数字越小,显示越靠前。

通过以上步骤,您可以在安企CMS后台轻松构建出符合网站结构和用户需求的导航菜单。

第二部分:前端模板中显示导航菜单

完成后台的导航设置后,下一步就是通过模板标签将这些导航菜单呈现在网站前台页面上。安企CMS使用 navList 标签来实现这一功能,它具有很高的灵活性,可以适应各种复杂的菜单布局。

一、使用 navList 标签调用导航

在您的网站模板文件(例如 header.html 用于顶部导航,footer.html 用于底部导航)中,您可以使用 navList 标签来获取后台配置的导航数据。

一个基本的调用方式如下:

{% navList navs with typeId=1 %}
    <ul>
        {%- for item in navs %}
            <li><a href="{{ item.Link }}">{{item.Title}}</a></li>
        {% endfor %}
    </ul>
{% endnavList %}

这里,navs 是一个数组对象,包含了您在后台设置的每个导航链接。for 循环会遍历这些链接,item.Link 获取链接地址,item.Title 获取显示名称。

  • typeId 参数: typeId 是一个关键参数,用于指定您要调用哪个导航类别。默认情况下,typeId=1 通常对应后台的“默认导航”。如果您创建了其他的导航类别(例如“底部导航”),在调用时,需要根据其在后台的实际 typeId 进行指定。通过在“网站导航设置”页面查看导航类别的ID,或者在“导航类别管理”中创建新类别时留意ID。

二、实现带有下拉菜单的导航

安企CMS的 navList 标签支持轻松创建二级下拉菜单。每个主导航项(item)都可能包含一个 NavList 属性,这个属性本身也是一个导航列表,代表了其下级的子菜单。

您可以通过嵌套 for 循环来显示这些子菜单:

{% navList navs with typeId=1 %}
    <ul class="main-menu">
        {%- for item in navs %}
            <li class="{% if item.IsCurrent %}active{% endif %}">
                <a href="{{ item.Link }}">{{item.Title}}</a>
                {%- if item.NavList %} {# 判断是否存在子菜单 #}
                    <dl class="sub-menu">
                        {%- for subItem in item.NavList %} {# 遍历子菜单 #}
                            <dd class="{% if subItem.IsCurrent %}active{% endif %}">
                                <a href="{{ subItem.Link }}">{{subItem.Title}}</a>
                            </dd>
                        {% endfor %}
                    </dl>
                {% endif %}
            </li>
        {% endfor %}
    </ul>
{% endnavList %}

上述代码演示了如何判断 item.NavList 是否存在,如果存在则渲染一个 <dl> 标签作为子菜单容器,并遍历 item.NavList 中的子菜单项。item.IsCurrent 属性可以用来判断当前导航是否是活动状态,方便添加样式。

三、结合内容动态显示(高级应用)

对于更高级的需求,例如在导航下拉菜单中直接显示某个分类下的热门文章或产品列表,您可以结合其他内容标签(如 archiveListcategoryList)来实现。这通常需要导航项链接到特定的分类或页面,并通过 item.PageId 获取对应的分类或页面ID。

例如,在一个产品分类的下拉菜单中显示该分类下的热门产品:

{% navList navList with typeId=1 %}
    <ul>
    {%- for item in navList %}
        <li>
            <a href="{{ item.Link }}">{{item.Title}}</a>
            {%- if item.NavList %}
            <ul class="nav-menu-child">
                {%- for inner in item.NavList %}
                <li>
                    <a href="{{ inner.Link }}">{{inner.Title}}</a>
                    {# 如果该二级导航项关联了分类(PageId > 0),则加载该分类下的产品列表 #}
                    {% if inner.PageId > 0 %}
                        {% archiveList products with type="list" categoryId=inner.PageId limit="8" %}
                        {% if products %}
                        <ul class="nav-menu-child-child">
                            {% for product in products %}
                            <li><a href="{{product.Link}}">{{product.Title}}</a></li>
                            {% endfor %}
                        </ul>
                        {% endif %}
                        {% endarchiveList %}
                    {% endif %}
                </li>
                {% endfor %}
            </ul>
            {% endif %}
        </li>
    {% endfor %}
    </ul>
{% endnavList %}

这个例子展示了如何利用 inner.PageId 来调用 archiveList 标签,从而在导航中动态展示内容,极大地丰富了导航菜单的功能。

提示与**实践

  • 保持简洁: 避免过多的主菜单项和过于深层的子菜单,以免让用户感到困惑。
  • 语义化命名: 导航项的名称应清晰、准确,让用户一眼就能理解其指向的内容。
  • 一致性: 保持导航样式和结构在网站内的统一性,增强用户体验。
  • 移动端适配: 确保导航菜单在不同设备上都能良好地显示和操作,尤其是在移动设备上。
  • 搜索引擎优化 (SEO): 合理的导航结构有助于搜索引擎抓取和理解网站内容,提升网站排名。

总结

安企CMS为网站导航的设置和显示提供了直观、灵活且强大的功能。无论是简单的顶部/底部菜单,

相关文章

在安企CMS文章内容中如何实现图片的懒加载显示效果?

在网站运营中,图片加载速度对用户体验和搜索引擎优化(SEO)至关重要。尤其是当文章中包含大量图片时,一次性加载所有图片会显著增加页面加载时间,消耗用户流量,并可能导致用户过早离开。此时,图片懒加载(Lazy Load)技术便能大显身手。 懒加载的核心思想是,只在图片即将进入用户可视区域时才开始加载它们,而不是在页面初始加载时就全部加载。这能有效减少页面首次加载所需的时间和资源

2025-11-08

如何使用安企CMS模板标签获取特定分类下的文档列表?

安企CMS(AnQiCMS)凭借其强大的模板功能,为网站内容的灵活展示提供了坚实的基础。在网站运营中,我们经常会遇到需要展示特定分类下的文档列表这一需求,例如新闻动态、产品介绍、博客文章等。掌握如何利用模板标签实现这一功能,将大大提升网站内容的组织效率和用户体验。 ### 核心标签:`archiveList`的妙用 在安企CMS中,要获取特定分类下的文档列表

2025-11-08

安企CMS的文档详情页如何自定义展示布局和内容?

在安企CMS中,文档详情页的自定义展示布局和内容是实现网站个性化和满足特定业务需求的关键。作为网站内容的最终呈现形式,详情页不仅承载着核心信息,更直接影响用户体验和搜索引擎优化效果。安企CMS提供了高度灵活的模板机制和丰富的数据标签,让用户可以根据自身创意,轻松打造独一无二的文档详情页。 ### 理解安企CMS文档详情页的基础构成 安企CMS的模板系统采用类似Django模板引擎的语法

2025-11-08

如何在安企CMS中调用并显示最新的文章列表?

作为一款功能丰富且易于使用的内容管理系统,安企CMS在内容展示方面提供了极大的灵活性。当您需要向访客展示网站上最新的文章,例如在首页、侧边栏或特定专题页,安企CMS能够帮助您轻松实现这一需求。 要实现“在安企CMS中调用并显示最新的文章列表”,核心在于灵活运用其强大的模板标签系统,特别是 `archiveList` 标签。安企CMS的模板引擎类似Django

2025-11-08

安企CMS如何为网站首页配置和显示SEO TDK信息?

在网站运营中,搜索引擎优化(SEO)是提升网站可见度和吸引自然流量的关键环节。而TDK(Title、Description、Keywords)信息,作为网站内容在搜索引擎结果页(SERP)上的“名片”,其配置的合理性直接影响着用户点击率和搜索引擎的排名表现。对于使用AnQiCMS(安企CMS)的用户来说,系统内置了直观且强大的TDK配置功能,让首页SEO优化变得简单高效。 ###

2025-11-08

如何自定义安企CMS文章页面的URL伪静态规则以优化SEO显示?

在网站运营中,一个结构清晰、对搜索引擎友好的URL地址,不仅能提升用户体验,更是网站SEO优化的关键一环。安企CMS(AnQiCMS)深知这一点,因此提供了灵活多变的伪静态URL自定义功能,帮助用户轻松打造符合SEO**实践的文章页面链接。 ### 安企CMS的伪静态能力概览 伪静态技术,顾名思义,是让动态页面看起来像静态页面一样拥有固定且有意义的URL

2025-11-08

安企CMS支持哪些图片处理方式来优化前端显示?

在当今的网站运营中,图片不仅是内容呈现的重要组成部分,更是影响网站加载速度和用户体验的关键因素。如果图片处理不当,可能导致页面加载缓慢,进而影响搜索引擎排名和用户留存。安企CMS(AnQiCMS)深知这一点,因此内置了多种实用的图片处理功能,帮助我们轻松优化前端显示,提升网站性能。 ### 智能缩略图生成与精细化管理 安企CMS提供了非常灵活的缩略图处理机制。当我们上传图片时

2025-11-08

如何在安企CMS中为文档和分类设置自定义缩略图并显示?

在内容运营中,一张吸引人的缩略图往往能决定用户是否点击查看完整内容,它不仅是内容的“门面”,也是提升网站视觉效果和搜索引擎友好度的重要元素。安企CMS作为一款功能强大的内容管理系统,提供了灵活的方式让您为文档和分类设置自定义缩略图,并能在前台页面中轻松展示,从而有效增强您的内容吸引力。 接下来,我们将深入探讨如何在安企CMS中实现这一功能。 ### 一、 缩略图的重要性

2025-11-08