评论后的Ajax和刷新分页,Wordpress Ajax 评论分页/翻页 – Fatesinger

202a062acd73ccd274d4ef69244dbcf7.png

WordPress 升级到4.4版本后源代码分页函数失效。只需要给paginate_comments_links函数加上个total参数就可以了。代码已更新。

如果某篇文章评论特别多的时候,我们可以启用分页,但是想查看其他分页的评论就要刷新页面,但是文章内容是相同的,所以这个动作用AJAX 来完成用户体验会好一些。

wp_list_comments有一个callback参数,这个参数是评论回调函数,可以自定义评论结构,不同主题回调函数可能不一样,由于WordPress 默认主题都没有使用这个参数,所以示例代码也不用了。如果你的主题使用了则需加上。

打开comments.php,我们会看到类似下面的代码

wp_list_comments就是输出评论结构的。

paginate_comments_links是分页导航,不同主题可能不一样,注意最外层的nav标签有data-fuck熟悉,是传递文章id的,必须设置。

同时用一个容器包裹评论列表和分页导航,我这里用的是commentshow。

AJAX 回调函数代码,把下面的代码加到functions.php中即可。

add_action('wp_ajax_nopriv_ajax_comment_page_nav', 'ajax_comment_page_nav');

add_action('wp_ajax_ajax_comment_page_nav', 'ajax_comment_page_nav');

function ajax_comment_page_nav(){

global $post,$wp_query, $wp_rewrite;

$postid = $_POST["um_post"];

$pageid = $_POST["um_page"];

$comments = get_comments('post_id='.$postid);

$post = get_post($postid);

if( 'desc' != get_option('comment_order') ){

$comments = array_reverse($comments);

}

$wp_query->is_singular = true;

$baseLink = '';

if ($wp_rewrite->using_permalinks()) {

$baseLink = '&base=' . user_trailingslashit(get_permalink($postid) . 'comment-page-%#%', 'commentpaged');

}

echo '

  1. ';

wp_list_comments('page=' . $pageid . '&per_page=' . get_option('comments_per_page'), $comments);//如果你的主题使用了回调函数,则要设置

echo '

';

echo '';

paginate_comments_links('total=' . get_comment_pages_count($comments). '&current=' . $pageid . '&prev_text=«&next_text=»');

echo '';

die;

}

js代码,on事件需要1.7以上jquery版本。

