如何在AnQiCMS的评论列表中正确显示用户评论及其审核状态?

📅 👁️ 84

在AnQiCMS中管理和展示用户评论,特别是它们的审核状态,是内容运营中一个非常实用的功能。它不仅能帮助我们维护社区秩序,还能灵活控制网站内容的呈现,确保发布内容的质量和合规性。接下来,我们就来详细了解如何在您的网站评论列表中正确显示用户评论及其审核状态。

核心功能:评论列表的调用

要在网站页面上显示用户评论,我们需要借助AnQiCMS强大的模板标签系统。其中,commentList标签就是专门为此设计的。通常,我们会在文档详情页(例如文章、产品页面)下方添加评论区域。

使用commentList标签时,首先需要指定评论所关联的文档ID。这个ID通常通过页面的当前文档信息(比如在文章详情页,我们可以通过archive.Id获取)来传递。同时,您可以选择评论列表的展示类型,例如type="list"用于一次性显示固定数量的评论,或者type="page"用于分页显示,这在评论数量较多时能有效提升页面加载速度和用户体验。limit参数则允许您控制每页或每次加载的评论数量。

这里有一个基础的commentList标签使用示例,它将获取当前文档的评论列表:

{% commentList comments with archiveId=archive.Id type="list" limit="6" %}
    {% for item in comments %}
    <div class="comment-item">
        <span class="comment-user">{{item.UserName}}</span>
        <span class="comment-time">{{stampToDate(item.CreatedTime, "2006-01-02 15:04")}}</span>
        <p class="comment-content">{{item.Content}}</p>
    </div>
    {% endfor %}
{% else %}
    <p>暂无评论,快来发表你的看法吧!</p>
{% endcommentList %}

在这个例子中,archive.Id代表当前页面的文档ID。comments是我们为评论列表数据定义的变量名,您可以在后续的for循环中通过item来访问每一条评论的具体信息。stampToDate标签则能帮助我们将时间戳格式化为易读的日期和时间。

掌控评论状态:正确显示审核信息

评论的审核状态是内容管理的关键一环。AnQiCMS为每条评论提供了Status字段,它的值为1表示评论已审核通过并可以正常显示,而0则表示评论正在审核中。通过这个字段,我们可以在前端页面上灵活地处理待审核评论的显示方式。

通常来说,我们不会直接显示待审核评论的完整内容,而是给出一个提示信息,例如“该内容正在审核中”。对于回复类型的评论,我们还需要考虑父级评论的审核状态。

下面是对前面示例代码的改进,加入了对评论审核状态和回复评论的处理:

