Tutoriales de WordPress de Confianza, cuando más los necesitas.
Guía para Principiantes de WordPress
Copa WPB
25 Millones+
Sitios web que usan nuestros plugins
16+
Años de experiencia en WordPress
3000+
Tutoriales de WordPress de expertos

Mostrar el término de búsqueda y el recuento de resultados en WordPress

En este tutorial compartiremos cómo puedes agregar una función simple a tu página de búsqueda que mostrará el término de búsqueda y el número de resultados. Esta característica fue una solicitud especial de uno de nuestros usuarios por correo electrónico. Si deseas que cubramos un tema, no dudes en hacer una sugerencia.

Mostrar el término de búsqueda y el recuento de resultados en la búsqueda de WordPress

Abre tu archivo search.php en tu tema y agrega el siguiente código:

<h2 class="pagetitle">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(); ?></h2>

El código anterior mostrará algo como esto:

Búsqueda de twitter — 15 artículos

También puedes resaltar el término de búsqueda agregando la clase CSS .search-terms a la hoja de estilos de tu tema. Aquí tienes un CSS simple para empezar:

.search-terms {
background-color:yellow;
color:blue;
}

Esto es solo una de las cosas geniales que puedes hacer para tu página de búsqueda al personalizarla. También puedes resaltar los términos de búsqueda en los resultados, e incluso agregar una función de búsqueda por categoría a tu búsqueda de WordPress.

Fuente: Michael Martin

Descargo de responsabilidad: Nuestro contenido es compatible con el lector. Esto significa que si haces clic en algunos de nuestros enlaces, podemos ganar una comisión. Consulta cómo se financia WPBeginner, por qué es importante y cómo puedes apoyarnos. Aquí está nuestro proceso editorial.

El Kit de herramientas definitivo para WordPress

Obtén acceso GRATUITO a nuestro kit de herramientas: ¡una colección de productos y recursos relacionados con WordPress que todo profesional debería tener!

Interacciones del lector

15 CommentsLeave a Reply

  1. ¿Puedo usar este código en el archivo sidebar.php? Ya que necesito mostrar el término de búsqueda y el recuento de resultados en la barra lateral. Por favor, ayuda.

  2. thanks a lot for this snippet! :)

    según el codex de wp, la función wp_specialchars está obsoleta. dice que debes usar esc_html en su lugar.

    saludos,
    marco

  3. echo $wp_query->found_posts;
     
    Al agregar esto al principio de tu página de búsqueda, se mostrará el número de publicaciones encontradas para una búsqueda en particular.
     
    echo get_search_query();
     
    Esto mostrará el término de búsqueda (ingresado en el cuadro de búsqueda por el visitante de tu sitio).
     
    timer_stop(1);
     
    Esto mostrará el tiempo que tardó en ejecutarse la búsqueda.
     
    En conjunto, podrías mostrar algo como:
     
    Tu búsqueda de “café en grano” arrojó “16” publicaciones en “0.87” segundos.

  4. Vaya. Es mucho más simple que eso contar los resultados de búsqueda de WordPress, aquí:

        global $wp_query;
        $count = sizeof( $wp_query->posts );
        echo"<pre>";
        //var_dump($wp_query);// The WP Query Object
        var_dump($wp_query->posts); // The WP Query Object's 'posts' property (note the plural)
        echo"</pre>";
    

    Si colocas ese fragmento en tu plantilla de búsqueda, mostrará las propiedades de la variable ‘$wp_query’, específicamente la propiedad ‘posts’ del objeto. Este es un arreglo que almacena una colección de las publicaciones devueltas por la consulta de búsqueda, con las cuales puedes hacer varias cosas una vez que las accedes, incluyendo (*redoble de tambores*), *contar* el número de publicaciones en ese arreglo usando la función ‘count()’ o ‘sizeof()’ de PHP.

    • Tu código está un poco cortado. ¿Hay alguna forma de que nos envíes el fragmento por correo electrónico y podamos probarlo y escribir sobre él? Obviamente, se te dará el crédito completo.

      Administrador

    • Chris,

      Esto no funcionará. El punto es averiguar el número total de resultados que coinciden con la consulta, no el número obtenido actualmente. Si hay más resultados de los que caben en una página, tu código solo obtendrá el número de elementos en una página.

    • Este código es correcto. Funciona, el único problema que señala es que también se puede hacer de otra manera. Hemos utilizado este código en el sitio web de un cliente y funciona.

      Administrador

  5. Buena idea. Mala ejecución.
    ¿Por qué demonios querrías traducir una etiqueta span???
    Y mi favorita: _e(''); ¿¿Eh??
    ¿Por qué querrías consultar la misma búsqueda dos veces?
    No tiene ningún sentido.

    Pero no quiero odiar, así es como debería hacerse (en mi humilde opinión):


    post_count); ?>

  6. Realmente no le doy suficiente importancia a la búsqueda en mi página. Algo como esto es genial porque hace que la página sea más personalizada.

Deja una respuesta

Gracias por elegir dejar un comentario. Ten en cuenta que todos los comentarios son moderados de acuerdo con nuestra política de comentarios, y tu dirección de correo electrónico NO será publicada. Por favor, NO uses palabras clave en el campo del nombre. Tengamos una conversación personal y significativa.