X

Cómo redirigir cuando la búsqueda de WordPress solo devuelve una coincidencia

Snippets de IsItWP

¿Quieres redirigir tu búsqueda a la publicación si solo hay un resultado de búsqueda? Este fragmento mejora la experiencia de búsqueda en el sitio al eliminar la necesidad de hacer clic.

Instrucciones:

Todo lo que tienes que hacer es agregar este código al archivo functions.php de tu tema o a un plugin específico del sitio:

add_action('template_redirect', 'single_result');
function single_result() {
    if (is_search()) {
        global $wp_query;
        if ($wp_query->post_count == 1) {
            wp_redirect( get_permalink( $wp_query->posts['0']->ID ) );
        }
    }
}

Nota: Si es la primera vez que agregas fragmentos de código en WordPress, consulta nuestra guía sobre cómo copiar / pegar fragmentos de código correctamente en WordPress, para que no rompas accidentalmente tu sitio.

Si te gustó este fragmento de código, considera echar un vistazo a nuestros otros artículos en el sitio como: Mejora la experiencia de búsqueda predeterminada de WordPress: la reseña completa de Search WP.

Comentarios   Deja una respuesta

  1. Obtengo un error de sintaxis, inesperado ' $wp_query ' (T_VARIABLE) cuando copio y pego tu código en el archivo functions.php. Tengo un tipo de publicación personalizado llamado 'cars' con 4 taxonomías y he creado una página de archivo que utiliza el plugin 'grid' y el plugin 'search and filter pro'. Todo funciona bien, pero quiero que se redirija a la página de la publicación en lugar de eso si solo tengo un resultado en el archivo. ¿Puedes darme alguna pista? ¡Gracias!

  2. ¡Gracias!

  3. 12 ajustes de WordPress no tan obvios para mejorar publicaciones y páginas - WPMU DEV 27 de marzo de 2015 a las 8:10 a. m.

    […] realmente me gusta este – ¡gracias WP Snipp! Cuando un usuario busca en tu sitio web y solo hay un resultado, el usuario es llevado directamente a la […]

  4. Etiquetas condicionales (y fragmentos) de WordPress para principiantes 4 de marzo de 2015 a las 11:52 p. m.

    […] [Fuente] […]

  5. Buen código, pero haría una mejora… cambia

    if ($wp_query->post_count == 1) a
    if ($wp_query->found_posts == 1)
    El código original rompe la paginación cuando solo queda una publicación en la siguiente página y redirige a ella en lugar de mostrarla. por ejemplo. Si un archivo de publicación está configurado para mostrar 10 publicaciones por página y se devuelven 11 resultados, en lugar de mostrar la última publicación, redirige a ella.

    1. ¡esto está funcionando correctamente, gracias!

      1. Me alegra que haya ayudado 🙂

  6. 29 ajustes de Wordpress para mejorar publicaciones y páginas 18 de octubre de 2011 a las 9:03 a. m.

    […] [Fuente: WPSNIPP] […]

  7. Tu ejemplo funcionó bien para mí, todo parece estar funcionando.

    1. Hola, yo también ahora. Lo siento. Gracias.

      1. no hay problema 🙂

Agrega un comentario

Nos complace que hayas elegido dejar un comentario. Ten en cuenta que todos los comentarios se moderan de acuerdo con nuestra política de privacidad, y todos los enlaces son nofollow. NO uses palabras clave en el campo del nombre. Tengamos una conversación personal y significativa.

Lista de verificación para lanzar WordPress

La lista de verificación definitiva para lanzar WordPress

Hemos recopilado todos los elementos esenciales de la lista de verificación para el lanzamiento de tu próximo sitio web de WordPress en un práctico ebook.
¡Sí, envíame el eBook gratis!