How can I display my most viewed posts on a single page ?
For this moment, i’ve create a new template page (content-most-viewed.php) wich is called by get_template_part();
On Internet, i’ve read that query_posts could solve my problem, but it seems to fail.
This is my template :
<?php query_posts('meta_key=post_views_count&orderby=meta_value_num&order=DESC');
//query_posts('post_type=post&posts_per_page=10&orderby=comment_count&order=DESC');?>
<div class="post">
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
<div class="heading">
<h2><a href="<?php the_permalink(); ?>"><?php the_title();?></a></h2>
</div>
<?php the_content();?>
<div class="link-holder"><a href="/index.php">Retour</a></div>
<?php endwhile; ?>
<?php else : ?>
<div class="heading">
<h2>Not Found</h2>
</div>
<p>Sorry, but you are looking for something that isn't here.</p>
<?php endif; ?>
</div>
But, I can only get recent posts, or “Not Found” (any resutls)
In advance, thanks !
WordPress by itself does not keep track of the number a post is viewed there are pluging that do this: WPP, plugin repos
These plugins will have build in functions to do this.
side note
don’t use
query_postsits bad for preformance. useWP_queryin stead. reasons why it is bad: https://wordpress.stackexchange.com/a/50762/10911, https://wordpress.stackexchange.com/a/50762/10911