• 设为首页
  • 收藏本站
  • 积分充值
  • VIP赞助
  • 手机版
  • 微博
  • 微信
    微信公众号 添加方式:
    1:搜索微信号(888888
    2:扫描左侧二维码
  • 快捷导航
    福建二哥 门户 查看主题

    Wordpress实现文章支持和反对功能的方法

    发布者: 网神之王 | 发布时间: 2025-6-19 09:30| 查看数: 54| 评论数: 0|帖子模式

    本文实例讲述了Wordpress实现文章支持和反对功能的方法。分享给大家供大家参考。具体分析如下:
    如果你上网易或QQ网站都会看到文章页面有很多种支持和反对的功能,我们可以发表自己的意见,那么要如何实现文章支持和反对的功能,下面我来介绍利用ajax快速实现.
    我是用wp做二次开发的,当然你也可以装插件,不过我是自己定制的了,实现代码:
    首先在数据库表wp_posts添加两个字段like 和unlike
    PHP实例代码如下:
     

    复制代码代码如下:public function dolike_unlike(){ 
    $b = M(); 
    $input = new input(); 
    $id = $input->post('id');//过滤提交的信息。防止sql注入,之前发的代码我都补上了。 
    //$id = 5524; 
    $val = $_POST['data']; 
    if($val==1){ 
    $b->query("update `wp_posts` set `like` =`like`+1 WHERE id = $id");//点击like的更新 
    }else if($val==0){ 
    $b->query("update `wp_posts` set `unlike` =`unlike`+1 WHERE id = $id"); //dislike更新 
    }else{ 
    $this->error('error'); 

    $list = $b->query("SELECT `like`,`unlike` FROM `wp_posts` WHERE id = $id");//获取数据 
    $like = $list[0]['like']; 
    $dislike = $list[0]['unlike']; 
    if($like!=0 || $dislike!=0){//计算 
    $elike = $like/($like+$dislike); 
    $elike = substr($elike*100,0,4); 
    $edislike = $dislike/($like+$dislike); 
    $edislike = substr($edislike*100,0,4); 

    //echo $elike; 
    $output = array(//组合函数待输出 
    likenum=>$like, 
    dislikenum=>$dislike, 
    like=>$elike, 
    dislike=>$edislike 
    ); 
    //echo $list; 
    //dump($output); 
    $this->ajaxReturn($output,'success',1);//输出 
    //echo 'ok'; 
    //$this->display(''); 
    }
    html实例代码如下:

    复制代码代码如下: 
     
     
    "> 
    Like 
     
     
     
     
    "> 
     
    Dislike 
     
     

    js实例代码如下:

    复制代码代码如下:jQuery(".dingload img").ajaxStart(function(){//ajax提示 
    jQuery(this).show(); 
    }); 
    jQuery(".dingload img").ajaxStop(function(){ 
    jQuery(this).hide(); 
    }); 
    var pid = jQuery(".left_like").attr("postid"); 
    var likecookie = jQuery.cookie("like"+pid); 
    if(likecookie!=pid){//判断是否点击过,如果没有点击则 
    jQuery(".left_like,.right_unlike").addClass("allow_click"); 
    jQuery.get('/cityosweb/default.php/Shanmao/wplike_unlike',{id:pid},function(data){ 
    if(data.status==1){//显示背景百分比和like dislike字样 
    jQuery(".left_like .left_con").css("width",data.data.like+"%"); 
    jQuery(".right_unlike .right_con").css("width",data.data.dislike+"%"); 

    },"json"); 
    }else{//如果已经投过票了则 
    jQuery(".left_like,.right_unlike").addClass("disallow_click"); 
    jQuery.get('/cityosweb/default.php/Shanmao/wplike_unlike',{id:pid},function(data){ 
    if(data.status==1){//显示背景百分比和投票数 
    //alert(data.likenum); 
    jQuery("#like").html(data.data.likenum); 
    jQuery("#dislike").html(data.data.dislikenum); 
    jQuery(".left_like .left_con").css("width",data.data.like+"%"); 
    jQuery(".right_unlike .right_con").css("width",data.data.dislike+"%"); 

    },"json"); 

    jQuery(".left_like,.right_unlike").click(function(){ 
    if(jQuery(this).hasClass("allow_click")){//如果有这个class才提交 
    var val = jQuery(this).attr("val"); 
    var postid = jQuery(this).attr("postid"); 
    jQuery.post('/cityosweb/default.php/Shanmao/dolike_unlike',{data:val,id:postid},function(data){//点击的时候 
    if(data.status==1){//成功返回处理 
    jQuery("#like").html(data.data.likenum); 
    jQuery("#dislike").html(data.data.dislikenum); 
    jQuery(".left_like .left_con").css("width",data.data.like+"%"); 
    jQuery(".right_unlike .right_con").css("width",data.data.dislike+"%"); 
    jQuery(".left_like,.right_unlike").removeClass("allow_click").addClass("disallow_click"); 
    jQuery.cookie('like'+postid,postid,{expires: 1});//提交后写入cookie,这里是用juqery.cookie插件。保存一天时间,每篇文章保存不一样的id。值随意,只要你上面好做判断。 
    }else{ 
    alert(data.info); 

    },"json"); 

    }); 
    jQuery(".disallow_click").live("click",function(){//不允许提交时候弹出 
    alert("Your vote has already been submitted!"); 
    }); 
    希望本文所述对大家的WordPress建站有所帮助。

    来源:https://zhuji.jb51.net/wordpress/7800.html
    免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

    最新评论

    浏览过的版块

    QQ Archiver 手机版 小黑屋 福建二哥 ( 闽ICP备2022004717号|闽公网安备35052402000345号 )

    Powered by Discuz! X3.5 © 2001-2023

    快速回复 返回顶部 返回列表