自定义内容模型后,如何在前端模板中显示新增的字段数据?

📅 👁️ 64

AnQiCMS 凭借其灵活的内容模型功能,为我们管理各类网站内容带来了极大的便利。无论是文章、产品、活动还是其他任何需要特殊字段的内容类型,我们都可以在后台轻松地自定义字段,以满足独特的业务需求。但当我们满怀期待地在后台创建了新的字段并填充了数据后,新的问题也随之而来:如何在网站的前端页面上,将这些新增的自定义字段数据精准地展现给访客呢?

别担心,AnQiCMS 的模板系统提供了非常直观和强大的方式来处理这个问题。本文将带您一步步了解,如何让您自定义的内容模型字段在前端模板中栩栩如生。


了解 AnQiCMS 的模板机制

在深入操作之前,我们首先需要对 AnQiCMS 的模板机制有一个基本的认识。AnQiCMS 的模板系统采用 Go 语言的 Iris 框架内置模板引擎,语法上类似 Django 模板引擎,非常易于上手。

在 AnQiCMS 中,模板文件通常以 .html 为后缀,并存放在 /template 模板文件夹中。我们通过 {{ 变量 }} 来输出数据,通过 {% 逻辑标签 %} 来实现条件判断、循环等复杂逻辑。理解这些基本元素,是成功显示自定义字段数据的基础。


在内容详情页显示特定自定义字段数据

最常见的需求,莫过于在文章详情页、产品详情页等内容详情页中,显示为该内容模型新增的某个特定字段数据。例如,您可能为“文章模型”新增了“文章作者”字段,或者为“产品模型”新增了“产品颜色”字段。

要显示这些字段,我们需要用到 archiveDetail 标签。这个标签通常用于获取当前文档的详细信息,它也完美支持获取我们自定义的字段。

