phpcms默认是没有文章顶踩功能,如果你是用phpcms做网站,但网站设计需要在文章中添加顶踩功能。怎么办?

下面详细介绍下phpcms如何添加顶踩功能步骤:

1、在后台模型增加两个字段,一个goodpost,一个badpost;这个步骤简单,按后台新增加字段下一步就行了。

2、在模块/phpcms/modules/content/增加扩展函数MY_index.php,代码如下:

class MY_index extends index {
    function __construct() {
      parent::__construct();
    }
    //评价
    public function digg () {
      $modelid = intval($_GET['modelid']);
      $id = intval($_GET['id']);
      $digg = intval($_GET['digg']);
      $this->db->set_model($modelid);
      //$this->db->table_name .= '_data';
      $data = $this->db->get_one(array('id'=>$id),'goodpost, badpost');
      if ($digg=="good"){
        $this->db->update(array('goodpost'=>'+=1'),array('id'=>$id));
        echo ++$data['goodpost'];
      } else {
        $this->db->update(array('badpost'=>'+=1'),array('id'=>$id));
        echo ++$data['badpost'];
      }
    }
  }

3、在/statics/js/加入digg.js,js代码如下:

function digg(cid,d,mid){
    var saveid = GetCookie('diggid');
    if (saveid == cid) {
        alert("已经喜欢过了!");
        return false;
    } else{
        $.get("/index.php?m=content&c=index&a=digg",
              { modelid:mid, id: cid, digg:d},
              function (r){
                if(d=="good"){
                    $('#up').html(r);
                } else {
                    $('#down').html(r);
                }
              });
        SetCookie('diggid',cid,1);
    }
}
function GetCookie(c_name)
{
    if (document.cookie.length > 0)
    {
        c_start = document.cookie.indexOf(c_name + "=")
        if (c_start != -1)
        {
            c_start = c_start + c_name.length + 1;
            c_end   = document.cookie.indexOf(";",c_start);
            if (c_end == -1)
            {
                c_end = document.cookie.length;
            }
            return unescape(document.cookie.substring(c_start,c_end));
        }
    }
    return null
}
function SetCookie(c_name,value,expiredays)
{
    var exdate = new Date();
    exdate.setDate(exdate.getDate() + expiredays);
    document.cookie = c_name + "=" +escape(value) + ((expiredays == null) ? "" : ";expires=" + exdate.toGMTString()); //使设置的有效时间正确。增加toGMTString()
}

4、在顶踩页面加入digg.js,然后在显示顶踩数标签处加入digg()函数就行了。

<span><a href="javascript:void(0);" onclick="digg({$id},1,{$modelid})">顶</a>:<span id="up">{$up}</span></span> 
   <span><a href="javascript:void(0);" onclick="digg({$id},0,{$modelid})">踩</a>:<span id="down">{$down}</span></span> 
   <script type="text/javascript" src="{JS_PATH}digg.js"></script> 
最后修改:2022 年 09 月 21 日
如果觉得我的文章对你有用,请随意赞赏