我有一个网站,我几乎完成了。它教会了我很多关于wordpress的知识,尽管我还是一个不懂php或编程(除了html)的noob。
我成功地创建了一个循环作为页面模板。但我想显示按浏览量最大、评分最高排序的帖子。
我的循环看起来像这样
<?php
/*
Template Name: Most watched
*/
?>
query_posts( \'posts_per_page=5\' );
<!-- Start the Loop. -->
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<!-- The following tests if the current post is in category 3. -->
<!-- If it is, the div box is given the CSS class "post-cat-three". -->
<!-- Otherwise, the div box will be given the CSS class "post". -->
<?php if ( in_category(\'3\') ) { ?>
<div class="post-cat-three">
<?php } else { ?>
<div class="post">
<?php } ?>
<!-- Display the Title as a link to the Post\'s permalink. -->
<h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></h2>
<!-- Display the date (November 16th, 2009 format) and a link to other posts by this posts author. -->
<small><?php the_time(\'F jS, Y\') ?> by <?php the_author_posts_link() ?></small>
<!-- Display the Post\'s Content in a div box. -->
<div class="entry">
<?php the_content(); ?>
</div>
<!-- Display a comma separated list of the Post\'s Categories. -->
<p class="postmetadata">Posted in <?php the_category(\', \'); ?></p>
</div> <!-- closes the first div box -->
<!-- Stop The Loop (but note the "else:" - see next line). -->
<?php endwhile; else: ?>
<!-- The very first "if" tested to see if there were any Posts to -->
<!-- display. This "else" part tells what do if there weren\'t any. -->
<p>Sorry, no posts matched your criteria.</p>
<!-- REALLY stop The Loop. -->
<?php endif; ?>
非常简单-来自wordpress文档示例。我正在使用两个插件wp postviews和wp postratings。
如果我想使用这些插件订购帖子,我的循环应该是什么样子?我在google上搜索了很多,但从来没有找到一个完整的示例-只有我不知道放在哪里的代码片段:(
提前感谢!
最合适的回答,由SO网友:mor7ifer 整理而成
快速查看了wp postviews文档后,您似乎可以更改query_posts( \'posts_per_page=5\' );
到query_posts( \'posts_per_page=5&v_sortby=views&v_orderby=desc\' );
, 但我还没有测试过。试一试,看看结果如何。
注意:按视图排序时经常发生的情况是,第一页永远不会更改。短暂的交通将关注第一对夫妇,增加他们的数量,但不会点击通过。如果用户需要,我建议您为他们提供其他排序选项。