优化PbootCms的点赞效果

PbootCms默认的点赞、反对效果

写这篇文章时pbootCms版本是V2.0.7

CMS系统默认给出了点赞、反对的链接。分别是:

{content:likeslink} 点赞链接

{content:opposelink} 反对链接

使用效果是,点击一次,页面刷新一下,点赞数{content:likes}{content:oppose}会显示+1。

这个效果显示比较硬。一个小功能,居然要页面刷新,不能忍,必须改造。

改造进行时

当我写到一半的时候,发现原来PbootCms已经有这个API接口了。手动黑人问号。

那么还是用官方的吧,官方的开发文档中并没有给出相关文档。

我们先来说一下这俩接口。

点赞链接:http://IP/api.php/do/likes/id/*    //此处传递文章的ID,即{content:id}

反对链接:http://IP/api.php/do/oppose/id/*    //此处传递文章的ID,即{content:id}

下面就简单啦。用点赞做示例:

$(document).ready(function (e) {  var url='/api.php/do/likes/id/'+{content:id};  $.ajax({    type: 'POST',    url: url,    dataType: 'json',    data: {      appid: '{pboot:appid}',      timestamp: '{pboot:timestamp}',      signature: '{pboot:signature}'     },    success: function (response, status) {      if(response.code){        //获取数据成功        //此处对页面已经显示的{content:likes}+1,注意JS中需要转换为数字,才能进行+1,否则会是字符串拼接。        alert(response.data);      }else{        //返回错误数据        alert(response.data);      }    },    error:function(xhr,status,error){      //返回数据异常      alert('返回数据异常!');    }  });});

PbootCMS点赞优化方案

那么问题来了,这个是可以无限点赞的。根本停不下来呀…

我们应该事先的效果是跟常规的刷新页面效果一样,一天只能点赞一次。

我们需要对API接口进行优化一下。

需要修改的文件路径:apps/api/controller/DoController.php

大约在24行;看下注释就知道啦。

我们同样以点赞为例,上代码:

    // 点赞    public function likes()    {        if (! ! $id = request('id', 'int')) {            if(! cookie('likes_' . $id)){                $this->model->addLikes($id);                cookie('likes_' . $id, true, 86400, null, null, null, null);                json(1, '点赞成功');            }else{                json(0, '24小时内只能点赞一次哦!');            }        } else {            json(0, '点赞失败');        }    }

至此,24小时点赞一次的功能就优化完成啦。

效果可以参考本文下放的 很赞哦!按钮。

学以致用

同理,反对的优化方式,你是不是也可以依葫芦画瓢写出来呢。这个就作为课堂作业吧,同学们下课。

本文由网友投稿或「聚码源码网」整理自网络,如转载请注明出处:https://www.jumaniu.com/11408/

本站发布的内容若侵犯到您的权益,请邮件联系 zhangqy2022#yeah.net 删除,我们将及时处理!

从您进入本站开始,已表示您已同意接受本站【免责声明】中的一切条款!

本站大部分下载资源收集于网络,不保证其完整性以及安全性,请下载后自行研究。

本站资源仅供学习和交流使用,版权归原作者所有,请在下载后24小时之内自觉删除。

若作商业用途,请购买正版,由于未及时购买和付费发生的侵权行为,使用者自行承担,概与本站无关。

常见问题
  • 本站所有资源解压密码为:www.jumaniu.com 或 www.tdji.cn
查看详情

相关文章

评论
暂无评论