WordPress中的comment_feed_orderby钩子是一个用于自定义评论订阅源排序的钩子。当使用comment_feed函数获取评论订阅源时,可以通过这个钩子来修改评论的排序方式。
使用方法:
1. 注册钩子
在你的主题或插件中,使用以下代码来注册comment_feed_orderby钩子:
function custom_comment_feed_orderby($orderby) {
// 在这里修改评论排序方式
return $orderby;
}
add_filter(\'comment_feed_orderby\', \'custom_comment_feed_orderby\');
2. 修改排序方式
在上述代码中的注释部分,你可以根据自己的需求来修改评论的排序方式。以下是一些常用的排序方式:
- \'comment_date_gmt\': 按评论的GMT创建时间排序(默认值)。
- \'comment_date\': 按评论的本地时间排序。
- \'comment_post_modified_gmt\': 按评论所在文章的GMT修改时间排序。
- \'comment_post_modified\': 按评论所在文章的本地修改时间排序。
- \'comment_approved\': 按评论的审批状态排序。
例如,如果你想按评论的本地时间倒序排序评论,可以这样修改代码:
function custom_comment_feed_orderby($orderby) {
$orderby = \'comment_date DESC\';
return $orderby;
}
add_filter(\'comment_feed_orderby\', \'custom_comment_feed_orderby\');
或者,如果你想按评论所在文章的修改时间排序,可以这样修改代码:
function custom_comment_feed_orderby($orderby) {
$orderby = \'comment_post_modified_gmt DESC\';
return $orderby;
}
add_filter(\'comment_feed_orderby\', \'custom_comment_feed_orderby\');
通过修改$orderby变量的值,你可以实现自定义的排序方式。
注意事项:
- 当你修改评论的排序方式时,确保你的订阅源URL中包含了orderby参数,例如:http://example.com/comments/feed/?orderby=comment_date_gmt。
- 这个钩子只对comment_feed函数生效,不适用于get_comments或get_comments_feed函数获取评论的情况。
总结:
comment_feed_orderby钩子可以让你在获取评论订阅源时自定义评论的排序方式。通过注册这个钩子,并在回调函数中修改$orderby变量的值,你可以实现各种不同的排序方式。