`pageList`标签如何显示网站所有单页面的标题和链接?

📅 👁️ 68

在安企CMS中,利用 pageList 标签展示所有单页面的标题和链接,是网站布局和导航设置中非常常见且实用的需求。无论是用于网站底部导航、侧边栏链接列表,还是构建一个简单的HTML站点地图,pageList 标签都能帮助我们高效地实现这些功能。

理解安企CMS中的单页面

首先,我们来简要回顾一下安企CMS中的“单页面”。在安企CMS的后台管理中,有一个专门的“页面资源”模块,其中包含了“页面管理”功能。这里就是创建和管理“关于我们”、“联系我们”、“隐私政策”等独立页面的地方。这些页面通常内容相对固定,不属于文章或产品等模型,它们各自拥有独立的标题、内容、链接,甚至可以配置缩略图和SEO信息。

pageList 标签的核心作用

安企CMS提供了一个非常便捷的模板标签——pageList,专门用于获取网站中所有单页面的信息。它的设计理念就是让我们能够轻松地遍历这些独立的页面,并取出我们所需的数据,例如页面的标题和链接。

使用 pageList 标签的基本结构非常直观,它需要一个开始标签 {% pageList %} 和一个结束标签 {% endpageList %}。在这两个标签之间,我们可以使用 for 循环来逐一处理每个单页面。

基本用法:显示所有单页面的标题和链接

要显示网站所有单页面的标题和链接,我们需要将 pageList 标签与 for 循环结合起来。pageList pages 声明了一个名为 pages 的变量,它会包含所有单页面的集合。在 for 循环中,item 则代表了集合中的每一个单页面对象。

每个 item 对象都包含了一系列页面相关属性,其中最常用也最符合我们需求的就是 item.Title(页面标题)和 item.Link(页面链接)。

下面是一个简单的模板代码示例,它将把所有单页面以无序列表(<ul>)的形式展示出来,每个列表项包含页面的标题和指向该页面的链接:

<ul class="page-links">
{% pageList pages %}
    {% for item in pages %}
    <li>
        <a href="{{ item.Link }}">{{ item.Title }}</a>
    </li>
    {% endfor %}
{% endpageList %}
</ul>

这段代码会遍历安企CMS后台“页面管理”中创建的所有单页面,并为每个页面生成一个列表项 <li>,其中包含一个超链接 <a>,链接的文本就是页面的标题,链接的目标地址就是页面的实际URL。

深入理解 pageList 标签的参数与字段

pageList 标签在大多数情况下不需要额外的参数就能获取所有单页面。但对于多站点用户,可以通过 siteId 参数来指定获取特定站点的单页面列表。例如:{% pageList pages with siteId="1" %}

除了 item.Titleitem.Link 之外,每个单页面 item 对象还提供了其他有用的字段,可以根据需要进行展示:

  • item.Id: 单页面的唯一标识ID,常用于调试或结合条件判断。
  • item.Description: 单页面的简要描述,可以在链接下方作为补充信息。
  • item.Content: 单页面的完整内容(通常不直接在列表页显示,除非有特殊需求)。
  • item.Logo: 单页面的主要图片或大图URL。
  • item.Thumb: 单页面的缩略图URL,如果页面配置了缩略图的话。

如果你希望在列表中显示这些额外信息,可以直接在 for 循环中使用 {{ item.Description }}{{ item.Thumb }} 等来调用。例如:

<ul class="page-cards">
{% pageList pages %}
    {% for item in pages %}
    <li>
        <a href="{{ item.Link }}">
            {% if item.Thumb %}<img src="{{ item.Thumb }}" alt="{{ item.Title }}"/>{% endif %}
            <h3>{{ item.Title }}</h3>
        </a>
        {% if item.Description %}<p>{{ item.Description }}</p>{% endif %}
    </li>
    {% endfor %}
{% endpageList %}
</ul>

更灵活的展示方式:排除特定页面

在某些情况下,你可能不希望网站的所有单页面都显示在某个列表中。例如,你创建了一个“隐私政策”页面,但只想在页脚显示链接,而不希望它出现在主导航栏中。此时,可以在 for 循环内部添加条件判断来过滤特定页面。

我们可以利用 item.Id(页面的唯一ID)或 item.Title(页面标题)来进行过滤。使用ID通常更为精确和稳健,因为标题可能会改变。

