限制,按浏览量查询帖子时不会显示所有帖子

时间:2012-08-22 作者:Einar Ólafsson

我很难找到一个能让我的帖子被大多数人浏览的循环。

我从以下教程开始

http://www.wpbeginner.com/wp-tutorials/how-to-track-popular-posts-by-views-in-wordpress-without-a-plugin/

这很好。然而,我有大约700篇帖子,其中添加了来自不同站点的php脚本和json。在JSON中,我添加了一些额外的信息作为元标记(自定义字段)。我从JSON中获得的信息之一,当前视图在JSON中起作用。然后,我有了一个变通方法,可以计算新的视图以及其他网站的视图(从长远来看,它在两个网站上都存储了一段时间)

将视图计数添加到帖子中没有问题,效果很好。

但当我最终开始查询帖子时,我发现了一个bug。该查询仅显示查看次数在1000以下的帖子,不包括所有查看次数超过1000的帖子。有100多个帖子,浏览量超过1000。

我的问题是:

$popularpost = new WP_Query( array( \'posts_per_page\' => 20, \'meta_key\' => \'viewCount\', \'orderby\' => \'viewCount\', \'order\' => \'DESC\'  ) );
while ( $popularpost->have_posts() ) : $popularpost->the_post();

include(\'content-markup.php\');

endwhile; 
我可能会指出,这是在一个自定义模板页面中完成的,其中包含的php文件包括我用来设置帖子样式的标记。如果我删除包含的文件并使用_title();相反,这没有什么不同,我只是得到了相同帖子的标题。

第一篇文章有999个视图,第二篇文章有1012个视图。

出于某种原因,某些东西限制了查询,使其只能显示元值小于1000的帖子。

我不知道还能告诉你什么,我希望有人能帮助我(还有人能纠正我的语法):D

1 个回复
SO网友:Miguel

问题出在订单上

\'orderby\' => \'meta_value_num\'
别忘了wp_reset_postdata()在循环结束时

结束

相关推荐

为什么我必须为wp_enQueue_script指定所有参数才能在页脚中加载jQuery?

wp_enqueue_script(\'jquery\', includes_url() . \'js/jquery.js\', array(\'\'), \'1.7.2\', true); // loads in the footer wp_enqueue_script(\'jquery\',\'\', array(\'\'), \'\', true); // loads in the head 我只是认为,为了让脚本加载到我想要的地方,必须为每个参数包含一个非null值,这