¿Cómo obtener la cantidad de resultados de query_posts?

3 minutos de lectura

avatar de usuario
iWizard

Estoy imprimiendo publicaciones y quiero obtener una cantidad de resultados, ¿cómo puedo hacer eso?

Esto es parte de mi código:

if (have_posts()) : 

    $args = array(
        'showposts' => '5',
        'paged' => $paged
    );


    $thePosts = query_posts($args);
...

Gracias por la ayuda

  • ¿Quiere decir que su búsqueda tiene _______ resultados? Si no, por favor agregue más a su pregunta

    – Ryan B.

    18 de junio de 2012 a las 15:48

  • @RyanB: quiero imprimir, por ejemplo: 5 resultados encontrados

    – iWizard

    18 de junio de 2012 a las 15:49

  • mirar: wpbeginner.com/wp-tutorials/…

    – Ryan B.

    18 de junio de 2012 a las 15:53

  • ¿Puedes tomar tu solución, convertirla en una respuesta y aceptarla? De esa manera, puede ayudar a otros en el futuro que encuentren esta pregunta.

    – ajm

    18 de junio de 2012 a las 16:28

  • claro, espero que los moderadores no lo marquen como un comentario

    – Ryan B.

    19 de junio de 2012 a las 20:56

avatar de usuario
iWizard

RESUELTO:

if (have_posts()) : 

        $args = array(
            'showposts' => '5',
            'paged' => $paged
        );


        $thePosts = query_posts($args);


         global $wp_query; 
         echo $wp_query->found_posts;
    ...

  • Solo puedes hacer $thePosts->found_posts; para obtener la cuenta! ¡Gracias por su respuesta! Me mostró cómo hacerlo ^^

    –Mike Boutin

    27 mayo 2013 a las 16:47

Para mostrar el número de resultados de una búsqueda, utilice:

Search Result for 

<?php 
/* Search Count */ 
$allsearch = &new WP_Query("s=$s&showposts=-1"); 
$key = wp_specialchars($s, 1);
$count = $allsearch->post_count; _e('');
 _e('<span class="search-terms">'); 
echo $key; _e('</span>'); 
_e(' &mdash; '); 
echo $count . ' ';
 _e('articles');
 wp_reset_query(); 
?>

Esto fue tomado de: Principiante de WordPress.

La respuesta correcta es

 if (have_posts()) : 

    $args = array(
        'showposts' => '5',
        'paged' => $paged
    );


    $thePosts = query_posts($args);



     echo $thePosts ->found_posts;
...

  • Edité la respuesta aprobada stackoverflow.com/posts/11096000/revisions para que sea mejor, pero luego la edición no fue aprobada, por lo tanto, este otro intento.

    – Gabriel Regly

    1 oct 2014 a las 0:44


avatar de usuario
Jorge

Esto le dará los resultados: Mostrar resultados 11-20 de 46, por ejemplo.

  $args = array(
    'cat'=> $cat,
    'posts_per_page' => 10,
    'paged' => $paged,
    's'=> $s
  );
  query_posts($args);

  $startpost=1;
  $startpost=10*($paged - 1)+1;
  $endpost = (10*$paged < $wp_query->found_posts ? 10*$paged : $wp_query->found_posts);
        ?>
  <h2 class="displayResult">Showing results <?php echo $startpost; ?> - <?php echo $endpost; ?> of <?php echo $wp_query->found_posts; ?></h2>

Si esta no es una página de búsqueda, simplemente elimine la línea "'s'=> $s".

Si lo necesita, asegúrese de declarar la variable como $_GET['s'] arriba.

Fácil. Para mostrar número de resultados para esta página actualusar

// Showing Page X of Y
print filter_var( absint( $GLOBALS['wp_query']->post_count ), FILTER_SANITIZE_NUMBER_INT );

Para el cantidad total de resultadosusar

print filter_var( absint( $GLOBALS['wp_query']->found_posts ), FILTER_SANITIZE_NUMBER_INT );

avatar de usuario
kdgilang

Mostrar números de resultados de búsqueda:

<?php global $wp_query;
echo $wp_query->post_count; ?> 

avatar de usuario
Giang D.MAI

query_posts( $args );
global $wp_query;
print_r($wp_query->max_num_pages);

me ayuda

¿Ha sido útil esta solución?