各地市:
济源网站优化SEO中快速排名有哪些应用场景? 安阳网站建设公司哪家专业可靠? 开封域名注册需要多少钱? 开封网站建设怎么定期Linux服务器备份数据? 平顶山响应式设计最新技术发展趋势分析? 洛阳SEO技术如何降低跳出率? 周口网站维护分为哪些类型? 三门峡网站建设Linux服务器怎么限制shell访问权限? 开封免费搭建网站的优势是什么? 濮阳电商网站需要注意什么事项? 济源网络安全有什么技巧? 周口网站建设Linux服务器通过哪些方式隐藏服务器? 洛阳免费搭建网站如何进行学习? 漯河定制化网站需要确认哪些功能? 商丘网站空间购买需要多长时间? 南阳域名注册需要多长时间? 洛阳网站建设导航设计有什么要求? 驻马店网页开发分为哪些类型? 信阳网站维护需要多少钱? 漯河网站优化中搜索引擎怎么操作? 焦作网络安全需要考虑什么因素? 许昌网站建设日常怎么检查服务器网络安全? 新乡seo中网站空间如何进行优化? 新乡免费搭建网站去哪儿找? 新乡网站设计去哪儿找? Linux服务器通过哪些方式发现未授权访问? 南阳网站建设Linux服务器怎么过滤流量? 南阳网站建设Linux服务器怎么记录未授权访问? 三门峡网站建设Linux服务器通过哪些方式拒绝服务攻击? 濮阳网站建设Linux服务器通过哪些方式限制流量? 安阳网站建设怎么处理服务器系统安全? 鹤壁网站建设404页面怎么开发?
您的位置: 主页 > 博客cms > WordPress纯代码实现 AJAX点赞功能

WordPress纯代码实现 AJAX点赞功能

发布时间:2023-08-04 11:06:35 | 发布者:往流科技

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

以前也发过类似的插件给大家,喜欢用插件的可以进《wordpress 点赞 插件版》,而今天介绍的就是纯代码的形式,不喜欢用插件的朋友会喜欢的方式来实现 wordpress点赞功能

将下面的代码加入到你的functions.php

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?href="javascript:;"?data-action="ding"?data-id="<?php?the_ID();??>"?class="favorite<?php?if(isset($_COOKIE['bigfa_ding_'.$post->ID]))?echo?'?done';?>">喜欢?<span?class="count">????????????<?php?if(?get_post_meta($post->ID,'bigfa_ding',true)?){????????????????????echo?get_post_meta($post->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}