Php Wordpress按特定表中的值排序
我试图从一个名为Wordpress Popular posts的插件中通过“页面浏览量”获得4篇文章。我在phpmyadmin中找到了它,它存储了每篇文章的页面浏览量。我的问题是,帖子的“pageviews”值不在wp_Posteta中,而是在一个单独的表中:wp_popularpostdata和命名pageviews。请帮忙:) phpmyadmin 来自wp_popularpostdata 发布页面浏览量 …1………14 下面的代码没有返回任何内容Php Wordpress按特定表中的值排序,php,mysql,wordpress,Php,Mysql,Wordpress,我试图从一个名为Wordpress Popular posts的插件中通过“页面浏览量”获得4篇文章。我在phpmyadmin中找到了它,它存储了每篇文章的页面浏览量。我的问题是,帖子的“pageviews”值不在wp_Posteta中,而是在一个单独的表中:wp_popularpostdata和命名pageviews。请帮忙:) phpmyadmin 来自wp_popularpostdata 发布页面浏览量 …1………14 下面的代码没有返回任何内容 $args = array(
$args = array(
'posts_per_page' => 4,
'meta_key' => pageviews,
'orderby' => meta_value_num,
'order' => DESC,
);
$my_query = new WP_Query($args);
您可以使用内置函数
wpp\u get\u mostpopular
,如下所述:
如果这对您来说还不够,您必须通过wordpress过滤器更改查询,如
posts\u join
、posts\u where
等。这些应该可以帮助您找到方法。如何在$my\u查询中实现这一点?如果($my_query->have_posts()):而($my_query->have_posts()):$my_query->the_post();?>您应该实现这一点,而不是使用$my_query和WP_query。要使用$my_查询,您必须使用一个过滤器来更改join子句(至少与插件表进行左连接),并使用另一个过滤器来更改order by子句(按插件表中所需的数字排序)。修改$my_查询是一个太难的解决方案;)有没有更简单的方法/替代方案?我只想得到wp_popularpostdata表中4篇文章的4个标题,其中“pageviews”的值最高。只需删除以前的代码,如果(函数存在('wpp_get_mostpopular'))wpp_get_mostpopular(“limit=4&post_html='{title}'),则添加编码>并设置结果样式:)差不多了:),我如何将每个标题设置为?因为这就是风格。我的原始代码是:if($My_query->have_posts()):while($My_query->have_posts()):$My_query->the_post();?>
if (function_exists('wpp_get_mostpopular'))
wpp_get_mostpopular("range=weekly&order_by=comments");