php - Wordpress 按特定表中的值排序

标签 php mysql wordpress

我正在尝试从名为 Wordpress 热门帖子的插件中按“综合浏览量”顺序获取 4 个帖子。我在 phpmyadmin 中找到了它存储每个帖子的页面浏览量的地方。我的问题是帖子的“pageviews”值不在 wp_postmeta 中,而是在一个单独的表中:wp_popularpostdata 和命名的 pageviews。请帮助:)

phpmyadmin

来自 wp_popularpostdata

zip |浏览量

..1 .....................14

我正在尝试的下面的代码不返回任何内容

$args = array(
        'posts_per_page' => 4,
        'meta_key' => pageviews,
        'orderby' => meta_value_num,
        'order' => DESC,
    );
                $my_query = new WP_Query($args);

最佳答案

您可以使用内置函数 wpp_get_mostpopular,如 here 所述:

if (function_exists('wpp_get_mostpopular'))
    wpp_get_mostpopular("range=weekly&order_by=comments");

如果这对您来说还不够,您将不得不通过 wordpress 过滤器更改查询,例如 posts_joinposts_where 等。 docs应该能帮你找到路。

关于php - Wordpress 按特定表中的值排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35606576/

相关文章:

mysql - 我们可以优化这个 SQL 查询吗?

javascript - Ajaxurl 返回 0

php - Wordpress 无法追踪的迁移死亡白屏

php - 如何在垂直 View 中动态显示输出?

PHP 2人从同一台电脑同时登录pt.02

php - Magento:是什么导致重新索引……为什么它会中断?

PHP-DI - 工厂和对象之间的区别

mysql - 在数据库中进行选择并将其显示在表中时出现重复

mysql - 通过局域网访问 MAMP 中的 WordPress 网络安装

javascript - Div 加载前的进度条