Descubre en este tutorial cómo mostrar los resultados de los filtros de FacetWP en una página distinta mediante código.
FacetWP es un un plugin fantástico para filtrar contenido. De hecho, es el que utilizo en esta página para facilitar la búsqueda de tutoriales.
El funcionamiento del plugin depende de dos elementos: por un lado los filtros (facets) y por otro las plantillas (templates). Este último es donde se muestran los resultados.
Por defecto, los resultados se muestran en la misma página donde están los filtros.
La mayoría de los casos este el comportamiento más adecuado (como en esta web). Pero, ¿y si te interesa que se abra una nueva página con los resultados?
Entonces solo tienes que modificar un poco el flujo habitual con FacetWP.
Vamos a ver cómo hacerlo:
Pasos para mostrar los resultados de FacetWP en una nueva página
1. Crea los filtros y plantillas en FacetWP
Este paso es el mismo que das siempre al usar FacetWP.
Crear uno o más filtros:

Y crea una plantilla:

2. Instala y activa el addon Submit
Una vez que tengas configurados los filtros y la plantilla, instala y activa el addon Submit. Es gratuito, así que se descargará directamente desde el enlace anterior.
3. Modifica el botón de búsqueda y oculta la plantilla en la página de búsqueda
En la página donde quieras mostrar los filtros, añade tanto los filtros como la plantilla, como haces normalmente.
Ahora vienen los dos pasos diferentes:
1- Por un lado, tienes que modificar el botón de búsqueda de la siguiente manera:
Para ver este código y los otros 1869 snippets de esta web,
identifícate o suscríbete aquí.
Donde sustituirás /resultados/ por la URL donde quieras mostrar los resultados.
2- Por otro tienes que ocultar la plantilla de FacetWP.
Pare ello añade lo siguiente al fichero style.css:
Para ver este código y los otros 1869 snippets de esta web,
identifícate o suscríbete aquí.
Aquí debes sustituir .page-id-148
por el ID de tu página de búsqueda.
Con esto consigues:
- Que el botón de buscar envíe a una nueva página de resultados.
- Ocultar los resultados en la página de búsqueda.
4- Añade la plantilla a la página de resultados
Este paso también es idéntico al que harías en cualquier caso.
En la página de resultados solo tienes que añadir la plantilla (template) que hayas creado en FacetWP.
Esto puedes hacerlo usando el shortcode directamente en el editor de bloques. Por ejemplo:
Para ver este código y los otros 1869 snippets de esta web,
identifícate o suscríbete aquí.
O si quieres usar una plantilla de página específica en tu tema puedes hacerlo usando las funciones de FacetWP.
Para ver este código y los otros 1869 snippets de esta web,
identifícate o suscríbete aquí.
Ya lo tienes.
Conclusión
¿Quieres mostrar los resultados de FacetWP en una nueva página? Ahora ya sabes cómo hacerlo.
Si tienes alguna duda te leo en los comentarios. Y si quieres dejarme una sugerencia para futuros tutoriales, envíamela a través del formulario de contacto.
Todo ventajas de ser suscriptor. 😉