如何在AnQiCMS中显示特定分类下的文章或产品列表?

📅 👁️ 68

在AnQiCMS中,显示特定分类下的文章或产品列表是网站内容管理中的常见需求。无论是为了构建导航菜单下的子页面,还是在首页展示不同模块的精选内容,AnQiCMS都提供了灵活而强大的方式来实现这一目标。理解其内容组织逻辑和模板标签的使用,您就能轻松地将所需内容呈现在网站上。

理解AnQiCMS的内容模型与分类

首先,AnQiCMS内容的组织方式是基于“内容模型”和“分类”的。 内容模型就像是内容的“骨架”或“类型”,例如“文章模型”用来发布新闻、博客,而“产品模型”则用于展示商品。不同的模型可以拥有自定义的字段,以满足不同类型内容的存储需求。在AnQiCMS的后台,您可以找到这些模型的管理入口,并为它们设定独特的属性。 分类则是内容模型下的具体组织结构,它们通常是树状的,可以有多级。比如在“文章模型”下,您可以创建“公司新闻”、“行业动态”等分类;在“产品模型”下,则可以有“电子产品”、“家居用品”等分类。每个分类都归属于一个特定的内容模型。

当您需要在网站上展示特定内容时,通常会通过指定内容的所属模型ID(moduleId分类ID(categoryId来精确获取。通常,文章模型对应的moduleId可能是1,产品模型可能是2,具体ID可以在后台的内容模型管理页面查看。分类ID则在创建或编辑分类时由系统生成,您也可以在分类管理页面找到。

实战操作:在模板中调用特定分类下的列表

在AnQiCMS的模板文件中,archiveList标签是用于获取文章或产品列表的核心工具。这个标签非常灵活,能够根据您的需求筛选、排序和展示内容。

要显示特定分类下的文章或产品,您可以这样做:

{% archiveList archives with moduleId="1" categoryId="5" limit="10" %}
    {% for item in archives %}
    <li>
        <a href="{{item.Link}}">
            <img src="{{item.Thumb}}" alt="{{item.Title}}">
            <h3>{{item.Title}}</h3>
            <p>{{item.Description}}</p>
            <span>发布日期:{{stampToDate(item.CreatedTime, "2006-01-02")}}</span>
        </a>
    </li>
    {% empty %}
    <li>当前分类下暂无内容。</li>
    {% endfor %}
{% endarchiveList %}

在这段代码中:

  • {% archiveList archives with ... %} 是调用列表的开始,archives是我们为获取到的内容列表设定的一个变量名。
  • moduleId="1" 指明我们要获取的是文章模型下的内容(假设文章模型的ID是1)。如果您需要显示产品,可以将其更改为相应的产品模型ID,例如moduleId="2"
  • categoryId="5" 则精确指定了我们要获取ID为5的分类下的内容。您可以将其替换为您希望展示的分类ID。如果您希望包含该分类下的所有子分类内容,通常child参数默认为true,无需额外设置。
  • limit="10" 限制了显示的文章或产品数量为10篇。您可以根据页面布局调整这个数字。
  • {% for item in archives %} 循环遍历获取到的每一项内容。在循环中,item代表当前正在处理的文章或产品。
  • {{item.Link}}{{item.Title}}{{item.Thumb}}{{item.Description}} 等是内容项的常用字段,分别代表其链接、标题、缩略图、简介等。{{stampToDate(item.CreatedTime, "2006-01-02")}}则用于格式化内容的发布时间。
  • {% empty %} 部分会在没有内容时显示自定义的提示信息。

这段代码可以放置在您网站的任意模板文件中,例如首页、侧边栏或者专门的列表页面,只要它需要展示特定分类的内容。

进阶技巧:结合分页与动态分类显示

实现分页显示: 如果一个分类下的内容很多,您可能需要分页显示。只需将archiveList标签的type参数设置为"page",并结合pagination标签即可:

{% archiveList articles with moduleId="1" categoryId="5" type="page" limit="10" %}
    {# 文章列表内容与上述相同 #}
    {% for item in articles %}
        <li><a href="{{item.Link}}">{{item.Title}}</a></li>
    {% endfor %}
    {% empty %}
    <li>当前分类下暂无内容。</li>
{% endarchiveList %}

<div class="pagination">
    {% pagination pages with show="5" %}
        <a href="{{pages.FirstPage.Link}}">首页</a>
        {% if pages.PrevPage %}<a href="{{pages.PrevPage.Link}}">上一页</a>{% endif %}
        {% for page in pages.Pages %}<a class="{% if page.IsCurrent %}active{% endif %}" href="{{page.Link}}">{{page.Name}}</a>{% endfor %}
        {% if pages.NextPage %}<a href="{{pages.NextPage.Link}}">下一页</a>{% endif %}
        <a href="{{pages.LastPage.Link}}">尾页</a>
    {% endpagination %}
</div>

在这里,limit="10" 不再是显示的总条数,而是每页显示的条数。pagination 标签会根据当前页码和总页数生成导航链接。

动态获取当前分类ID: 如果您正在一个分类页面(例如articles/list-news.html)中,想要显示当前分类下的文章,而不想硬编码categoryId,AnQiCMS会自动识别当前页面的分类信息。您甚至可以通过categoryDetail标签获取当前分类的更多详细信息,例如分类标题、描述等。

”`twig {# 在分类列表页面的模板中 #} {% categoryDetail currentCategory with name=“Id” %} {# 获取当前分类的ID #}

{% if currentCategory %} {# 确保获取到分类ID #}

{% archiveList articles with moduleId="1" categoryId=currentCategory type="page" limit="10" %}
    {% for item in articles %}
        <li><a href="{{item.Link}}">{{item.Title}}</a></li>
    {% endfor %}
    {% empty %}

相关文章

如何获取并循环显示文章或产品的列表?

在AnQiCMS中构建一个充满活力的网站,内容列表的展示是不可或缺的一环。无论是展示最新发布的文章、热门产品,还是特定分类下的内容,AnQiCMS强大的模板引擎都能帮助我们轻松实现。本文将深入探讨如何在AnQiCMS中获取并循环显示文章或产品的列表,助您灵活构建多样化的内容展示页面。 ## 认识AnQiCMS的内容列表机制 AnQiCMS采用了类似Django的模板引擎语法

2025-11-07

如何动态生成并显示网站的顶部或底部导航菜单?

在网站运营中,顶部和底部导航菜单扮演着至关重要的角色,它们不仅是用户探索网站内容的向导,也是搜索引擎理解网站结构的关键。一个设计良好、动态生成的导航菜单,能够极大地提升用户体验和网站的可维护性。安企CMS(AnQiCMS)提供了一套直观而强大的功能,让您轻松实现这一目标。 ### 后台配置:让您的菜单活起来 要在安企CMS中动态生成和显示导航菜单,首先需要在后台进行菜单内容的配置

2025-11-07

安企CMS中如何生成并显示多层级的面包屑导航?

在网站内容运营中,清晰的导航路径对于用户体验和搜索引擎优化都至关重要。一个好的面包屑导航能帮助用户快速了解当前页面在网站结构中的位置,并方便他们回溯到上一级或更高级别的页面。安企CMS(AnQiCMS)深知这一点,因此提供了强大且易于使用的面包屑导航功能,让网站管理者能够轻松生成并显示多层级的面包屑。 安企CMS中实现面包屑导航的核心,在于其内置的 `breadcrumb` 标签

2025-11-07

如何为网站首页配置并显示SEO标题、关键词和描述(TDK)?

在网站运营中,网站首页的搜索引擎优化(SEO)至关重要。一个精心配置的SEO标题、关键词和描述(TDK)能够显著提升网站在搜索引擎结果页(SERP)中的可见度,吸引更多潜在访客。安企CMS(AnQiCMS)作为一个为SEO友好而设计的系统,提供了直观便捷的方式来管理这些关键信息。 本文将引导你了解如何在AnQiCMS中为你的网站首页配置并显示SEO标题、关键词和描述。 --- ### 一

2025-11-07

如何在文档列表或详情页显示文档的推荐属性(如头条、推荐)?

在内容管理系统中,突出网站上的重点内容对于吸引用户、提升页面浏览量至关重要。安企CMS(AnQiCMS)提供了强大的文档推荐属性功能,让网站运营者能够灵活地标记和展示文章。本文将详细介绍如何在安企CMS的文档列表和详情页中,巧妙地利用这些推荐属性,让您的网站内容更加生动和具有引导性。 ### 了解安企CMS的推荐属性 安企CMS为每篇文档设计了多种推荐属性

2025-11-07

如何显示文章或产品的详细内容,并支持图片懒加载?

安企CMS内容详情展示与图片懒加载实践指南 在今天的数字世界里,网站内容的呈现方式直接影响着用户体验和搜索引擎的排名。无论是详细的文章介绍,还是精美的产品展示,如何高效、美观地将内容呈现给访问者,并且确保网站加载速度,是每一位运营者都需要面对的挑战。安企CMS(AnQiCMS)作为一款功能强大的内容管理系统,为我们提供了灵活的工具来应对这些挑战。本文将深入探讨如何在安企CMS中充分利用其功能

2025-11-07

如何获取并显示当前文档的上/下一篇内容?

在内容型网站中,为访客提供便捷的导航体验至关重要,其中“上一篇”和“下一篇”功能是文章详情页的标配。它们不仅能引导用户继续浏览更多内容,有效提升网站的PV(页面浏览量),还能在一定程度上帮助搜索引擎更好地理解网站的内容结构,从而优化SEO表现。AnQiCMS 充分考虑了这一需求,为我们提供了非常简单直观的模板标签,帮助我们轻松实现这一功能。 ### 了解 AnQiCMS 的模板机制 在

2025-11-07

安企CMS如何显示与当前文档相关的推荐内容列表?

在运营网站时,我们常常希望用户在阅读完一篇精彩文章后,能顺畅地发现更多感兴趣的内容。这不仅能延长用户的停留时间,降低跳出率,也是提升网站整体内容价值和SEO表现的有效途径。安企CMS深知这一点,因此它提供了多种灵活的方式来展示与当前文档相关的推荐内容列表,帮助我们更好地引导用户。 要实现相关内容的推荐,首先我们需要理解安企CMS是如何定义“相关”的。在系统设计中,“相关”可以体现在几个层面

2025-11-07