首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过JSON API插件显示热门帖子

通过JSON API插件显示热门帖子
EN

Stack Overflow用户
提问于 2016-08-17 20:00:25
回答 1查看 919关注 0票数 1

我正在使用JSON API插件来检索json格式的帖子数据,它工作得很好。

现在我想使用相同的插件来检索流行的(浏览量最多的)帖子。我如何才能做到这一点。

EN

回答 1

Stack Overflow用户

发布于 2016-08-17 20:30:48

WordPress不存储每个帖子的视图数量,因此仅使用JSON API是不可能的。您需要在每次加载页面时运行存储在post_meta中的计数,如下所示:

代码语言:javascript
复制
function post_view_count() {
    if ( is_single() ) {
        $count = get_post_meta( get_the_ID(), 'post_view_count', true ) ?: 0;
        update_post_meta( get_the_ID(), 'post_view_count', $count++ );
    }
}
add_action( 'wp_head', 'post_view_count' );

然后,您可以查询一个帖子的接口,按键'post_view_count‘降序排序。您可能需要添加类似下面这样的内容,以允许使用接口查询post_meta:

代码语言:javascript
复制
function json_allow_meta_query( $valid_vars ) {
    $valid_vars = array_merge( $valid_vars, array( 'meta_key', 'meta_value', 'meta_compare' ) );
    return $valid_vars;
}
add_filter( 'rest_query_vars', 'json_allow_meta_query' );

但是,请注意,您为每个post加载添加了两个数据库命中,这将影响性能。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38996050

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档