在安企CMS中,文章或产品详细内容页面的展示,是网站内容运营的核心环节。一个设计精良、信息完整的详情页,不仅能有效传递内容价值,更能提升用户体验和搜索引擎友好度。安企CMS提供了强大而灵活的工具集,让我们可以轻松实现这些目标。

内容的基石:内容模型与模板文件

在安企CMS中,所有文章和产品都被统一视为“内容”(archive)。它们之所以能展现出不同的形态,例如一篇新闻文章和一件商品详情,其背后得益于安企CMS灵活的内容模型功能。我们可以根据业务需求自定义内容模型,为不同类型的内容(如“文章模型”或“产品模型”)配置专属字段,比如文章可能有“作者”、“发布日期”,而产品则有“价格”、“库存”等。这些自定义字段是后续在详情页中展示个性化信息的源泉。

当内容在后台创建并发布后,前台如何将其呈现给用户,则由模板文件决定。安企CMS的模板系统采用类似Django模板引擎的语法,使用.html作为模板文件后缀。针对文章或产品的详细内容页面,通常会使用{模型table}/detail.html这样的命名约定。例如,如果您的内容模型是“文章”(通常对应article表),那么默认的详情页模板文件就是article/detail.html。如果您希望某一篇特定的文章或产品使用独特的布局,还可以在后台为它指定自定义模板文件,例如article/your-special-story.html,只要这个文件存在,系统就会优先采用。

核心功能:巧妙运用 archiveDetail 标签

要在详情页中动态地显示内容数据,我们需要依赖安企CMS的模板标签,其中最核心的莫过于archiveDetail标签。这个标签是获取当前文章或产品所有详情数据的关键。

我们可以通过多种方式使用archiveDetail标签:

  • 直接访问当前页面字段: 在任何文章或产品详情页,可以直接使用{{archive.文档字段}}的形式来调用当前内容的各项信息。例如,要显示标题,直接{{archive.Title}}即可。
  • 指定字段获取: 如果您希望更明确地获取某个字段,可以使用{% archiveDetail with name="字段名称" %}。例如,获取当前内容的标题:{% archiveDetail with name="Title" %}
  • 安全地显示富文本内容: 对于文章或产品描述等可能包含HTML标签的富文本内容(Content字段),我们务必使用|safe过滤器,例如{{archive.Content|safe}}。这样可以确保HTML内容被正确解析和渲染,而不是作为纯文本显示。如果您的内容是Markdown格式,安企CMS也能自动进行渲染,也可以通过render=true参数进行手动控制,例如{{archive.Content|render|safe}}
  • 图片与多媒体: 详情页往往需要展示图片。archiveDetail可以方便地获取缩略图(Thumb)、封面首图(Logo)甚至是一组图片(Images,需要通过for循环遍历显示)。
  • 自定义字段的呈现: 针对您在内容模型中定义的各种自定义字段(如“产品型号”、“作者”),可以通过archiveParams标签来获取和展示。您可以循环遍历所有自定义参数来统一展示,也可以直接通过{% archiveDetail with name="您的自定义字段名" %}来获取特定字段的值。

例如,一个典型的文章详情页可能这样显示:

<article>
    <h1>{% archiveDetail with name="Title" %}</h1>
    <div class="meta-info">
        <span>发布时间:{{ stampToDate(archive.CreatedTime, "2006-01-02") }}</span>
        <span>浏览量:{% archiveDetail with name="Views" %}</span>
        <a href="{% categoryDetail with name='Link' %}">分类:{% categoryDetail with name='Title' %}</a>
    </div>
    <div class="content">
        {% archiveDetail articleContent with name="Content" render=true %}{{ articleContent|safe }}
    </div>
    {% if archive.自定义字段名 %}
    <div class="custom-field">
        自定义信息:{% archiveDetail with name="自定义字段名" %}
    </div>
    {% endif %}
</article>

提升用户体验:细节处的精彩

一个优秀的详情页,不仅仅是内容的堆砌,还需要考虑用户的浏览体验和信息获取效率。安企CMS提供了多种辅助标签来丰富详情页的功能:

  • 清晰的导航路径:面包屑 (breadcrumb标签) 通过面包屑导航,用户可以清晰地了解当前页面在网站结构中的位置,方便回溯。在模板中,使用{% breadcrumb crumbs %}即可生成。
  • 前后关联:上一篇与下一篇 (prevArchivenextArchive标签) 在文章或产品详情底部添加“上一篇”和“下一篇”链接,能有效引导用户继续浏览相关内容,延长用户停留时间。
  • 智能推荐:相关内容 (archiveList标签,配合type="related") 根据当前详情页的内容(例如同分类、同关键词),智能推荐相关的文章或产品,能提高内容发现率和用户粘性。
  • 互动反馈:评论系统 (commentList标签) 如果您的网站允许用户评论,可以在详情页底部集成评论列表和评论表单,增强用户参与感。评论的提交和点赞功能都提供了相应的API接口。
  • 优化可见性:TDK设置 (tdk标签) 虽然详情页的TDK(标题、关键词、描述)大部分在内容发布时已设置,但模板标签tdk可以在页面head部分确保这些SEO关键信息被正确输出,例如:
    
    <title>{% tdk with name="Title" siteName=true %}</title>
    <meta name="keywords" content="{% tdk with name="Keywords" %}">
    <meta name="description" content="{% tdk with name="Description" %}">
    

URL结构与SEO:伪静态的助力

详情页的URL结构对搜索引擎优化(SEO)至关重要。安企CMS支持强大的伪静态规则定制,我们可以配置文章或产品详情页的URL以友好、有意义的方式展现,而不是冗长的动态参数。例如,将/article?id=123优化为`/article/my-great-