如何显示网站的最新文章或产品列表?

📅 👁️ 76

在安企CMS中管理和展示网站内容,尤其是让访客看到最新发布文章或产品的动态,是提升用户体验和网站活力的重要一环。一个动态更新的网站不仅能吸引用户持续访问,对搜索引擎优化(SEO)也大有裨益。安企CMS提供了强大且灵活的标签系统,让我们能够轻松实现这一需求。

核心工具:archiveList 标签

要在安企CMS网站的任何页面上显示最新文章或产品列表,最核心的工具就是 archiveList 标签。这个标签专门用于获取各类文档(包括文章、产品等,因为在安企CMS中,它们都作为“文档”的一种形式进行管理)的列表数据。

使用 archiveList 标签的基本结构通常是这样的:

{% archiveList 变量名称 with 参数 %}
    {# 循环展示内容的区域 #}
{% endarchiveList %}

其中,变量名称 可以是你自定义的,用于在标签内部循环获取每一项数据;参数 则是你用来筛选、排序和限制列表显示的关键。

理解关键参数,定制你的列表

要精准地显示“最新”文章或产品,我们需要掌握 archiveList 标签的几个关键参数:

  1. moduleId:告诉系统你想展示什么类型的内容 安企CMS支持多种内容模型,例如文章模型和产品模型。不同的 moduleId 代表着不同的内容类型。通常情况下,文章模型可能对应 moduleId="1",而产品模型则对应 moduleId="2"。如果你不确定具体模型的ID,可以在安企CMS后台的“内容管理” -> “内容模型”中查看并确认。通过指定 moduleId,你可以选择只显示文章,或者只显示产品。

  2. order:时间序,确保“最新”性 要显示“最新”的内容,排序方式至关重要。我们可以使用 order="id desc" 这个参数。id 通常代表着内容的发布顺序(ID越大,通常发布时间越晚),而 desc 意味着降序排列,这样就能确保最新发布的内容排在前面。

  3. limit:精确控制显示数量 网站的不同区域可能需要显示不同数量的最新内容,例如首页可能只显示5条,而某个专题页可能需要10条。limit 参数让你能够精确控制列表的显示条数。例如,limit="5" 将只显示最新的5条内容。

  4. type:列表模式还是分页模式

    • type="list":这是默认模式,它会按照 limit 参数指定的数量,一次性列出所有符合条件的内容。适用于内容量不大或只显示精选几条的场景。
    • type="page":当内容量较大,需要进行分页显示时,就应该使用 type="page"。配合 pagination 标签,你可以为用户提供完整的翻页体验,一次显示一页内容。
  5. categoryId:指定特定分类内容(可选) 如果你希望只显示某个特定分类下的最新文章或产品,可以使用 categoryId 参数。你可以传入单个分类ID(如 categoryId="10"),也可以传入多个分类ID(如 categoryId="10,12,15"),用逗号分隔。

实战演练:一步步实现最新列表

了解了这些参数,我们来看看如何在实际页面中应用它们:

场景一:在网站首页显示最新的文章列表

假设你希望在首页的侧边栏显示5条最新发布的技术文章。

<div class="latest-articles-widget">
    <h2>最新技术文章</h2>
    <ul>
        {% archiveList latestTechArticles with moduleId="1" order="id desc" limit="5" %}
            {% for item in latestTechArticles %}
                <li>
                    <a href="{{ item.Link }}">{{ item.Title }}</a>
                    <time>{{ stampToDate(item.CreatedTime, "2006-01-02") }}</time>
                </li>
            {% empty %}
                <li>暂时还没有发布任何文章。</li>
            {% endfor %}
        {% endarchiveList %}
    </ul>
</div>

这段代码会从文章模型(moduleId="1")中,按ID降序(即最新发布)获取5条文章,并展示它们的标题和发布日期。stampToDate 标签帮助我们把时间戳格式化成可读的日期。

场景二:在产品展示页面显示最新上架的产品(带缩略图)

如果你有一个专门的产品页面,想要突出显示4款最新上架的产品,并带上它们的缩略图:

<div class="new-products-section">
    <h2>新品推荐</h2>
    <div class="product-grid">
        {% archiveList newArrivalProducts with moduleId="2" order="id desc" limit="4" %}
            {% for item in newArrivalProducts %}
                <div class="product-card">
                    <a href="{{ item.Link }}">
                        <img src="{{ item.Thumb }}" alt="{{ item.Title }}" class="product-thumbnail">
                        <h3>{{ item.Title }}</h3>
                    </a>
                </div>
            {% empty %}
                <p>抱歉,目前还没有新品上架。</p>
            {% endfor %}
        {% endarchiveList %}
    </div>
</div>

这里我们指定 moduleId="2" 来获取产品数据,并且利用 item.Thumb 来显示产品的缩略图。

场景三:在分类页面显示该分类下的最新内容(带分页)

当你进入一个文章分类页面时,通常希望看到该分类下的最新文章,并且可以进行分页浏览。

<div class="category-articles">
    <h1>{{ category.Title }} - 最新内容</h1>
    <ul>
        {% archiveList articlesPaged with type="page" order="id desc" limit="10" %} {# categoryId 会自动获取当前分类ID #}
            {% for item in articlesPaged %}
                <li>
                    <a href="{{ item.Link }}">
                        {% if item.Thumb %}<img src="{{ item.Thumb }}" alt="{{ item.Title }}" width="100">{% endif %}
                        <span>{{ item.Title }}</span>
                        <time>{{ stampToDate(item.CreatedTime, "2006-01-02") }}</time>
                    </a>
                </li>
            {% empty %}
                <li>此分类下暂时没有内容。</li>
            {% endfor %}
            
            {# 分页导航 #}
            {% pagination pages with show="5" %}
                <nav class="pagination-nav">
                    {% if pages.PrevPage %}<a href="{{ pages.PrevPage.Link }}" class="prev-page">上一页</a>{% endif %}
                    {% for pageItem in pages.Pages %}
                        <a href="{{ pageItem.Link }}" class="page-number {% if pageItem.IsCurrent %}active{% endif %}">{{ pageItem.Name }}</a>
                    {% endfor %}
                    {% if pages.NextPage %}<a href="{{ pages.NextPage.Link }}" class="next-page">下一页</a>{% endif %}
                </nav>
            {% endpagination %}
        {% endarchiveList %}
    </ul>
</div>

在这个例子中,当页面本身是一个分类页时,archiveList 标签会智能地获取当前分类的ID,无需手动指定 categoryIdtype="page" 模式与 pagination 标签结合,为用户提供了流畅的翻页体验。

小贴士:无内容时的友好提示

在所有的 archiveList 标签内部,我们都使用了 {% empty %} ... {% endfor %} 结构。这是一个非常实用的功能,当 archiveList 没有找到任何符合条件的内容时,它会显示 empty 块内的提示信息,而不是留下一片空白,大大提升了用户体验。

总结

通过 archiveList 标签及其灵活的参数组合,安企CMS让展示网站最新文章或产品列表变得直观而高效。无论是首页的精选内容,还是分类页面的详细列表,我们都能根据实际需求轻松定制。掌握这些标签的使用,能够帮助你更好地利用安企CMS的强大功能,打造一个内容丰富、动态更新的网站。


常见问题 (FAQ)

**

相关文章

如何利用AnQiCMS的锚文本功能改善内部链接的显示效果?

网站的内部链接犹如一张错综复杂的地图,引导着用户和搜索引擎穿梭于各个页面之间。而这张地图上的“路标”——锚文本,其质量直接决定了导航的效率和用户体验。一个清晰、相关的锚文本不仅能提升用户点击意愿,更是搜索引擎理解页面内容和评估页面权重的重要依据。AnQiCMS作为一款高效的内容管理系统,深谙此道,提供了强大且灵活的锚文本功能,旨在帮助我们轻松改善内部链接的显示效果。 ###

2025-11-09

Sitemap和Robots.txt在内容可见性方面有何作用?

提升网站内容可见性:Sitemap 与 Robots.txt 在安企CMS中的关键作用 让网站内容被更多人看到是每个内容运营者的核心目标。在信息爆炸的互联网世界中,搜索引擎是用户发现内容的桥梁,而在这场争取搜索引擎关注的竞赛中,Sitemap(网站地图)和 Robots.txt(爬虫协议文件)是两个不可或缺的工具。对于安企CMS的用户而言,这两个工具的强大功能被整合进了系统

2025-11-09

如何为文章、分类和标签设置独立的SEO标题和描述?

在网站运营中,让您的内容在搜索引擎中脱颖而出是至关重要的一步。安企CMS(AnQiCMS)深谙此道,为用户提供了灵活且强大的SEO设置功能,让您可以为每一篇文章、每一个分类乃至每一个标签都量身定制独立的SEO标题和描述。这不仅有助于提升网站在搜索结果中的可见度,更能精确地吸引目标受众,从而提高点击率和网站流量。 接下来,我们将详细探讨如何在安企CMS中,为不同类型的内容实体设置专属的SEO信息

2025-11-09

如何配置301重定向以避免内容调整后的流量损失?

在网站运营中,内容调整、页面改版或网站结构优化是常有的事情。然而,每一次调整都可能伴随着风险,其中最常见且影响深远的就是流量损失。当旧的页面地址不再可用,而没有妥善处理时,搜索引擎会遭遇死链接,用户会看到404错误页面,这无疑会严重损害网站的SEO表现和用户体验。这时,301重定向就显得尤为重要,它是确保网站在内容调整后无缝衔接、避免流量损失的关键工具

2025-11-09

如何获取并显示特定分类下的所有文章?

在网站内容管理中,有效地组织和展示文章是提升用户体验和网站结构清晰度的关键。安企CMS提供了强大且灵活的模板标签功能,让您能够轻松地获取并显示特定分类下的所有文章。 ### 确保内容结构清晰:后台分类设置的基石 在开始模板层面的操作之前,我们首先要确保后台的内容结构是清晰、合理的。安企CMS的分类管理功能位于“内容管理”模块下,您可以在这里创建和管理各种文章分类,例如“公司新闻”

2025-11-09

如何显示文章或产品的详细内容页面?

在安企CMS中,文章或产品详细内容页面的展示,是网站内容运营的核心环节。一个设计精良、信息完整的详情页,不仅能有效传递内容价值,更能提升用户体验和搜索引擎友好度。安企CMS提供了强大而灵活的工具集,让我们可以轻松实现这些目标。 ### 内容的基石:内容模型与模板文件 在安企CMS中,所有文章和产品都被统一视为“内容”(archive)。它们之所以能展现出不同的形态

2025-11-09

如何显示与当前文章相关的推荐文章列表?

在网站运营中,向读者推荐相关文章是提升用户体验、延长用户停留时间以及优化SEO的重要策略。当读者阅读完一篇文章后,如果能立即看到与当前内容高度相关的推荐,无疑会大大增加他们继续探索网站的兴趣。安企CMS深知这一需求,提供了强大而灵活的功能,帮助用户轻松实现这一目标。 ### AnqiCMS中的“相关文档”功能 安企CMS的核心优势之一在于其强大的内容管理和模板标签系统

2025-11-09

如何获取并显示网站的所有分类列表?

在安企CMS中,网站分类列表是构建清晰导航、提升用户体验和优化搜索引擎排名的基石。无论是为文章、产品或其他内容模型建立分类体系,AnQiCMS 都提供了灵活而强大的工具来轻松获取并展示这些分类。 AnQiCMS 的核心理念之一就是让内容管理变得高效。它将内容组织成不同的“内容模型”,比如常见的文章模型和产品模型。每个内容模型都可以拥有独立的分类体系。理解这一点是获取分类列表的第一步

2025-11-09