我需要计算Bolt CMS中的网页访问量以对页面进行评分。像StackOverflow中的东西:
我的内容类型pages
包含字段visits
。我知道我需要在页面模板中添加一些代码,但我不明白如何增加当前visits
的字段record
。是否可以通过树枝?
或者我必须在模板中添加一些自定义查询?但我不知道该怎么做。
我将不胜感激任何建议。
答案 0 :(得分:1)
好的,这是一种快速且可能不正确的方法,在您的枝条模板中,您可以增加并保存访问值:
{% record.setValue('visits', record.visits +1 ) %}
{% app.storage.saveContent(record) %}
如果您正在处理一个简单的项目,但它会在您网站的每个网页浏览中强制执行数据库查询(包括来自机器人/自动脚本等),这样会很好,所以它并不是非常理想用于生产中/高交通站点。
如果您想以更强大的方式解决问题,那么使用Async JS跟踪器的Google Analytics方法可能会更好,或者您甚至可以使用Google AnalyticsAPI根据Google记录的综合浏览量定期更新您的访问次数
答案 1 :(得分:0)
我猜这还有一点。堆栈溢出还会检查访问过的唯一人员。但是对于一个基本的解决方案,我会在数据库中使用一个简单的int字段创建一个表。并将其设置为0.(对于每个页面)
然后创建一个PHP文件,您将获得此文件。
$pagid (Get url)
$result = mysql_query('Select count from counter WHERE pageid=$pagid');
$newcount = $result['count'] + 1;
mysql_query('UPDATE counter SET count=$newcount');
然后只需在每个页面中包含此内容,并测试当您刷新页面时计数器是否上升。 (我在上面的代码字段中声明的是对需要发生的事情的一般概述,所以你需要稍微调整一下)
当你开始工作时,如果访客是独一无二的,你可以尝试添加一些检查器。但这是一个问题。
如果你可以使用PHP,那么添加PHP
标签sessions
标签和sql
标签,其他人可能会给你一个比我在这里更好的解释。
此外,您需要使用PHP或其他脚本执行此操作的原因是因为PHP' PHP'模板化不允许您修改数据库数据。它只允许你获取它。
希望我的一些解释是有道理的,希望这可以帮助你解决问题!