SearchWP Documentation

Sehen Sie sich die Installationsanleitung an, durchsuchen Sie die Wissensdatenbank und erfahren Sie mehr über die vielen Hooks von SearchWP

\SWP_Query

\SWP_Query eine Alternative zu \SearchWP\Query mit einigen wichtigen Unterschieden:

  1. Das Design und die Implementierung sind nach WP_Query modelliert.
  2. Infolgedessen werden die Ergebnisse, unabhängig von der \SearchWP\Engine-Konfiguration, auf \SearchWP\Sources beschränkt, die auf WP_Post basieren, z. B. Beiträge, Seiten, Medien und benutzerdefinierte Beitragstypen.

Grundlegende Verwendung

\SWP_Query kann genauso verwendet werden wie (und in einigen Fällen anstelle von) 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

Hinweis: Es gibt einige Vorbehalte, da \SWP_Query keine Funktionsgleichheit mit WP_Query hat. Bitte beachten Sie diese Dokumentation, die beschreibt, welche Methoden und Eigenschaften Ihnen zur Verfügung stehen.

Beachten Sie auch: Da \SWP_Query so konzipiert wurde, dass es (größtenteils) mit WP_Query interoperabel ist, kann es vorkommen (z. B. wenn kein s (Suchanfrage)-Parameter vorhanden ist), dass Sie WP_Query wieder verwenden können, um Ihre Ergebnisse wie folgt abzurufen:

<?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

Argumente

Beim Instanziieren eines neuen \SearchWP\Attribute kann ein Array der folgenden Elemente bereitgestellt werden:

s (string)
Suchanfrage. (Standard: '')
engine (string)
\SearchWP\Engine-Name. (Standard: 'default')
posts_per_page (integer)
Anzahl der pro Seite zurückzugebenden Beiträge. (Standard: get_option( 'posts_per_page' ))
load_posts (boolean)
Ob Ergebnisse als WP_Posts zurückgegeben werden sollen. (Standard: true)
fields (string)
Ob "all" oder "ids" zurückgegeben werden sollen. (Standard: "all")
nopaging (boolean)
Ob die Paginierung deaktiviert und alle Ergebnisse zurückgegeben werden sollen. (Standard: false)
page (integer)
Welche Seite der Ergebnisse zurückgegeben werden soll. (Standard: null)
paged (integer)
Welche Seite der Ergebnisse zurückgegeben werden soll. (Standard: 1)
post__in (integer[])
Suchpool auf diese IDs beschränken (Standard: [])
post__not_in (integer[])
Suchpool auf diese IDs beschränken (Standard: [])
post_type (string[])
Ergebnisse auf diese Beitragstypen beschränken (Standard: [])
post_status (string[])
Ergebnisse auf diese Beitragstatus beschränken (Standard: [])
tax_query ([])
Siehe tax_query (Standard: [])
meta_query ([])
Siehe meta_query (Standard: [])
date_query ([])
Siehe date_query (Standard: [])
order (string)
Ergebnisse in "ASC" oder "DESC" Reihenfolge zurückgeben. (Standard: "DESC")
orderby (string)
Ergebnisse sortiert nach "relevance", "date" oder "rand" zurückgeben. (Standard: "relevance")

Methoden

Hinweis: Es sind magische Getter und Setter für Eigenschaften verfügbar.

get_search_results()
Ergebnis-Set basierend auf aktuellen Eigenschaften aktualisieren.
get_posts()
Gibt das aktuelle Ergebnis-Set zurück.

Hooks

Es gibt eine Reihe von Hooks, die das Verhalten von \SWP_Query weiter modifizieren können:

Erstellen Sie noch heute eine bessere WordPress-Sucherfahrung

Verlieren Sie nie wieder Besucher an unzureichende Suchergebnisse. SearchWP macht die Erstellung Ihrer eigenen intelligenten WordPress-Suche schnell und einfach.

Get SearchWP Now
Symbol für mehrere Suchmaschinen