操作步骤:

  1. 找到对应的模板文件: 如果您是修改文章详情页,通常对应的模板文件可能是 article/detail.html(如果使用了默认的文件夹组织模式)或 article_detail.html(如果使用了扁平化文件组织模式)。产品详情页则可能是 product/detail.htmlproduct_detail.html

  2. 使用 archiveDetail 标签: 在模板文件中,找到您希望显示自定义字段的位置,然后使用如下语法:

    {# 假设您在后台自定义了一个名为“文章作者”,其“调用字段”为“author”的字段 #}
    <div>
        文章作者:{% archiveDetail with name="author" %}
    </div>
    
    {# 或者,您可以先定义一个变量来存储字段值,再输出,这样更灵活 #}
    {% archiveDetail articleAuthor with name="author" %}
    <div>
        文章作者:{{ articleAuthor }}
    </div>
    

    这里最关键的是 name="author" 这部分,author 必须与您在后台“内容模型”设置中为该自定义字段填写的“调用字段”完全一致(区分大小写)。

    同样地,如果您为“产品模型”新增了“产品颜色”字段,其“调用字段”是 color,那么在产品详情页模板中,您可以这样显示:

    {# 产品颜色自定义字段,调用字段为“color” #}
    <div>
        产品颜色:{% archiveDetail with name="color" %}
    </div>
    

    对于单页面 (pageDetail) 和分类 (categoryDetail) 来说,其使用方式也大同小异,只需将 archiveDetail 替换为 pageDetailcategoryDetail 即可,同时确保 name 参数对应的是该模型下的自定义字段。


灵活遍历和展示所有自定义字段数据

有时候,我们可能不希望逐一列出每个自定义字段,而是希望在一个区域(比如产品参数列表)中,自动遍历并显示所有已定义的自定义参数及其值。这种场景下,archiveParams 标签就派上用场了。

archiveParams 标签会返回一个包含所有自定义字段名称和值的数组对象,我们可以通过 for 循环来遍历并展示。

操作步骤:

  1. 在模板中引入 archiveParams 标签:

    {# 假设这是产品详情页,需要在一个区域展示所有自定义参数 #}
    <div class="product-parameters">
        <h3>产品详细参数</h3>
        {% archiveParams params %}
            {% for item in params %}
                <div class="parameter-item">
                    <span class="parameter-name">{{ item.Name }}:</span>
                    <span class="parameter-value">{{ item.Value }}</span>
                </div>
            {% endfor %}
        {% endarchiveParams %}
    </div>
    

    在这个例子中,params 是我们定义的变量名,它包含了文档的所有自定义参数。循环中的 item.Name 会输出参数的中文名称(即您在后台填写的“参数名”),item.Value 则会输出该参数对应的值。

    archiveParams 默认会返回一个排序后的数组,如果某些特殊情况您需要通过字段的“调用字段”直接访问,可以使用 sorted=false 参数,它会返回一个键值对(map)形式的对象。例如,如果您有一个调用字段为 material 的自定义字段: “`twig {% archiveParams customFields with sorted=false %}

    产品材质:{{ customFields.material.Value }}
    

    {% endarchiveParams %}

相关文章

如何实现内容的多语言显示和切换功能?

让您的网站走向全球:安企CMS的多语言内容策略与实现 在当今全球化的数字时代,许多企业和内容创作者都希望自己的网站能够触达更广泛的受众。这意味着提供多种语言的内容显示和切换功能,以满足不同国家和地区用户的阅读习惯。安企CMS(AnQiCMS)作为一款高效的内容管理系统,充分考虑了这一需求,提供了一套灵活的解决方案,帮助您轻松实现网站的多语言功能。 在安企CMS中,实现内容的多语言显示和切换

2025-11-09

如何在模板中获取并显示当前文档的SEO标题和描述?

在网站运营中,搜索引擎优化(SEO)是提升网站可见度的关键环节。而页面标题(Title)和描述(Description)作为搜索引擎抓取和用户浏览时首先看到的信息,其重要性不言而喻。安企CMS(AnQiCMS)深知这一点,因此在模板中获取和显示这些SEO元素提供了灵活且强大的机制。 ### 安企CMS的TDK(Title, Description,

2025-11-09

如何设置和优化网站的伪静态URL结构,提升搜索引擎中的显示效果?

在网站运营中,网址结构(URL)的重要性不言而喻。一个清晰、有意义的网址不仅能帮助用户更好地理解页面内容,更是搜索引擎优化(SEO)的关键一环。尤其对于内容管理系统来说,合理设置伪静态URL结构,能够显著提升网站在搜索引擎中的显示效果和用户体验。 AnQiCMS作为一款注重SEO优化的内容管理系统,在这方面提供了强大且灵活的支持。它不仅内置了多种常用的伪静态规则

2025-11-09

AnQiCMS支持哪些设备适配模式,以优化内容显示?

随着移动互联网的普及,用户访问网站的设备种类日益多样化,从大屏幕的PC显示器到小巧的智能手机,网站内容的显示效果直接关系到用户体验和信息的有效传递。安企CMS(AnQiCMS)深谙此道,提供了多种设备适配模式,旨在帮助用户灵活地优化内容显示,确保网站在任何设备上都能呈现出**状态。 安企CMS的设备适配策略主要分为三种,每种模式都有其独特的实现方式和适用场景

2025-11-09

如何在AnQiCMS中启用Markdown渲染,正确显示数学公式和流程图?

在AnQiCMS中,想要让你的内容更具表现力,特别是需要展示复杂的数学公式或清晰的流程图时,灵活运用Markdown编辑器是一个非常有效的方案。新版本的AnQiCMS已经为此提供了良好的支持。接下来,我们将一起探索如何在AnQiCMS中启用这些功能,让你的网站内容焕发新生。 --- ### 第一步:开启Markdown编辑器 要开始使用Markdown撰写内容

2025-11-09

如何在页面中嵌入评论列表并控制其显示分页?

在网站运营中,用户互动是提升站点活跃度和内容价值的关键。AnQiCMS 提供了一套直观而强大的功能,帮助我们轻松地在页面中嵌入评论功能,并灵活地控制评论列表的显示方式,尤其是其分页管理,这对于拥有大量用户评论的页面来说至关重要。 ### 开启评论功能,让内容活起来 首先,要让用户能够发表评论,我们需要确保后台的评论功能已经开启。一旦评论功能激活

2025-11-09

如何在模板中循环遍历并显示指定分类下的所有子分类?

安企CMS模板中,如何优雅地展示指定分类下的所有子分类? 对于一个内容丰富的网站来说,清晰的分类结构是提升用户体验和搜索引擎友好度的关键。安企CMS(AnQiCMS)凭借其灵活的模板引擎和强大的标签系统,让您能够轻松地在网站前台循环遍历并展示指定分类下的所有子分类,无论是直接子分类还是多级嵌套的子分类,都能游刃有余。 今天,我们就来一起探讨如何在安企CMS的模板中实现这一功能。 ###

2025-11-09

如何在导航菜单中显示二级下拉菜单,并关联不同的内容?

安企CMS提供了一套直观而强大的导航菜单管理系统,让您能够轻松地为网站构建清晰、用户友好的导航结构,包括多级的下拉菜单。这不仅能提升网站的用户体验,还能帮助搜索引擎更好地理解您的网站内容层级,从而优化SEO表现。 ### 理解安企CMS的导航体系 在安企CMS中,导航菜单的设置和管理都集中在后台的“网站导航设置”功能中。这里是您构建网站菜单的核心区域

2025-11-09