欢迎光临
我们一直在努力

修改 WordPress 自定义文章类型的评论排序

建站超值云服务器,限时71元/月

我们都知道,WordPress 默认自带了文章(post)、页面(page)等文章类型,然后从 3.0 开始就支持自定义文章类型。比如WordPress大学目前所使用的问答功能,其实就是使用自定义文章类型的。在这个 DW Question & Answer 问答插件中,它注册了“dwqa-question”和“dwqa-answer”两种文章类型,并且为它们添加了评论功能,这样就可以对问题和回答进行评论。

而文章和页面也有评论功能,在实际使用中,倡萌在 设置 – 讨论  中设置评论分页,并且在页面顶部显示新的评论

修改 WordPress 自定义文章类型的评论排序

由于这个是全局设置,导致问答页面的评论也在顶部显示新的评论,这样看起来就有些怪怪的:

修改 WordPress 自定义文章类型的评论排序

我希望专门针对问答页面实现页面顶部显示老的评论,如下,这样看起来就好些了:

修改 WordPress 自定义文章类型的评论排序

倡萌查阅了一下官方文档,发现有一个 comments_array 钩子,可以用来排序评论,同时借用php函数 array_reverse() 就可以将评论倒序,从而达到所需效果。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/**
* 让问答的评论和文章的评论排序颠倒
* https://www.wpdaxue.com/wordpress-reverse-comments.html
*/
function wpdx_reverse_comments($comments) {
	global $post;
	if($post->post_type == 'dwqa-question' || $post->post_type == 'dwqa-answer' ){
		//如果是 dwqa-question 或 dwqa-answer 这两个文章类型的评论就颠倒排序
		return array_reverse($comments);
	}else{
		//否则正常排序
		return $comments;
	}
}
add_filter ('comments_array', 'wpdx_reverse_comments');

/** * 让问答的评论和文章的评论排序颠倒 * https://www.wpdaxue.com/wordpress-reverse-comments.html */ function wpdx_reverse_comments($comments) { global $post; if($post->post_type == ‘dwqa-question’ || $post->post_type == ‘dwqa-answer’ ){ //如果是 dwqa-question 或 dwqa-answer 这两个文章类型的评论就颠倒排序 return array_reverse($comments); }else{ //否则正常排序 return $comments; } } add_filter (‘comments_array’, ‘wpdx_reverse_comments’);

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 修改 WordPress 自定义文章类型的评论排序
分享到: 更多 (0)