¿Cómo puedo mover los resultados de búsqueda a una página específica?

21 feb 2011, 17:13:47
Vistas: 21K
Votos: 7

Me preguntaba si es posible mostrar los resultados de búsqueda de WordPress en una página diferente.

En este momento se muestran en http://www.mysite.com/?s=searchterm pero me gustaría mostrarlos en mi plantilla de página search-results, así: http://www.mysite.com/search/?s=searchterm.

¿Es esto posible?

Cualquier ayuda es apreciada, S.

0
Todas las respuestas a la pregunta 4
0

Creaste una página con el slug search para "capturar" esa URL, pero WordPress por defecto ya utiliza esa URL para los resultados de búsqueda. Así que tuviste "suerte" de que esto funcionara para ti, y esta es la razón por la que el supermétodo de redirección mencionado funcionará.

Por lo tanto, en lugar de crear una página "falsa" para alojar la plantilla, simplemente deberías renombrar la plantilla a search.php, como sugirió tnorthcutt. Si aún deseas tener contenido de la página definida en el área de administración, te sugiero que renombres esta página y la obtengas mediante get_posts() u otro método, porque el loop principal contendrá los resultados de búsqueda, no esta página específica.

22 feb 2011 10:19:08
0

Recientemente tuve un problema similar donde los resultados de búsqueda iban a la raíz en lugar de la URL con el slug /blog/ donde realmente quería que se mostraran los resultados. Lo solucioné creando un archivo searchform.php y simplemente escribiendo una plantilla de búsqueda personalizada:

<form role="search" method="get" id="searchform" action="<?php echo home_url( '/blog/' ); ?>">
    <div>
        <label class="screen-reader-text" for="s">Buscar:</label>
        <input type="text" value="" name="s" id="s" />
        <input type="submit" id="searchsubmit" value="Buscar" />
    </div>
</form>

El secreto está en la parte <?php echo home_url( '/blog/' ); ?>. Por defecto, WordPress redirigirá al directorio principal, así: <?php echo home_url( '/' ); ?>. Así que todo lo que tienes que hacer es especificar en qué directorio quieres que se muestren los resultados de búsqueda. Si existe searchform.php en tu tema, lo usará. Si no, usará el formulario predeterminado incluido en las funciones principales de WordPress.

27 nov 2012 01:50:59
0

Parece que solo necesitas renombrar tu página de plantilla. Intenta crear un archivo de plantilla search.php: http://codex.wordpress.org/Theme_Development#Search_Results_.28search.php.29

21 feb 2011 17:18:07
0

Prueba este plugin (o lee el código fuente para ver cómo se hace la redirección - solo son unas pocas líneas de código).

http://wordpress.org/extend/plugins/nice-search/

21 feb 2011 17:16:05