Term Highlight

⚠️ Hinweis: Diese Erweiterung ist ab SearchWP Version 3.0 VERALTET und wird bald entfernt ⚠️

Bitte sehen Sie sich diese Dokumentation an: https://searchwp.com/docs/settings/highlight/

Wenn Term Highlight aktiv ist, bereinigt es automatisch den Titel und den Auszug, die von Suchergebnissen zurückgegeben werden, und umschließt Suchbegriffe mit einem span, sodass Sie sie so hervorheben können, dass sie gut zu Ihrem Website-Design passen.

Term Highlight enthält auch eine Funktion, mit der Sie einen Auszug aus dem post_content oder aus einem benutzerdefinierten Feld abrufen können, das mindestens einen der Suchbegriffe enthält. Siehe unten.

Nutzung

Die Installation für diese Erweiterung ist die gleiche wie für alle anderen Erweiterungen. Laden Sie die Zip-Datei von Ihrem Konto herunter, laden Sie sie hoch und installieren Sie sie wie jedes andere WordPress-Plugin. Term Highlight wird in Ihrer Plugin-Liste im WordPress-Administrationsbereich angezeigt, und Sie können es aktivieren.

Nach der Aktivierung hebt Term Highlight automatisch Begriffe im Titel und im Auszug für native WordPress-Suchen hervor. Hervorhebungen werden durch Umschließen von Begriffen in <span class="searchwp-highlight" /> angewendet, die Sie in Ihrem CSS ansprechen können.

Term Highlight überschreibt auch automatisch Aufrufe von the_excerpt(), indem dieser Inhalt durch einen Auszug ersetzt wird, der mindestens einen Suchbegriff aus dem Hauptinhalt enthält (z. B. das Hauptinhaltsfeld, nicht benutzerdefinierte Felder). Es hebt auch Begriffe in diesem Inhalt hervor. Wenn Sie diese Funktionalität deaktivieren oder anpassen möchten, beachten Sie bitte die folgenden Filter.

Sie können es noch weiter treiben, indem Sie Term Highlight verwenden, um einen Auszug aus einer Reihe von potenziellen Quellen (einschließlich benutzerdefinierter Felder) zu generieren, indem Sie Aufrufe von the_excerpt() auf Suchergebnisseiten automatisch wie folgt filtern:

<?php
function searchwp_term_highlight_auto_excerpt( $excerpt ) {
global $post;
if ( ! is_search() ) {
return $excerpt;
}
// prevent recursion
remove_filter( 'get_the_excerpt', 'searchwp_term_highlight_auto_excerpt' );
$global_excerpt = searchwp_term_highlight_get_the_excerpt_global( $post->ID, null, get_search_query() );
add_filter( 'get_the_excerpt', 'searchwp_term_highlight_auto_excerpt' );
return wp_kses_post( $global_excerpt );
}
add_filter( 'get_the_excerpt', 'searchwp_term_highlight_auto_excerpt' );
view raw functions.php hosted with ❤ by GitHub

Wenn Sie stattdessen die Aufrufe manuell ersetzen möchten, können Sie etwas wie dieses verwenden:

<?php
/* SearchWP Term Highlight offers an alternative to the_excerpt()
If you're looking to generate any sort of excerpt based on one of the following:
- the actual excerpt
- the generated excerpt from the post content
- the post content itself
- string-based custom field values
this function is for you. It will try to find one of the above (in that order)
and output something with at least one search term in it (if possible)
*/
// echo the excerpt (designed to be used IN PLACE OF the_excerpt
if( function_exists( 'searchwp_term_highlight_the_excerpt_global' ) ) {
searchwp_term_highlight_the_excerpt_global();
}
// return the excerpt (designed to be used IN PLACE OF get_the_excerpt
if( function_exists( 'searchwp_term_highlight_get_the_excerpt_global' ) ) {
$excerpt = searchwp_term_highlight_get_the_excerpt_global();
}
view raw gistfile1.php hosted with ❤ by GitHub

Zusätzliche Suchmaschinen

