SearchWP Documentation

Consulta la guía de instalación, explora la base de conocimiento, descubre los numerosos hooks de SearchWP

Compatibilidad con JetSmartFilters para Elementor

SearchWP funciona con las plantillas de Archivo de Búsqueda personalizadas de Elementor, pero JetSmartFilters anula los resultados de SearchWP secuestrando las consultas de archivo.

Uso de JetEngine Listing Grid

Para integrar los resultados de SearchWP al usar JetEngine Listing Grid para mostrar resultados, puedes usar este hook:

All hooks should be added to your custom SearchWP Customizations Plugin.

<?php
// Integrate SearchWP with JetSmartFilters search using
// JetEngine Listing Grid to display results.
// @link https://searchwp.com/documentation/knowledge-base/compatibility-with-jetsmartfilters-for-elementor/
add_action( 'pre_get_posts', function( $wp_query ) {
if (
! isset( $wp_query->query['jet_smart_filters' ] )
|| empty( $wp_query->query['s'] )
) {
return;
}
$swp_query = new \SWP_Query( array(
'engine' => 'default',
's' => $wp_query->query['s'],
'fields' => 'ids',
'nopaging' => true
) );
$results = ! empty( $swp_query->posts ) ? $swp_query->posts : array( 0 );
$wp_query->set( 'post__in', $results );
$wp_query->set( 'post_type', 'any' );
$wp_query->set( 'post_status', 'any' );
$wp_query->set( 'orderby', 'post__in' );
$wp_query->set( 'order', 'DESC' );
$wp_query->set( 's', false );
}, 9999 );

Uso de Archivo de Elementor Pro

Hay dos opciones si te encuentras con este problema. Si no estás usando JetSmartFilters en ninguna página de archivo, puedes navegar a la siguiente pantalla del Menú de Administración de WordPress: Elementor > JetSmartFilters Settings y desmarcar esta casilla:

Una vez desmarcada, puedes hacer clic en el botón Guardar y el problema se resolverá.

Si, sin embargo, estás usando JetSmartFilters en otras páginas de archivo, puedes usar este fragmento para deshabilitar JetSmartFilters en las páginas de archivo de búsqueda, lo que te permitirá usar la personalización de Plantilla de Archivo de Búsqueda de Elementor, utilizando el Widget de Publicaciones de Archivo de Elementor para mostrar los resultados de la búsqueda.

Es una solución rápida; puedes añadir este fragmento al archivo functions.php de tu tema (o a un plugin personalizado que hayas creado) y permitirá que se muestren los resultados de SearchWP:

<?php
// Prevents JetSmartFilters from overriding SearchWP's results.
// @link https://searchwp.com/documentation/knowledge-base/compatibility-with-jetsmartfilters-for-elementor/
add_action( 'init', function() {
add_filter( 'elementor/theme/posts_archive/query_posts/query_vars', function( $query ) {
if ( is_search() && is_main_query() ) {
remove_all_filters( 'elementor/theme/posts_archive/query_posts/query_vars' );
}
return $query;
}, -1 );
}, -998 );

El fragmento anterior aprovecha las prioridades de Jet Smart Filter en sus hooks internos para evitar que anule los resultados de SearchWP en las páginas de archivo de resultados de búsqueda.

Cree hoy mismo una mejor experiencia de búsqueda en WordPress

No vuelva a perder visitantes por resultados de búsqueda inútiles. SearchWP facilita la creación de su propia búsqueda inteligente en WordPress.

Get SearchWP Now
Icono de múltiples motores de búsqueda