在运营网站时,了解哪些内容更受欢迎、哪些话题更能引发讨论,对于优化内容策略至关重要。安企CMS(AnQiCMS)为我们提供了便捷的方式来获取这些关键数据,比如文章的浏览量和评论数量。下面就来详细看看如何通过安企CMS的API接口来获取这些信息。

获取单个文档的浏览量和评论数量

当你需要查看某一篇具体文章的受欢迎程度时,安企CMS的“获取文档详情接口”是你的首选工具。这个接口能为你提供一篇文档的全面信息,其中就包含了我们关注的浏览量和评论数。

要使用这个接口,你需要向你的网站域名下的 /api/archive/detail 地址发送一个 GET 请求。当然,记得将 {域名地址} 替换成你实际的网站地址。

在发送请求时,你需要告诉接口你想查询哪篇文档。这可以通过两种方式实现:

  • 传递文档的 id,这是一个整数。
  • 或者,如果你知道文档的 URL 别名(filename),也可以传递这个字符串。两者选其一即可。

举个例子,假设你有一篇文档的 ID 是 1,你可以这样构造你的请求: https://你的域名/api/archive/detail?id=1

当你发送这个请求后,安企CMS会返回一个 JSON 格式的数据包。在这个数据包的 data 部分,你会找到许多关于这篇文档的详细信息。其中,有两个字段就是我们一直在寻找的:

  • views:这个字段的值是一个整数,它准确地告诉了你这篇文档到目前为止被浏览了多少次。
  • comment_count:同样是一个整数,它显示了这篇文档收到的评论总数。

通过这两个字段,你就能一目了然地知道这篇文档有多少人看过,以及它引发了多少讨论。这对于评估单篇文章的影响力非常有帮助。

批量获取文档的浏览量和评论数量

如果你的需求是获取网站上多篇文档,甚至是某一分类下所有文档的浏览量和评论数,然后根据这些数据进行排序或者展示一个“热门文章”列表,那么逐个查询显然效率不高。这时候,“获取文档列表接口”就派上用场了。

这个接口位于 {域名地址}/api/archive/list,同样接受 GET 请求。它允许你通过各种条件筛选出你想要的文档列表。

为了获取包含浏览量和评论数的文档列表,你至少需要指定 type="page"。这样,返回的数据中不仅会包含文档列表,还会有一个 total 字段显示总数,便于你进行分页处理。你还可以结合其他参数来精确定位:

  • moduleId:如果你想获取特定模型(比如文章模型或产品模型)下的文档。
  • categoryId:如果你只想看某个分类下的文档。
  • order:这是一个非常有用的参数,比如你可以设置 order="views desc" 来按照浏览量从高到低排序,或者 order="comment_count desc" 来按照评论数量排序。
  • limitpage:控制每页显示多少条以及获取哪一页的数据,方便你进行分页展示。

接口返回的 data 部分会是一个数组,数组中的每个元素都代表一篇文档的简要信息。和获取文档详情类似,每个文档对象中同样包含 viewscomment_count 这两个字段。

通过这个接口,你可以轻松地构建出各种排行榜,比如“本周热门文章”、“评论最多文章”等,极大地丰富了网站内容的展现形式,也帮助用户快速发现高质量或受关注的内容。

实际应用中的小贴士

无论是获取单篇还是多篇文档的浏览量和评论数,关键在于理解这些API接口的请求方式和返回结构。将这些数据整合到你的网站前端展示,能够让内容运营更具数据支持。例如,你可以在文章列表页为每篇文章加上浏览量和评论图标,或者在文章详情页醒目地展示这些数据,鼓励用户参与互动。

记住,所有API请求中的 {域名地址} 都需要替换为你自己的实际网站域名,这是访问安企CMS API的基础。


常见问题解答 (FAQ)

问:我获取到的 viewscomment_count 为什么一直是 0? 答:这可能是因为文档确实没有被浏览或评论过,或者评论正处于待审核状态。安企CMS的浏览量通常在页面被访问时自动增加。如果是新发布的文档,可能需要一些时间才能产生浏览量。对于评论,只有审核通过的评论才会计入 comment_count。你也可以检查请求的 idfilename 是否正确,确保你查询的是正确的文档。

问:如何根据浏览量或评论数量来排序显示文章列表? 答:在使用“获取文档列表接口”(/api/archive/list)时,可以通过 order 参数来指定排序方式。例如,要按浏览量从高到低排序,可以设置 order="views desc";要按评论量从高到低排序,可以设置 order="comment_count desc"。如果你想按创建时间排序,可以使用 order="created_time desc"

问:我可以在前端页面直接调用这些API接口吗? 答:原则上是可以的,但出于安全和性能考虑,更推荐在服务器端调用这些API。如果必须在前端直接调用,请确保你的API请求遵循了CORS(跨域资源共享)策略,并且不泄露任何敏感信息。对于需要Token认证的API,务必妥善保管你的认证信息,避免直接暴露在前端代码中。