Term Highlight hebt Begriffe für zusätzliche Suchmaschinen-Suchen nicht automatisch hervor! Sie müssen Ihre Vorlage anpassen, indem Sie Ihren Inhalt vor der Ausgabe durch den Hervorheber senden, wie folgt:

<?php
// this snippet is based on SearchWP's sample Supplemental Search Engine results template found here:
// https://searchwp.com/docs/configuration/#supplemental
// **************************** NOTE ****************************
// this snippet is just a portion of your search results template
// **************************** NOTE ****************************
// these are the search terms
$query = isset( $_REQUEST['swpquery'] ) ? sanitize_text_field( $_REQUEST['swpquery'] ) : '';
$highlighter = false;
if( class_exists( 'SearchWP_Term_Highlight' ) ) {
$highlighter = new SearchWP_Term_Highlight();
}
?>
<?php foreach ( $posts as $post ): setup_postdata( $post ); ?>
<div class="post">
<h2>
<a href="<?php echo get_permalink(); ?>">
<?php
// highlight the title
$title = get_the_title();
if( $highlighter ) {
$title = $highlighter->apply_highlight( $title, $query );
}
echo wp_kses_post( $title );
?>
</a>
</h2>
<?php
// output an excerpt
$excerpt = get_the_excerpt();
if( $highlighter ) {
$excerpt = $highlighter->apply_highlight( $excerpt, $query );
}
echo wp_kses_post( $excerpt );
?>
<div class="custom-field-content">
<?php
// output highlighted content from a Custom Field
$custom_field = get_post_meta( get_the_ID(), 'my_custom_field_key', true );
if( $highlighter ) {
$custom_field = $highlighter->apply_highlight( $custom_field, $query );
}
echo wp_kses_post( $custom_field );
?>
</div>
</div>
<?php endforeach; ?>
view raw gistfile1.php hosted with ❤ by GitHub

HINWEIS: Der obige Ausschnitt soll die Anpassung darstellen, die Sie an der Beispielvorlage für zusätzliche Suchmaschinenergebnisse vornehmen müssten, wobei NUR die Ausgabe der Suchergebnisse ersetzt wird. Es handelt sich nicht um eine vollständige Seiten-Vorlage.

Filter

Es gibt ein paar Filter, die Sie bei der Verwendung von Term Highlight beachten sollten:

searchwp_th_auto_filter_excerpt
Legen Sie fest, ob Term Highlight the_excerpt() automatisch durch einen Auszug mit Suchbegriffen ersetzt. Standard ist true, zum Deaktivieren:

<?php
add_filter( 'searchwp_th_auto_filter_excerpt', '__return_false' );
view raw gistfile1.php hosted with ❤ by GitHub

searchwp_th_num_words
Definieren Sie die Anzahl der Wörter, die Term Highlight beim Erstellen eines Auszugs mit mindestens einem Suchbegriff einschließen wird. Standard ist 55.

<?php
function my_searchwp_th_num_words() {
// use 75 words instead of the default 55
return 75;
}
add_filter( 'searchwp_th_num_words', 'my_searchwp_th_num_words' );
view raw gistfile1.php hosted with ❤ by GitHub

searchwp_th_excluded_engines
Weisen Sie Term Highlight an, die Begriffshervorhebung für bestimmte Suchmaschinen zu überspringen. Standard ist keine.

<?php
function my_searchwp_th_excluded_engines( $load_posts, $search_args ) {
// DO NOT highlight terms when using the 'my_supplemental' search engine
return array( 'my_supplemental' );
}
add_filter( 'searchwp_th_excluded_engines', 'my_searchwp_th_excluded_engines', 10, 2 );
view raw gistfile1.php hosted with ❤ by GitHub

searchwp_th_password_required_message
Wenn ein Beitrag passwortgeschützt ist, gibt Term Highlight eine benutzerdefinierte Zeichenfolge zurück. Standard ist der WordPress-Standard: Es gibt keinen Auszug, da dies ein geschützter Beitrag ist..

<?php
function my_searchwp_th_password_required_message() {
return __( 'This entry is private.' );
}
add_filter( 'searchwp_th_password_required_message', 'my_searchwp_th_password_required_message' );
view raw gistfile1.php hosted with ❤ by GitHub

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