SearchWP Documentation

Visualizza la guida all'installazione, sfoglia la Knowledge Base, scopri i numerosi hook di SearchWP

\SWP_Query

\SWP_Query un'alternativa a \SearchWP\Query con un paio di importanti differenze:

  1. Il design e l'implementazione sono modellati su WP_Query.
  2. Di conseguenza, indipendentemente dalla configurazione di \SearchWP\Engine, i risultati saranno limitati a \SearchWP\Source basati su WP_Post, ad es. Post, Pagine, Media e Tipi di Post personalizzati.

Utilizzo di base

\SWP_Query può essere utilizzato proprio come faresti (e in alcuni casi sostituito a) WP_Query:

<?php
//@link https://searchwp.com/documentation/classes/swp_query/
global $post;
$swp_query = new SWP_Query( [
's' => 'coffee', // Search query.
'engine' => 'default', // Engine name.
] );
if ( $swp_query->have_posts() ) {
while ( $swp_query->have_posts() ) :
$swp_query->the_post();
?>
<div class="search-result">
<h3><a href="<?php echo get_permalink(); ?>">
<?php the_title(); ?>
</a></h3>
<?php the_excerpt(); ?>
</div>
<?php
endwhile;
wp_reset_postdata();
} else {
?>
<p>No results found.</p>
<?php
}
view raw functions.php hosted with ❤ by GitHub

Nota: Ci sono alcune avvertenze in quanto \SWP_Query non ha parità di funzionalità con WP_Query. Si prega di fare riferimento a questa documentazione che delinea quali metodi e proprietà sono disponibili.

Nota anche: Poiché \SWP_Query è stato progettato per essere (per lo più) interoperabile con WP_Query, potrebbero esserci momenti (ad es. quando non c'è il parametro s (query di ricerca)) in cui puoi ripristinare WP_Query per recuperare i tuoi risultati in questo modo:

<?php
// @link https://searchwp.com/documentation/classes/swp_query/
global $post;
$args = [
's' => get_search_query(),
'tax_query' => [ [
'taxonomy' => 'people',
'field' => 'slug',
'terms' => 'bob',
] ],
];
// If a search query is present use SWP_Query
// else fall back to WP_Query
if ( ! empty( $args['s'] ) ) {
$swp_query = new SWP_Query( $args );
} else {
$swp_query = new WP_Query( $args );
}
// Loop through results.
if ( $swp_query->have_posts() ) {
while ( $swp_query->have_posts() ) :
$swp_query->the_post();
?>
<div class="search-result">
<h3><a href="<?php echo get_permalink(); ?>">
<?php the_title(); ?>
</a></h3>
<?php the_excerpt(); ?>
</div>
<?php
endwhile;
wp_reset_postdata();
} else {
?>
<p>No results found.</p>
<?php
}
view raw template.php hosted with ❤ by GitHub

Argomenti

Quando si istanzia un nuovo \SearchWP\Attribute è possibile fornire un array dei seguenti:

s (string)
Query di ricerca. (predefinito: '')
engine (string)
Nome di \SearchWP\Engine. (predefinito: 'default')
posts_per_page (integer)
Numero di post da restituire per pagina. (predefinito: get_option( 'posts_per_page' ))
load_posts (boolean)
Se restituire i risultati come WP_Post. (predefinito: true)
fields (string)
Se restituire "all" o "ids". (predefinito: "all")
nopaging (boolean)
Se disabilitare la paginazione e restituire tutti i risultati. (predefinito: false)
page (integer)
Quale pagina di risultati restituire. (predefinito: null)
paged (integer)
Quale pagina di risultati restituire. (predefinito: 1)
post__in (integer[])
Limita il pool di ricerca a questi ID (predefinito: [])
post__not_in (integer[])
Limita il pool di ricerca a questi ID (predefinito: [])
post_type (string[])
Limita i risultati a questi Tipi di Post (predefinito: [])
post_status (string[])
Limita i risultati a questi stati dei post (predefinito: [])
tax_query ([])
Vedi tax_query (predefinito: [])
meta_query ([])
Vedi meta_query (predefinito: [])
date_query ([])
Vedi date_query (predefinito: [])
order (string)
Restituisci i risultati in ordine "ASC" o "DESC". (predefinito: "DESC")
orderby (string)
Restituisci i risultati ordinati per "relevance", "date" o "rand". (predefinito: "relevance")

Metodi

Nota: Sono disponibili getter e setter magici per le proprietà.

get_search_results()
Aggiorna il set di risultati in base alle proprietà correnti.
get_posts()
Restituisce il set di risultati corrente.

Hook

Sono disponibili numerosi hook per modificare ulteriormente il comportamento di \SWP_Query:

Crea Oggi Stesso una Migliore Esperienza di Ricerca WordPress

Non perdere mai più visitatori a causa di risultati di ricerca inutili. SearchWP rende la creazione della tua ricerca intelligente WordPress veloce e facile.

Get SearchWP Now
Icona di motori di ricerca multipli