pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

Wordpress實現文章支持和反對功能的方法

這篇文章主要為大家介紹了Wordpress實現文章支持和反對功能的方法,通過添加自定義函數實現文章的支持和反對功能,是比較典型的WordPress二次開發技巧,具有一定的參考借鑒價值,需要的朋

本文實例講述了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實例代碼如下:

復制代碼
代碼如下:
<div class="cl"></div>
<style>
.recomm{ border-bottom:4px solid #FF7523; color:#FF7523}
.single_share_class{ position:absolute; left:-95px; top:80px; width:75px; height:328px; text-align:center; background:url(/img/single_page_share.png) no-repeat;}
.single_share_class .comm_num{ padding:12px 0 48px 0px}
.single_share_class .comm_num span{ font-size:10px; line-height:11px; color:#ff9853; display:block}
.single_share_class >span >span >span{ margin-bottom:7px !important;}
.single_share_class .copylink{ padding:28px 0 0 0; cursor:pointer}
.single_share_class .st_sharethis_large >span >span{ background:none !important}
.dingandcai{ width:526px; height:62px; background:url(/img/likeandunlike.jpg) no-repeat; margin:20px 0;line-height:62px; text-align:center; font-size:24px; text-shadow:1px 1px 1px #000; }
.dingandcai .left_like{ width:224px; float:left;height:62px; position:relative}
.dingandcai .left_like span,.dingandcai .right_unlike span{ position:relative; z-index:2}
.dingandcai .dingload{ width:78px; float:left; }
.dingandcai .right_unlike{ width:224px; float:left; height:62px;position:relative }
.dingandcai .left_like .left_con{ background:url(/img/likeandunlike.jpg) 0px -63px no-repeat; width:50%; height:62px;position:absolute;top:0;left:0; z-index:1}
.dingandcai .right_unlike .right_con{ background:url(/img/likeandunlike.jpg) -302px -63px no-repeat; width:50%; height:62px;position:absolute;top:0;left:0; z-index:1}
.allow_click,.disallow_click{cursor:pointer}
</style>
<div class="dingandcai">
<div class="left_like" val="1" postid="<?php the_ID(); ?>">
<div class="left_con"></div><span id="like">Like</span>
</div>
<div class="dingload">
<img src="/img/loading_sm.gif" />&nbsp;
</div>
<div class="right_unlike" val="0" postid="<?php the_ID(); ?>">
<div class="right_con"></div>
<span id="dislike">Dislike</span>
</div>
</div>
<div class="cl"></div>

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建站有所幫助。

【網站聲明】本站除付費源碼經過測試外,其他素材未做測試,不保證完整性,網站上部分源碼僅限學習交流,請勿用于商業用途。如損害你的權益請聯系客服QQ:2655101040 給予處理,謝謝支持。

相關文檔推薦

我們有時候需要對織夢文檔的點擊量進行批量維護,比如采集來的文章,點擊量都為0,需要批量修改,可以用到如下方法1。 1、在數據庫里運行下面的代碼就可以了,文章的點擊量變得
下面小編就為大家分享一篇php 替換文章中的圖片路徑,下載圖片到本地服務器的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
這篇文章主要給大家介紹了關于php支持的協議與封裝協議的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用PHP具有一定的參考學習價值,需要的朋友們下面隨著小編
給大家分享一下anyproxy進階使用方法,并且通過這個分享如何提高公眾號文章采集效率的分析,需要的朋友參考學習下吧。
給大家分析一下如何用PHP寫出采集微信公眾號文章的方法以及代碼詳細講解,需要的朋友學習一下。
wordpress是很多新手站長搭建個人博客最喜愛的程序,但是最近在使用WordPress的時候遇到了一些問題,所以想著將遇到問題總結分享出來,下面這篇文章主要給大家介紹了關于wordpress在安
主站蜘蛛池模板: 量子管通环-自清洗过滤器-全自动反冲洗过滤器-沼河浸过滤器 | 污水/卧式/潜水/钻井/矿用/大型/小型/泥浆泵,价格,参数,型号,厂家 - 安平县鼎千泵业制造厂 | 自动化改造_智虎机器人_灌装机_贴标机-上海圣起包装机械 | 无纺布包装机|径向缠绕包装机|缠绕膜打包机-上海晏陵智能设备有限公司 | 安徽合肥项目申报咨询公司_安徽合肥高新企业项目申报_安徽省科技项目申报代理 | 新能源汽车教学设备厂家报价[汽车教学设备运营18年]-恒信教具 | 广东风淋室_广东风淋室厂家_广东风淋室价格_广州开源_传递窗_FFU-广州开源净化科技有限公司 | 阳光1号桔柚_无核沃柑_柑橘新品种枝条苗木批发 - 苧金网 | 舞台木地板厂家_体育运动木地板_室内篮球馆木地板_实木运动地板厂家_欧氏篮球地板推荐 | 南溪在线-南溪招聘找工作、找房子、找对象,南溪综合生活信息门户! | 磁力抛光机_磁力研磨机_磁力去毛刺机_精密五金零件抛光设备厂家-冠古科技 | 无轨电动平车_轨道平车_蓄电池电动平车★尽在新乡百特智能转运设备有限公司 | 合肥地磅_合肥数控切割机_安徽地磅厂家_合肥世佳电工设备有限公司 | 水稻烘干机,小麦烘干机,大豆烘干机,玉米烘干机,粮食烘干机_巩义市锦华粮食烘干机械制造有限公司 水环真空泵厂家,2bv真空泵,2be真空泵-淄博真空设备厂 | 混合反应量热仪-高温高压量热仪-微机差热分析仪DTA|凯璞百科 | TwistDx恒温扩增-RAA等温-Jackson抗体-默瑞(上海)生物科技有限公司 | 锂离子电池厂家-山东中信迪生电源 | 传动滚筒_厂家-淄博海恒机械制造厂| 贴板式电磁阀-不锈钢-气动上展式放料阀-上海弗雷西阀门有限公司 工业机械三维动画制作 环保设备原理三维演示动画 自动化装配产线三维动画制作公司-南京燃动数字 | 多功能干燥机,过滤洗涤干燥三合一设备-无锡市张华医药设备有限公司 | 乳化沥青设备_改性沥青设备_沥青加温罐_德州市昊通路桥工程有限公司 | 粉末冶金-粉末冶金齿轮-粉末冶金零件厂家-东莞市正朗精密金属零件有限公司 | 重庆小面培训_重庆小面技术培训学习班哪家好【终身免费复学】 | 郑州律师咨询-郑州律师事务所_河南锦盾律师事务所| 软文推广发布平台_新闻稿件自助发布_媒体邀约-澜媒宝 | 磁力加热搅拌器-多工位|大功率|数显恒温磁力搅拌器-司乐仪器官网 | 暖气片十大品牌厂家_铜铝复合暖气片厂家_暖气片什么牌子好_欣鑫达散热器 | 蒸汽热收缩机_蒸汽发生器_塑封机_包膜机_封切收缩机_热收缩包装机_真空机_全自动打包机_捆扎机_封箱机-东莞市中堡智能科技有限公司 | 模温机-油温机-电加热导热油炉-工业冷水机「欧诺智能」 | 真空干燥烘箱_鼓风干燥箱 _高低温恒温恒湿试验箱_光照二氧化碳恒温培养箱-上海航佩仪器 | 理化生实验室设备,吊装实验室设备,顶装实验室设备,实验室成套设备厂家,校园功能室设备,智慧书法教室方案 - 东莞市惠森教学设备有限公司 | 【同风运车官网】一站式汽车托运服务平台,验车满意再付款 | 大_小鼠elisa试剂盒-植物_人Elisa试剂盒-PCR荧光定量试剂盒-上海一研生物科技有限公司 | 光照全温振荡器(智能型)-恒隆仪器 | 上海橡胶接头_弹簧减震器_金属软接头厂家-上海淞江集团 | 德国进口电锅炉_商用电热水器_壁挂炉_电采暖器_电热锅炉[德国宝] | 体感VRAR全息沉浸式3D投影多媒体展厅展会游戏互动-万展互动 | 进口消泡剂-道康宁消泡剂-陶氏消泡剂-大洋消泡剂 | 面粉仓_储酒罐_不锈钢储酒罐厂家-泰安鑫佳机械制造有限公司 | 搅拌磨|搅拌球磨机|循环磨|循环球磨机-无锡市少宏粉体科技有限公司 | 北京模型公司-工业模型-地产模型-施工模型-北京渝峰时代沙盘模型制作公司 |