栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > PHP > php开源框架 > wordpress

WordPress网站模板纯代码实现 AJAX点赞功能

wordpress 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

WordPress网站模板纯代码实现 AJAX点赞功能


wordpress网站里增加访客互动、展示文章热度的时候,除了阅读数、评论数外,还有个有趣的元素,那就是赞,如QQ空间里的说说一样,赞!

网上也有很多的点赞插件,大家可以去下载,但是呢插件使用起来有点不方便,也不是不方便就是主题给别人用啊什么的如果有插件还要他们自己装,如果集成代码那么就省心多了。

下面就直接给教程吧

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

add_action('wp_ajax_nopriv_bigfa_like', 'bigfa_like'";

add_action('wp_ajax_bigfa_like', 'bigfa_like'";

function bigfa_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; // make cookies work with localhost

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"";

}

echo get_post_meta($id,'bigfa_ding',true";

}

die;

}

JS代码

$.fn.postLike = function(" {

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

return false;

} else {

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

var id = $(this".data("id"",

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

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

var ajax_data = {

action: "bigfa_like",

um_id: id,

um_action: action

};

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

function(data" {

$(rateHolder".html(data";

}";

return false;

}

};

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

function(" {

$(this".postLike(";

}";

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

<div class="post-like"><a class="favorite&lt;?php if(isset($_cookie['bigfa_ding_'.$post-&gt;ID]"" echo ' done';?&gt;" data-action="ding" data-id="<?php the_ID("; ?>">喜欢<span class="count">

<!--?php if( get_post_meta($post--->ID,'bigfa_ding',true" "{

echo get_post_meta($post-&gt;ID,'bigfa_ding',true";

} else {

echo '0';

}?></span>

</a></div>

参考css样式

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

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

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

.post-like a.done{cursor:not-allowed}

希望大家喜欢,哈哈

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/218743.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号