WordPress模板如何使用纯代码实现点赞功能?

WordPress网站为了增加访客互动、展示文章热度,会添加一些阅读数、评论数等元素,其实还有一个比较好的元素,那就是点赞功能,跟QQ空间及朋友圈点赞一样。其实网上已经提供了很多点赞插件,但是更多的人会喜欢使用纯代码,那么WordPress模板如何使用纯代码实现点赞功能?我们一起探讨一下。

WordPress模板如何使用纯代码实现点赞功能? (https://www.wpmee.com/) WordPress开发教程 第1张

将下面的代码加入到你的functions.php中就是wordpress主题的函数文件:

add_action('wp_ajax_nopriv_bigfa_like','bigfa_like');

add_action('wp_ajax_bigfa_like','bigfa_like');

functionbigfa_like(){

global$wpdb,$post;

$id=$_POST["um_id"];

$action=$_POST["um_action"];

if($action=='ding'){

$bigfa_raters=get_post_meta($id,'bigfa_ding',true);

$expire=time()+99999999;

$domain=($_SERVER['HTTP_HOST']!='localhost')?$_SERVER['HTTP_HOST']:false;//makecookiesworkwithlocalhost

setcookie('bigfa_ding_'.$id,$id,$expire,'/',$domain,false);

if(!$bigfa_raters||!is_numeric($bigfa_raters)){

update_post_meta($id,'bigfa_ding',1);

}

else{

update_post_meta($id,'bigfa_ding',($bigfa_raters+1));

}

echoget_post_meta($id,'bigfa_ding',true);

}

die;

}

JS代码

$.fn.postLike=function(){

if($(this).hasClass('done')){

returnfalse;

}else{

$(this).addClass('done');

varid=$(this).data("id"),

action=$(this).data('action'),

rateHolder=$(this).children('.count');

varajax_data={

action:"bigfa_like",

um_id:id,

um_action:action

};

$.post("/wp-admin/admin-ajax.php",ajax_data,

function(data){

$(rateHolder).html(data);

});

returnfalse;

}

};

$(document).on("click",".favorite",

function(){

$(this).postLike();

});

 在你想显示的地方加入如下代码,推荐加到文章内容尾部

<divclass="post-like"><aclass="favorite&lt;?phpif(isset($_COOKIE['bigfa_ding_'.$post-&gt;ID]))echo'done';?&gt;"data-action="ding"data-id="<?phpthe_ID();?>">喜欢<spanclass="count">

<!--?phpif(get_post_meta($post--->ID,'bigfa_ding',true)){

echoget_post_meta($post-&gt;ID,'bigfa_ding',true);

}else{

echo'0';

}?></span>

</a></div>

 参考css样式

.post-like{text-align:center;padding:10px}

.post-likea{background-color:#21759B;border-radius:3px;color:#FFFFFF;font-size:12px;padding:5px10px;text-decoration:none;outline:none}

.post-likea.done,.post-likea:hover{background-color:#eee;color:#21759B;}

.post-likea.done{cursor:not-allowed}

标签:,
赞一个

推荐主题

上一篇:

下一篇:

发表评论

登录后才能评论

猜你喜欢