Nov 2

WordPress: Mostrar los post más comentados de tu blog

por CrackVan

Para hacer esto busque un plugin, pero al no encontrar ninguno, o ninguno que me convenciese, me encontre con la forma de ponerlo directamente, solo añadiendo una funcion (que realiza la consulta SQL y procesamiento de los datos obtenidos) y llamandola donde quieras usarla en tu plantilla ;)

Debemos meter este codigo en el archivo wp-hacks.php , si no tenemos habilitado el uso del wp-hacks.php, podemos hacerlo en el panel de WordPress en Opciones/Misceláneas, marcando la opcion “Usar soporte de archivo my-hacks.php y guardando los cambios.

  1. function get_most_commented($no_posts = 5, $before = ‘<li>’, $after = ‘</li>’, $show_pass_post = false) {
  2.         global $wpdb, $tableposts, $tablecomments;
  3.         $request = "SELECT ID, post_title, COUNT($tablecomments.comment_post_ID) AS ‘comment_count’ FROM $tableposts, $tablecomments WHERE";
  4.         $request .= " $tableposts.ID=$tablecomments.comment_post_ID AND post_status = ‘publish’";
  5.         if(!$show_pass_post) { $request .= " AND post_password =”"; }
  6.         $request .= " AND comment_approved = ‘1′ GROUP BY $tablecomments.comment_post_ID ORDER BY comment_count DESC LIMIT $no_posts";
  7.         $posts = $wpdb->get_results($request);
  8.         $output = ;
  9.         foreach ($posts as $post) {
  10.                 $post_title = stripslashes($post->post_title);
  11.                 $comment_count = $post->comment_count;
  12.                 $permalink = get_permalink($post->ID);
  13.                 $output .= $before . ‘<a href="’ . $permalink . ‘" title="’ . $post_title.‘">’ . $post_title . ‘</a> (’ . $comment_count.‘)’ . $after;
  14.         }
  15.         echo $output;
  16. }

Si no tenemos el archivo wp-hacks.php, lo creamos en la raiz del blog ;)

Ahora solo queda poner el siguiente codigo donde queramos mostrar los post mas comentados del blog:

  1. <?php get_most_commented(); ?>


Vía, WordPressWiki



  • Leido 1,018 veces
Dejanos tu comentario

3 respuestas en este post

  1. pablasso, 2. Noviembre 2007, 1:46 | Mozilla Firefox Mozilla Firefox 2.0.0.8 Ubuntu Linux Ubuntu Linux
  2. CrackVan, 2. Noviembre 2007, 17:54 | Mozilla Firefox Mozilla Firefox 2.0.0.8 Ubuntu Linux Ubuntu Linux

    Por lo que veo viene a ser la misma función, o muy parecida, pero bastante mas cómodo subir y activar que andar editando el wp-hacks.php :P

    Gracias pablasso

     
  3. Computadoras, 29. Agosto 2008, 22:21 | Mozilla Firefox Mozilla Firefox 3.0.1 Windows Windows Vista

    Como puedo hacer para que en el home de un sitio que tengo con wordpress 2.6.1 me muestre los 3 o 5 ultimos post de cada una de las 3 categorias que tengo y solo los primeros por ejemplo 300 caracteres?

    muchas gracias

     

Dejanos tu Comentario