$(document).on("click", ".commentnav a",

function() {

var baseUrl = $(this).attr("href"),

commentsHolder = $(".commentshow"),

id = $(this).parent().data("fuck"),

page = 1,

concelLink = $("#cancel-comment-reply-link");

/comment-page-/i.test(baseUrl) ? page = baseUrl.split(/comment-page-/i)[1].split(/(\/|#|&).*jQuery/)[0] : /cpage=/i.test(baseUrl) && (page = baseUrl.split(/cpage=/)[1].split(/(\/|#|&).*jQuery/)[0]);

concelLink.click();

var ajax_data = {

action: "ajax_comment_page_nav",

um_post: id,

um_page: page

};

//add loading

jQuery.post(ajax.ajax_url, ajax_data,

function(data) {

commentsHolder.html(data);

//remove loading

$("body, html").animate({

scrollTop: commentsHolder.offset().top - 50

},

1e3)

});

return false;

})

至于等待的效果,你可以在js注视的部分加上你自己想要的效果。如果你还有哪里没懂可以留言与我交流。

以上。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/498489.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

amd为什么还用针脚_英特尔的针脚都取消了,为什么AMD的还没动静?

展开全部其实吧,这个问题是不对的,最新的AMD的Ryzen Threadripper桌面处理器就取消了针式接e5a48de588b662616964757a686964616f31333365653835口(PGA封装),为Socket TR4(LGA封装),终于不用吐槽AMDCPU弯针脚,在服务器市…

深度丨我们可以有多信任人工智能

来源: 人工智能爱好俱乐部 概要:AI中通常,但也并非一定,由软件主导控制,然而软件很容易出现漏洞。鉴于这点,我们该如何确定AI本身是否足够可靠以完成其任务,或简单来说,我们可以有多…

微软 rms服务器端,微软RMS服务器部署之准备篇

【IT168 专稿】Microsoft Windows Rights Management Services(权限管理服务,简称 RMS)是一种信息保护技术,它与启用 RMS 的应用程序配合以帮助保护数字信息避免未经授权的使用--不管是联机还是脱机、在防火墙内还是在防火墙外。结合 Windows Server 200…

win10无限蓝屏_windows10系统蓝屏无限重启命令解决教程

使用系统过程中,难免有时会遇到蓝屏的问题,最新版windows10系统也不例外,电脑为何会形成win10蓝屏的呢?有人说是你的硬件与win10不适配,win10系统刚出来,兼容性之类的还比较差等等,大家各执一词&#xff0…

科学:螳螂虾大脑拥有记忆和学习中心

来源:科学网 www.sciencenet.cn 概要:研究人员发现,螳螂虾的大脑含有被称为蕈形体的记忆和学习中心。迄今为止,这一结构仅在昆虫中见到。 螳螂虾或许拥有比此前认为的更加复杂的大脑。这是对包括螃蟹、虾和龙虾在内的200多种甲壳类…

大牛激辩:AI 该像婴儿一样生来就懂事,还是该从零学习?

来源:36氪 概要:人工智能的学习是否需要内置人类与动物与生俱来的那种认知手段来实现类似水平的一般智能? 人工智能的学习是否需要内置人类与动物与生俱来的那种认知手段来实现类似水平的一般智能? 虽然现在人工智能炒作得很厉害…

矿井通风计算c语言_矿井主通风机的技术发展现状与未来发展趋势

矿井安全的重要性人人皆知,矿井主通风机是确保井下正常通风的重要设备,不仅影响矿井的生产能力,而且对矿业的安全是至关重要的。国内矿用主通风机在经历了早期的离心风机以及七、八十年代以2K60、2K58为代表的轴流风机之后,目前市…

全球AI报告:探索人工智能革命

来源:199IT互联网数据中心 概要:报告认为,到2030年,AI将为全球经济贡献高达15.7万亿美元,比中国和印度目前经济产值的总和还多。 最近发布了一份名为“探索AI革命”的全球AI报告,强调人工智能如何增强企业的…

datetimepicker 更新值无效_文献阅读之Voronoi图的生成与更新

通俗的说,在机器人导航方面,Voronoi图是一种将地图分区的方法,分区的界限即Voronoi图的边,常用作机器人远离障碍物避障的规划路径。本文主要参考了 Boris Lau 的论文和代码,对Voronoi图的生成和更新进行分析。相关的3篇…

马化腾:我创办腾讯的这些年

来源:全球创新论坛 概要:回顾腾讯的创业之路,我觉得机遇很重要,至少占了五成。我不觉得自己特别聪明,做的东西也都是很简单的判断。在这个过程中,时代的因素也是非常重要的,很多机遇是外界赋予的…

python模拟并发是多线程_Python并发编程之多线程

目录一 什么是线程在传统操作系统中,每个进程有一个地址空间,而且默认就有一个控制线程线程顾名思义,就是一条流水线工作的过程,一条流水线必须属于一个车间,一个车间的工作过程是一个进程车间负责把资源整合到一起&am…

谷歌全方位自曝Waymo无人车技术方案 | 42页报告要点解读+下载

李杉 夏乙 编译整理 量子位 出品 | 公众号 QbitAI 谷歌今天发布了一份无人车重磅报告:《通往完全自动驾驶之路》。 这份42页的报告从技术层面详细展示了谷歌Waymo无人车的软件、硬件、测试流程,还讲了无人车行驶的限制条件,“失败”时如何安全…

python生成二维坐标点_Python numpy:根据坐标创建二维数组

假设文件中的x和y值直接对应于索引(就像在您的示例中那样),您可以执行与此类似的操作:import numpy as npx [0, 0, 1, 1, 2, 2]y [1, 2, 0, 1, 1, 2]z [14, 17, 15, 16, 18, 13]z_array np.nan * np.empty((3,3))z_array[y, x] zprint z_array产量:…

Gartner公布:2018年十大战略科技发展趋势 研发战略演进研究榜单

来源:壹佰案例 全球领先的信息技术研究和顾问公司Gartner公布了将在2018年对大部分企业机构产生显著影响的首要战略科技发展趋势。 Gartner将战略科技发展趋势定义为具有巨大颠覆性潜力、脱离初期阶段且影响范围和用途正不断扩大的战略科技发展趋势;这些…

python3动态生成变量_【转载】 Python动态生成变量

用Python循环创建多个变量, 如创建 a1 、a2 、a3 、a4 、a5 或 self.a1 、self.a2 、 self.a3一. 可以通过python的内置函数locals 来完成locals是python的内置函数,他可以以字典的方式去访问局部和全局变量。python里面用名字空间记录…

“芯”战争,人工智能芯片研发攻略

来源:半导体行业观察、安信证券 概要:深度学习作为新一代计算模式,近年来,其所取得的前所未有的突破掀起了人工智能新一轮发展热潮。 在全球科技领域,人工智能无疑是最热门的领域。这种并不算新的应用场景将会带动新一…

红米k30pro工程测试代码_3299起?红米K30Pro官宣3.24发 对比米10 追悼会来了?

声音 | 小白今天上午,官方正式宣布将于 3月24日 下周二 举行Redmi K30 Pro旗舰新品线上发布会。有些尴尬的是,官方宣布的K30Pro发布会最终日期和早前卢伟冰预热的完全不一样...似乎也间接说明卢总的话也不能全信(华为P40系列全球发布会是3月26日&#xf…

Facebook打算与Google的人工智能一较高下吗?

译者:彭婷 概要:每年,一些个人爱好者和大型团队会构建人工智能机器人,以争夺“星际争霸”。今年,Facebook在悄无声息中也加入了这场比赛。如此一来,他们的较量情形会是怎样的呢? 每年&#xff0…

c# 读hex_在C#中将string转换为hexstring

首先你需要把它放到一个byte[] ,所以这样做:byte[] ba Encoding.Default.GetBytes("sample");然后你可以得到string:var hexString BitConverter.ToString(ba);现在,这将返回一个带有破折号( - )的string,…

微云存照片会变模糊吗_手机自带微云台防抖,VivoX50系列不一般

喜欢我的文章吗?请点上方蓝色字体关注吧VIVO X50系列共发布三个版本:标准版,pro版,pro版。其售价格分别为:3498,4298,4998元。X50标准版很一般,完全不建议购买。毕竟都卖…