”`twig {% commentList comments with archiveId=archive.Id type=“list” limit=“6” %}

{% for item in comments %}
<div class="comment-item">
    <div class="comment-meta">
        <span class="comment-user">
            {% if item.Status != 1 %}
                <!-- 评论待审核时,用户名可截断或显示为匿名 -->
                审核中:{{item.UserName|truncatechars:6}}
            {% else %}
                {{item.UserName}}
            {% endif %}
        </span>
        {% if item.Parent %}
            <span class="reply-indicator">回复</span>
            <span class="comment-parent-user">
                {% if item.Parent.Status != 1 %}
                    <!-- 父级评论待审核时,同样给出提示 -->
                    审核中:{{item.Parent.UserName|truncatechars:6}}
                {% else %}
                    {{item.Parent.UserName}}
                {% endif %}
            </span>
        {% endif %}
        <span class="comment-time">{{stampToDate(item.CreatedTime, "2006-01-02 15:04")}}</span>
    </div>
    <div class="comment-body">
        {% if item.Parent %}
            <blockquote class="reply-quote">
                {% if item.Parent.Status != 1 %}
                    <p class="pending-quote-message">该内容正在审核中:{{item.Parent.Content|truncatechars:15}}</p>
                {% else %}
                    <p>{{item.Parent.Content|truncatechars:100}}</p>
                {% endif %}
            </blockquote>
        {% endif %}
        {% if item.Status != 1 %}
            <p class="pending-message">该内容正在审核中:{{item.Content|truncatechars:15}}</p>
        {% else %}
            <p>{{item.Content}}</p>
        {% endif %}
    </div>
    <div class="comment-actions" data-id="{{item.Id}}" data-user="{{item.UserName}}">
        <a class="action-item vote-comment">赞

相关文章

AnQiCMS如何确保通过`safe`过滤器输出的HTML内容在前端安全且正确解析显示?

在网站运营中,我们经常需要展示用户输入或由富文本编辑器生成的HTML内容。如何确保这些动态内容既能正确显示,又能避免潜在的安全风险,是每个内容管理系统都必须面对的挑战。AnQiCMS作为一款注重安全的Go语言CMS,在这个方面有着一套成熟的机制,尤其是它提供的`safe`过滤器,在保障前端内容安全与正确解析显示上扮演着关键角色。 ### 默认的安全考量:为什么要自动转义? 首先

2025-11-09

如何为AnQiCMS的单页面设置独立的显示布局和元素,如“关于我们”页面?

在AnQiCMS中,为“关于我们”这类单页面设置独立的显示布局和元素,能够让网站内容呈现更具特色和专业性。AnQiCMS凭借其灵活的模板引擎和模块化设计,让这一过程变得直观且高效。 ### 为什么需要为单页面定制专属布局? 在使用AnQiCMS构建网站时,我们经常会遇到这样的需求:某些特定页面,比如“关于我们”、“联系我们”或者一些专题落地页

2025-11-09

AnQiCMS的“内容模型自定义字段”如何在前端页面中灵活调用和显示其值?

安企CMS在内容管理方面做得非常出色,特别是其灵活的内容模型和自定义字段功能,为我们搭建个性化网站提供了极大的便利。网站的内容往往不仅仅是标题和正文,我们可能还需要文章的作者、发布来源、产品规格、活动地点、房屋面积等各种额外信息。这些自定义字段就像是内容的“专属档案袋”,让我们能根据业务需求,为每种内容类型量身定制所需的属性。 那么,当我们在后台为内容模型创建了这些丰富的自定义字段后

2025-11-09

如何在AnQiCMS网站底部正确显示备案号和版权信息,并确保自动更新年份?

网站底部的信息,如备案号和版权声明,看似不起眼,却是网站专业度、法律合规性和品牌信任度的重要体现。对于运营者而言,正确地展示这些信息,并确保年份能够自动更新,不仅省心,也能避免每年手动修改的麻烦。在AnQiCMS中,实现这一目标非常直接和灵活。 ### 在后台设置备案号和版权信息 在AnQiCMS中,网站的备案号和版权信息都可以在统一的“全局设置”中进行配置

2025-11-09

AnQiCMS是否提供便捷的标签来显示网站Logo和网站名称,并支持多站点调用?

在管理和运营网站的过程中,网站的品牌形象——Logo和网站名称——无疑是最核心的标识。它们不仅代表着网站的身份,也直接影响着用户对品牌的认知。对于像AnQiCMS这样致力于提供高效内容管理解决方案的系统来说,如何便捷地显示这些关键信息,并支持多站点环境下的灵活调用,是衡量其易用性和强大功能的重要标准。 AnQiCMS在这方面的设计理念,正是围绕着“便捷”和“灵活”展开的

2025-11-09

如何在AnQiCMS模板中精确格式化显示文章的发布和更新时间戳?

在网站内容运营中,清晰地展示文章的发布和更新时间,对于提升用户体验、提供内容时效性信息以及优化搜索引擎索引都至关重要。安企CMS(AnQiCMS)在模板中提供了强大而灵活的时间戳格式化功能,让我们可以根据具体需求,将原始的时间戳数据转换为用户友好的日期和时间显示。 要在AnQiCMS模板中精确格式化显示文章的发布和更新时间,我们需要用到一个核心的模板标签:`stampToDate`

2025-11-09

AnQiCMS如何动态生成和显示面包屑导航,并控制是否包含当前页面标题?

在构建用户友好的网站时,面包屑导航扮演着不可或缺的角色。它不仅能直观地展示用户在网站中的当前位置,避免迷失,还能优化网站结构,对搜索引擎优化(SEO)大有裨益。对于安企CMS(AnQiCMS)的用户而言,利用其强大的模板标签系统,动态生成并灵活控制面包屑导航是提升网站体验的关键。 安企CMS深知这一点,因此内置了强大且灵活的面包屑导航功能,您无需复杂的编程知识,就能在网站中轻松实现这一功能

2025-11-09

如何配置AnQiCMS,使其在移动设备上正确显示为独立的移动端站点内容?

在AnQiCMS中,为了给移动设备用户提供更优质的访问体验,我们可以将网站配置为在移动端显示独立的站点内容。这种PC端与移动端独立运营的模式,不仅有助于针对不同设备进行精细化设计和优化,还能在特定场景下提升移动端的SEO表现。 AnQiCMS为我们提供了多种网站显示模式,其中包括了“PC+手机独立站点”模式,这正是实现移动端独立内容展示的基础。接下来,我们将逐步探讨如何配置AnQiCMS

2025-11-09