`archiveDetail`标签如何显示AnQiCMS文章

📅 👁️ 73

在 AnQiCMS 中构建内容丰富的网页时,archiveDetail 标签无疑是文章详情页面展示的核心工具。它能够灵活地获取并呈现文章或产品的所有详细信息,帮助网站运营者轻松打造出符合品牌形象和用户体验的详情页面。

archiveDetail 标签的核心作用

当访问一个具体的文章或产品页面时,archiveDetail 标签就派上了用场。它允许您获取当前页面文章的所有数据字段,无论是标题、内容、图片还是其他自定义信息。更方便的是,在文章详情页中,系统通常会自动提供一个名为 archive 的全局对象,让您可以通过 {{archive.字段名称}} 的简洁方式直接访问文章数据,无需再显式使用 archiveDetail 标签进行获取,极大地简化了模板代码。

当然,如果您需要在非详情页(如首页或列表页)获取指定文章的详情,或者在详情页中需要获取其他文章的详情,archiveDetail 标签依然能提供强大的支持。此时,您可以通过 id(文章ID)或 token(文章的URL别名)参数来精确指定要获取的文章。例如,{% archiveDetail 变量名 with name="Title" id="1" %} 可以获取 ID 为 1 的文章标题。

灵活获取文章的各项详细信息

archiveDetail 标签可以获取的内容非常全面,涵盖了文章的方方面面:

  1. 基础元数据

    • Title:文章的标题。
    • Link:文章的访问链接。
    • Description:文章的简介或描述。
    • Keywords:文章的关键词。
    • SeoTitle:为搜索引擎优化的标题。
    • CanonicalUrl:规范链接,用于SEO,避免内容重复问题。
    • Views:文章的浏览量。
    • CommentCount:评论数量。
  2. 核心内容与结构

    • Content:文章的主体内容。值得一提的是,AnQiCMS 支持 Markdown 编辑器,Content 字段在显示时可以自动将 Markdown 语法渲染成 HTML。您还可以通过 lazy="data-src" 参数为内容中的图片启用懒加载,优化页面加载速度,并通过 render=true|false 参数手动控制 Markdown 是否渲染。
    • ContentTitles:一个数组,包含文章内容中各级标题的信息,方便生成文章目录或导航。
  3. 图片资源

    • Logo:文章的封面首图(大图)。
    • Thumb:文章的缩略图。
    • Images:一个图片URL数组,用于展示文章的组图或多图。由于是数组,您需要通过循环来遍历显示。
  4. 时间信息

    • CreatedTime:文章的创建时间(Unix 时间戳)。
    • UpdatedTime:文章的更新时间(Unix 时间戳)。
    • 这两个字段需要配合 {{stampToDate(时间戳, "格式")}} 标签进行格式化输出,例如 {{stampToDate(archive.CreatedTime, "2006年01月02日 15:04")}} 会显示为“2023年08月20日 14:30”的格式。
  5. 关联数据

    • Category:文章所属的分类对象,可以直接获取分类的 ID、标题、链接等信息。例如 {{archive.Category.Title}}。您也可以使用 categoryDetail 标签来获取更完整的分类信息。
    • Tags:文章关联的标签。通常需要结合 tagList 标签来循环展示这些标签。
  6. 自定义字段

    • 在 AnQiCMS 后台的“内容模型”中,您可以为不同的内容模型(如文章模型、产品模型)添加自定义字段。这些自定义字段也可以通过 archiveDetail 标签直接按名称获取,例如 {% archiveDetail with name="author" %}。如果您想展示所有自定义字段,可以使用 archiveParams 标签进行循环遍历。

实际应用示例:构建详情页面

理解了这些字段后,我们可以轻松构建出文章或产品的详情页面。

示例一:经典文章详情页

在一个标准的文章详情页面,您可能希望显示文章标题、所属分类、发布时间、关联标签、浏览量以及文章正文。以下是一个简洁的模板代码片段,展示了如何实现这些内容的展示:

<article class="article-detail">
    <h1 class="article-title">{% archiveDetail with name="Title" %}</h1> {# 或直接 {{archive.Title}} #}
    <div class="article-meta">
        <span class="category">分类:<a href="{% categoryDetail with name='Link' id=archive.CategoryId %}">{% categoryDetail with name='Title' id=archive.CategoryId %}</a></span>
        <span class="date">发布于:{{stampToDate(archive.CreatedTime, "2006年01月02日")}}</span>
        <span class="tags">标签:
            {% tagList tags with itemId=archive.Id limit="5" %}
                {% for item in tags %}
                    <a href="{{item.Link}}">{{item.Title}}</a>
                {% endfor %}
            {% endtagList %}
        </span>
        <span class="views">阅读量:{% archiveDetail with name="Views" %}</span>
    </div>
    <div class="article-content">
        {% archiveDetail articleContent with name="Content" lazy="data-src" render=true %}
        {{articleContent|safe}} {# |safe 用于避免HTML转义 #}
    </div>
</article>

这段代码首先获取了文章标题。接着,通过 categoryDetail 标签获取所属分类的链接和名称。发布时间使用 stampToDate 进行格式化。标签则利用 tagList 标签获取并循环展示。文章内容 Content 启用了图片懒加载并渲染 Markdown,并使用 |safe 过滤器确保 HTML 内容正常解析。

示例二:产品详情页,展示自定义参数

对于产品详情页,除了基本信息,可能还需要展示一些产品特有的参数(这些通常在后台“内容模型”中作为自定义字段添加)。

”`twig

<div class="product-image">
    <img src="{% archiveDetail with name='Logo' %}" alt="{% archiveDetail with name='Title' %}" />
    {# 如果有组图,可以循环展示 #}
    {% archiveDetail productImages with name="Images" %}
    {% for img in productImages %}
        <img src="{{img}}" alt="{{archive.Title}} - 图{{loop.Counter}}" />
    {% endfor %}
    {% endarchiveDetail %}
</div>
<div class="product-info">

相关文章

`archiveList`标签如何获取并显示AnQiCMS指定分类、模型的文档列表?

在安企CMS中,高效地管理和展示网站内容是提升用户体验和搜索引擎排名的关键。为了实现这一目标,我们经常需要根据特定的分类或内容模型来组织和显示文档列表。这时,`archiveList`标签就成为了我们手中强大的工具。它能帮助我们灵活地从数据库中提取所需内容,并以多样化的方式呈现。 ### `archiveList`标签

2025-11-08

`pageDetail`标签如何显示AnQiCMS单页面的标题、内容和缩略图?

AnQiCMS 提供了一种高效管理独立页面的方式,例如“关于我们”、“联系方式”等。这些页面通常拥有独立的标题、内容和图片,需要精确地在前端模板中呈现。`pageDetail` 标签便是安企CMS为实现这一目的而设计的核心工具,它允许我们轻松地从后台数据库中提取并展示单页面的详细信息。 ### 理解 `pageDetail` 标签:单页面内容的展示核心 在AnQiCMS中

2025-11-08

`pageList`标签如何获取并显示AnQiCMS所有单页面的列表?

在安企CMS中,单页面是一种非常灵活的内容形式,它不依赖于复杂的分类或模型结构,常常用于发布“关于我们”、“联系方式”、“服务介绍”等独立且内容相对固定的页面。这些页面的特点是内容独立,通常只需要一个页面来承载其信息。当您需要在网站的特定位置,比如底部导航、侧边栏或者某个专题页面上,展示这些单页面的列表时,安企CMS提供了专门的`pageList`标签,让这一操作变得简单直观。 ###

2025-11-08

`categoryDetail`标签如何显示AnQiCMS特定分类的详细信息,如简介或Banner图?

在安企CMS的模板开发中,有效地展示分类的详细信息是提升网站用户体验和SEO表现的关键。`categoryDetail` 标签正是为此而生,它允许我们灵活地获取并呈现特定分类的各种信息,从基础的简介文字到富有视觉冲击力的Banner图片,都能轻松驾驭。 ### 核心功能解析:`categoryDetail`标签概览 `categoryDetail` 标签主要用于获取单个分类的详细数据

2025-11-08

安企CMS如何自定义文章详情页的展示布局?

在网站运营中,文章详情页如同内容的“门面”,它不仅承载着核心信息,更是用户深入了解、产生共鸣的关键触点。一个设计精良、布局合理且能突出内容价值的详情页,能够显著提升用户的阅读体验,有效传达信息,甚至促成进一步的互动或转化。安企CMS深知其重要性,因此提供了高度灵活和可定制的功能,让我们可以轻松打造独具风格的专属文章详情页。 ###

2025-11-08

在安企CMS中,如何实现多语言内容的切换与显示?

在全球化内容营销的浪潮下,网站支持多种语言已成为不可或缺的功能。安企CMS(AnQiCMS)深知这一需求,提供了灵活的多语言解决方案,帮助我们将内容轻松地呈现在不同语言的用户面前。本文将详细探讨如何在安企CMS中实现多语言内容的切换与显示。 ### 区分系统语言与内容语言 在深入了解之前,我们首先需要明确安企CMS中两种“语言”的概念: 1. **系统后台语言包:**

2025-11-08

如何利用安企CMS的伪静态功能优化URL显示以提升SEO?

在网站运营中,一个清晰、友好的网站地址(URL)不仅能提升用户体验,更是搜索引擎优化(SEO)不可或缺的一环。原始的动态URL,常常包含复杂的参数和符号,对搜索引擎蜘蛛的抓取和用户理解都不太友好。而伪静态功能,正是将这些复杂动态URL转化为简洁、可读性强、类似静态页面的URL,从而在视觉和技术层面双重优化网站表现。 安企CMS(AnQiCMS)深知URL结构对网站SEO的重要性

2025-11-08

安企CMS支持哪些网站模式(自适应、PC+Mobile)来显示内容?

在当今多屏互联的时代,网站内容如何适配不同设备,直接影响着用户体验和信息的传播效率。安企CMS充分考虑了这一需求,为用户提供了多种灵活的网站内容显示模式,确保您的网站能在PC、平板、手机等各类设备上,以**状态呈现,为访客带来流畅舒适的浏览体验。 安企CMS在内容展示方面,主要支持三种核心模式:自适应模式、代码适配模式和PC+Mobile独立站点模式。这三种模式各有侧重

2025-11-08