<ul class="main-navigation">
{% pageList pages %}
    {% for item in pages %}
        {# 假设ID为5的页面是“隐私政策”,我们不希望它出现在这个导航中 #}
        {% if item.Id != 5 %}
        <li>
            <a href="{{ item.Link }}">{{ item.Title }}</a>
        </li>
        {% endif %}
    {% endfor %}
{% endpageList %}
</ul>

通过这样的条件判断,你可以根据实际需求,灵活地控制哪些单页面应该在当前位置显示。

应用场景示例

pageList 标签的灵活性使其适用于多种网站结构和布局:

  • 网站底部导航: 快速列出如“关于我们”、“联系方式”、“服务条款”等页面的链接。
  • 侧边栏菜单: 作为辅助导航,列出与当前内容相关的单页面。
  • 站内搜索结果的补充: 在搜索结果中除了文章/产品外,也希望能展示相关单页面。
  • HTML站点地图: 生成一个简洁的列表,帮助用户和搜索引擎快速了解网站结构。

注意事项

在使用 pageList 标签时,有几个小细节值得注意,以确保模板代码的正确性和网站的正常运行:

  • 标签大小写敏感: 安企CMS的模板标签是大小写敏感的。请确保 pageListpagesitem.Titleitem.Link 等都严格按照文档中的驼峰命名法书写。
  • 模板文件位置: pageList 标签通常在 /template 目录下的 .html 模板文件中使用。
  • 数据来源: pageList 获取的是后台“页面管理”中已发布且可见的单页面。如果某个页面未发布或设置了不显示,它将不会出现在 pageList 的结果中。

总结

综上所述,安企CMS的 pageList 标签提供了一种直观高效的方式来管理和

相关文章

`categoryDetail`标签如何获取并显示特定分类的描述、Logo等详细信息?

在 AnQiCMS 的模板开发中,获取并展示分类的详细信息是构建丰富且用户友好页面的关键一环。`categoryDetail` 标签正是为此而生,它能帮助你轻松地在页面的任何位置调取特定分类的描述、Logo、自定义字段等详细内容。 ### `categoryDetail` 标签的核心功能 `categoryDetail` 标签的主要作用是获取单个分类的详细数据

2025-11-07

AnQiCMS的`categoryList`标签如何展示多层级分类结构并显示分类信息?

在安企CMS中,网站分类是组织内容的基石,无论是文章、产品还是其他自定义模型,清晰的分类结构都能极大提升用户体验和网站的SEO效果。安企CMS提供了强大的`categoryList`标签,让我们可以灵活地展示单层或多层级的分类结构,并轻松获取分类的各项详细信息。 ### 掌握`categoryList`标签的基础用法 要展示分类列表,我们首先需要用到`categoryList`标签

2025-11-07

`relatedArchive`标签如何根据文档关联性显示相关文章列表?

在日常的网站运营中,如何让用户在浏览完一篇文章后,能自然而然地发现更多感兴趣的内容,是提升用户体验、延长网站停留时间、甚至优化SEO效果的关键。安企CMS深知这一点,并提供了强大的模板标签功能,其中`relatedArchive`标签正是用于智能展示相关文章列表的利器。 ## `relatedArchive`标签

2025-11-07

如何在AnQiCMS文档详情页显示上一篇和下一篇文档的链接?

在网站内容的海洋里,用户往往希望能够流畅地浏览相关信息,不希望在看完一篇精彩文章后,还需要返回列表重新寻找下一篇。这不仅影响用户体验,对网站的内部链接结构和搜索引擎优化(SEO)也大有裨益。AnQiCMS 充分考虑到了这一点,为内容详情页提供了方便快捷的导航功能,让用户能够轻松地在不同文档之间跳转。 AnQiCMS 的模板系统非常灵活,它借鉴了 Django 模板引擎的语法

2025-11-07

`pageDetail`标签如何显示单个单页面的详细内容,例如“关于我们”页面?

在安企CMS中,单页面(例如“关于我们”、“联系我们”或“服务条款”)是网站不可或缺的一部分,它们通常承载着独立且相对静态的内容。要将这些单页面的详细内容呈现在网站前端,我们会用到一个非常核心且实用的模板标签——`pageDetail`。这个标签能够帮助我们精确地提取和显示指定单页面的各类信息,确保内容展示的灵活性和准确性。 ### `pageDetail`

2025-11-07

AnQiCMS的`tagList`标签如何展示文档关联的所有标签?

## 轻松展示文档关联标签:AnQiCMS 的 `tagList` 标签深度解析 在内容管理中,标签(Tag)扮演着至关重要的角色。它们不仅能帮助我们更好地组织内容,提升网站的内部链接结构,还能在搜索引擎优化(SEO)方面发挥巨大作用,让用户和搜索引擎更容易发现相关信息。AnQiCMS 充分考虑到了这一点,提供了一套灵活且功能强大的标签管理系统。其中,`tagList`

2025-11-07

`tagDetail`标签如何显示单个标签的名称、描述及其他属性?

在网站内容管理中,标签(Tag)扮演着连接内容、优化用户体验和提升搜索引擎可见度的多重角色。一个精心管理的标签系统不仅能帮助访问者快速定位感兴趣的信息,还能向搜索引擎传达网站内容的结构化信息,从而有效提升SEO效果。安企CMS(AnQiCMS)深知标签的重要性,因此提供了功能强大且易于使用的`tagDetail`标签,让您能够灵活地获取和展示单个标签的详细信息。 --- ###

2025-11-07

`tagDataList`标签如何根据特定标签获取并显示关联的文档列表?

在安企CMS中,标签(Tag)不仅仅是内容管理的一个辅助工具,更是连接不同主题内容、提升网站内部链接结构和优化用户体验的强大利器。当您希望在网站的某个页面,比如一个专题页、一个标签云页,或者某个特定文章的侧边栏,展示与某个特定标签相关的所有文档列表时,`tagDataList` 标签就是您的不二之选。 本文将深入探讨`tagDataList`标签如何根据特定标签灵活获取并显示关联的文档列表

2025-11-07