答案:通过添加自定义字段digg和burry,修改模板添加顶踩按钮,创建PHP接口处理数据更新,并用JS实现异步交互,结合安全措施防止刷票,即可在phpcms中实现顶踩功能。

phpcms 的“顶踩”功能可以通过自定义字段结合简单的 PHP 逻辑和前端交互来实现。系统本身没有内置完整的顶踩模块,但你可以通过以下方式手动添加并使用。
要支持顶踩,先要在对应的内容模型中添加两个字段:
进入后台 → 内容模型管理 → 修改对应模型(如文章模型)→ 字段管理 → 添加新字段,分别创建 digg 和 burry 字段。
打开对应的内容显示模板文件(如 show.html),在合适位置加入顶踩按钮代码:
立即学习“PHP免费学习笔记(深入)”;
示例代码:<div class="digg-burry"> <a href="javascript:void(0);" onclick="digg_content(<?php echo $id;?>)">顶 (<span id="digg_num"><?php echo $digg;?></span>)</a> <a href="javascript:void(0);" onclick="burry_content(<?php echo $id;?>)">踩 (<span id="burry_num"><?php echo $burry;?></span>)</a> </div>
在网站某个可访问目录(如 api/)下创建一个处理脚本,例如 digg.php:
<?php
define('PHPCMS_PATH', dirname(__FILE__) . '/');
include PHPCMS_PATH.'init.php';
pc_base::load_app_class('digg_api','content',0);
$content_id = intval($_POST['id']);
$type = trim($_POST['type']); // digg 或 burry
if (!$content_id) {
exit('0');
}
// 实例化内容模型
$Model = pc_base::load_model('content_model');
$Model->set_model(1); // 根据你的模型ID调整
// 获取当前数据
$data = $Model->get_one(array('id'=>$content_id));
if (!$data) {
exit('0');
}
$field = $type == 'digg' ? 'digg' : 'burry';
$new_value = $data[$field] + 1;
// 更新数据库
$Model->update(array($field => $new_value), array('id'=>$content_id));
// 返回最新数值
exit($new_value);
?>
在页面底部或模板中加入 JavaScript 代码:
function digg_content(id) {
send_vote(id, 'digg');
}
function burry_content(id) {
send_vote(id, 'burry');
}
function send_vote(id, type) {
$.post('/api/digg.php', {id:id, type:type}, function(res){
if (res > 0) {
if (type == 'digg') {
$('#digg_num').text(res);
} else {
$('#burry_num').text(res);
}
alert('感谢您的投票!');
} else {
alert('操作失败,请重试');
}
});
}
确保页面已加载 jQuery,否则需引入或改用原生 JS。
基本上就这些。不复杂但需要一点开发基础。按步骤操作后,你的 phpcms 站点就能支持顶踩功能了。
以上就是phpcms顶踩怎么加?顶踩功能如何设置使用?的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号