纯代码WordPress文章添加点赞功能

纯代码WordPress文章添加点赞功能,第1张

概述WordPress的文章点赞方法很多,而且大多数都是依赖插件和第三方的附属功能。功能丰富的WordPress点赞插件不少,但对于要在主题中集成简单文章点赞功能的需

下面是内存溢出 jb51.cc 通过网络收集整理的代码片段。内存溢出小编现在分享给大家,也给大家做个参考。

wordpress 的文章点赞方法很多,而且大多数都是依赖插件和第三方的附属功能。功能丰富的 wordpress 点赞插件不少,但对于要在主题中集成简单文章点赞功能的需求,插件就显得不合适,于是乎非插件实现文章点赞功能的方法就诞生,实现思路是:可以通过 AJAX 实时显示点赞数量,自定义字段保存赞数量,cookies 禁止重新点赞。所以今天分享出来一款非常简洁的纯代码实现 wordpress 主题点赞的功能。而且运用 cookies 有效的解决了重复点赞 BUG,下面就是方法:


1. 将下面代码添加进 function.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['@R_419_6822@_HOST'] != 'localhost') ? $_SERVER['@R_419_6822@_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,1);

}

else {

update_post_Meta($ID,($bigfa_raters + 1));

}

 

echo get_post_meta($ID,true);

 

}

 

dIE;

}

2. 将以下代码扔进 footer.PHP 文件

<script type="text/JavaScript">

$.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();

});

</script>

3. 修改 single.PHP 文件,在你想要添加的地方,加入下列代码:

<a href="JavaScript:;" data-action="ding" data-ID="<?PHP the_ID(); ?>" >喜欢 <span >

<?PHP if( get_post_meta($post->ID,true) ){

echo get_post_meta($post->ID,true);

} else {

echo '0';

}?>

</span>

</a>

现在是不是就已经好了?还没有呢,现在的效果还不好看,添加一段代码就好了,将这段代码扔进 style.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}

以上是内存溢出(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

总结

以上是内存溢出为你收集整理的纯代码WordPress文章添加点赞功能全部内容,希望文章能够帮你解决纯代码WordPress文章添加点赞功能所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/zz/1009510.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-22
下一篇2022-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存