Mostrar todos los resultados de la búsqueda

2

¿Hay alguna forma de mostrar todos los resultados de búsqueda en el search.php ? En realidad, solo muestra 10 resultados (según lo establecido en WordPress settings > general ).

    
pregunta Andycap 19.03.2012 - 12:53

3 respuestas

5

La forma rápida y sucia de hacerlo sería utilizar query_posts nuevamente, duplicando el número de llamadas a la base de datos.

<?php if (have_posts()) : ?>
<?php query_posts('showposts=999'); ?>

Mejor sería agregar esto a functions.php , alterando la consulta original antes de que se ejecute:

function change_wp_search_size($query) {
    if ( $query->is_search ) // Make sure it is a search page
        $query->query_vars['posts_per_page'] = 10; // Change 10 to the number of posts you would like to show

    return $query; // Return our modified query variables
}
add_filter('pre_get_posts', 'change_wp_search_size'); // Hook our custom function onto the request filter

Si quieres mostrar una cantidad ilimitada de publicaciones, usa -1 .

    
respondido por el WouterB 19.03.2012 - 13:06
1

Bastante fácil: -1 anula el límite. Simplemente fusione la consulta predeterminada con sus argumentos personalizados.

global $wp_query;
query_posts( 
    wp_parse_args(
         $wp_query->query
        ,array( 'posts_per_page' => -1 )
    )
);
    
respondido por el kaiser 19.03.2012 - 17:18
0

Pruebe enlace Puede establecer límites / números de publicaciones independientes para todo tipo de resultados, es decir, buscar , categoría, etiqueta, archivos, autor, paginado, etc., sin necesidad de plantillas de página o bucles personalizados.

    
respondido por el markratledge 19.03.2012 - 14:09

Lea otras preguntas en las etiquetas