如何列出并显示所有单页面的标题和链接?

安企CMS提供了一套直观而强大的内容管理能力,其中单页面功能是构建“关于我们”、“联系方式”或“隐私政策”等独立页面的理想选择。当您需要将这些单页面的标题和链接集中展示在网站的某个位置,例如页脚导航、侧边栏或专门的页面索引时,AnQiCMS的模板标签能帮助您轻松实现。

在AnQiCMS后台,单页面内容是在“页面资源”下的“页面管理”中创建和维护的。您可以为网站轻松添加像“关于我们”、“联系方式”这样的独立页面,并对它们的标题、内容、URL等进行详细设置。一旦这些单页面被创建,我们就可以利用模板标签将它们显示在前端页面上。

使用 pageList 标签列出所有单页面

要在前端模板中列出所有单页面的标题和链接,您需要使用AnQiCMS内置的pageList模板标签。这个标签专门设计用于获取和遍历网站的所有单页面数据。

pageList标签的基本用法非常简单。它通常与其他控制流标签(如for循环)结合使用,以遍历每个单页面的信息。

首先,您需要在需要显示单页面列表的模板文件中找到合适的位置。这可能在网站的bash.html(如果希望在所有页面都显示,比如页脚)、index.html(首页),或任何其他特定页面模板中。

接下来,您可以像下面这样使用pageList标签:

<div class="footer-links">
    <h4>快速链接</h4>
    <ul>
    {% pageList pages %}
        {% for item in pages %}
        <li>
            <a href="{{ item.Link }}">{{ item.Title }}</a>
        </li>
        {% endfor %}
    {% endpageList %}
    </ul>
</div>

让我们来分解一下这段代码:

  • {% pageList pages %}:这是核心标签,它会获取网站中所有已发布的单页面数据,并将这些数据赋值给一个名为pages的变量。
  • {% for item in pages %}:这是一个循环语句,它会遍历pages变量中的每一个单页面。在每一次循环中,当前单页面的数据会被临时存储在item变量中。
  • {{ item.Link }}:这会输出当前单页面的完整URL链接。
  • {{ item.Title }}:这会输出当前单页面的标题。
  • {% endfor %}{% endpageList %}:这些是相应的结束标签,标记了循环和pageList标签的作用范围。

通过这段代码,您可以生成一个包含所有单页面标题和对应链接的无序列表。您可以根据自己的网站设计,用<div><span>或其他HTML标签来包裹这些链接,并应用相应的CSS样式,使其与网站的整体风格保持一致。

灵活筛选与展示

AnQiCMS的pageList标签还允许您根据特定需求进行一些调整。

排除特定页面: 有时您可能不希望所有单页面都显示出来,例如某个内部测试页面或者不在公共导航中显示的页面。您可以在for循环中使用if条件判断来排除它们。假设您想排除ID为1的单页面,或者标题为“测试页面”的单页面:

<div class="footer-links">
    <h4>常用页面</h4>
    <ul>
    {% pageList pages %}
        {% for item in pages %}
        {# 排除ID为1的页面,或者标题为“测试页面”的页面 #}
        {% if item.Id != 1 and item.Title != "测试页面" %}
        <li>
            <a href="{{ item.Link }}">{{ item.Title }}</a>
        </li>
        {% endif %}
        {% endfor %}
    {% endpageList %}
    </ul>
</div>

这里,item.Iditem.Title分别用于获取单页面的ID和标题,您可以根据实际需求灵活调整判断条件。

显示更多页面信息: 除了标题和链接,每个单页面还包含其他有用的信息,例如:

  • item.Description:单页面的简介。
  • item.Thumb:单页面的缩略图地址。
  • item.Content:单页面的详细内容(通常在列表展示时不直接显示,但在需要时可用)。

如果您希望在列表中显示这些额外信息,可以参照{{ item.Title }}{{ item.Link }}的用法进行调用。例如,显示缩略图和简介:

<div class="page-highlights">
    {% pageList pages %}
        {% for item in pages %}
        {% if item.Thumb %} {# 检查是否有缩略图 #}
        <div class="page-card">
            <a href="{{ item.Link }}">
                <img src="{{ item.Thumb }}" alt="{{ item.Title }}">
                <h3>{{ item.Title }}</h3>
                <p>{{ item.Description }}</p>
            </a>
        </div>
        {% endif %}
        {% endfor %}
    {% endpageList %}
</div>

通过这些灵活的标签组合,您可以在AnQiCMS中轻松地将所有或特定的单页面内容以您想要的方式展示出来,从而提升网站的可用性和用户体验。


常见问题 (FAQ)

1. 我可以在哪里创建和管理安企CMS的单页面? 您可以在AnQiCMS后台的“页面资源”菜单下,找到“页面管理”选项。在这里,您可以创建、编辑、删除和管理所有的单页面内容,包括它们的标题、内容、URL别名、SEO信息等。

2. 如何控制单页面的显示顺序? 在后台“页面管理”中编辑任何一个单页面时,您会看到一个“显示顺序”字段。这个字段允许您设置一个数字,数字越小,该单页面在列表调用时就会越靠前显示。您可以根据需求调整这些数字来控制页面的排序。

3. 除了标题和链接,pageList标签还能显示单页面的哪些信息? 除了item.Title(标题)和item.Link(链接),您还可以通过item变量访问和显示单页面的其他属性,例如:

  • item.Id:单页面的唯一ID。
  • item.Description:单页面的简短描述。
  • item.Content:单页面的详细内容(注意在列表展示时可能需要截断或避免直接显示)。
  • item.Logo:单页面设置的缩略图大图地址。
  • item.Thumb:单页面设置的缩略图地址。 您可以根据需要选择性地将这些信息添加到您的模板中。