Mostrar los posts más visitados en el sidebar de tu WordPress es la mar de útil para que los visitantes puedan echar un vistazo a los artÃculos más populares de tu web. En este tutorial te mostraré cómo mostrar los posts más visitados de forma sencilla sin necesidad de recurrir a ningun plugin. Puedes obtener los posts más visitados de tu web mediante una simple query en WordPress.
Para utilizaremos los post meta que es donde se almacenan las visitas a los posts. Extraeremos los registros de la base de datos en base a las visitas de los artÃculos. Para ello necesitamos modificar solo dos ficheros, functions.php y single.php. Después de eso, podrás mostrar los posts más visitados de WordPress.
Fichero functions.php
Abre el fichero functions.php de tu tema actual y añade el siguiente código.
La función setPostViews() añade o modifica el post meta con post_view_count.
/*
* Set post views count using post meta
*/
function setPostViews($postID) {
$countKey = 'post_views_count';
$count = get_post_meta($postID, $countKey, true);
if($count==''){
$count = 0;
delete_post_meta($postID, $countKey);
add_post_meta($postID, $countKey, '0');
}else{
$count++;
update_post_meta($postID, $countKey, $count);
}
}
Fichero single.php
Abre el fichero single.php de tu actual tema y coloca la función setPostViews() dentro del loop.
setPostViews(get_the_ID());
Muestra los posts más visitados
La siguiente query extraerá los posts basándose en el valor del post_views_count. Coloca el siguiente código en el sidebar o donde quieras mostrar los posts más visitados de Wordpress.
<?php
query_posts('meta_key=post_views_count&orderby=meta_value_num&order=DESC');
if (have_posts()) : while (have_posts()) : the_post();
?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php
endwhile; endif;
wp_reset_query();
?>
Â
