- Das Template für die Suchergebnisse im Theme Twenty Thirteen heißt
search.php
.
- Dieses Template verwendet zur Darstellung gefundener Inhalte das Template
content.php
.
- Dieses Template verwendet bei Suchergebnissen (Conditional Tag
is_search()
) das WordPress-Tag the_excerpt()
- Die Länge der Auszüge beträgt per Vorgabe 55 Zeichen, lässt sich aber mit nachfolgender Funktion im Template functions.php ändern:
function custom_excerpt_length( $length ) {
return 20; // ändert die Länge auf 20 Zeichen
}
add_filter( 'excerpt_length', 'custom_excerpt_length', 999 );
Das Suchergebnis lässt sich durch Verwendung von pre_get_posts
filtern:
function SearchFilter($query) {
if ($query->is_search) {
$query->set('post__not_in', array(42, 4711)); //Post mit IDs 42 und 4711 nicht anzeigen
}
return $query;
}
add_filter('pre_get_posts','SearchFilter');
Was mich allerdings sehr stutzig macht, ist, warum in deinem Suchergebnissen JavaScript aufttaucht. Das würde bedeuten, dass Du in einem Beitrag oder einer Seite JavaScript eingegeben hast – wo es ganz sicher nicht hingehört.
Vielen Dank für die Antwort. JavaScript ist wahrscheinlich durch google adwors drin. Besteht denn irgendwie eine Möglichkeit der excerpt erst ab Zeile zwei zu übernehmen? Vielen Dank
Oder könnte man hier einen Wortfilter implementieren?
Die Frage ist, wie Du Google Adwords eingebunden hast. Klar kann man in den Suchergebnissen mit einem Filter für pre_get_posts diesen String entfernen. Ob das sinnvoll ist, steht auf einem anderen Blatt.
Durch die Kennzeichung „Werbung“ wird es aktuell so dargestellt:
„WerbungLorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla consequat massa quis enim.“
Mit einem Wortfilter könnte ich dies ja entfernen.
Warum taucht aber die Anzeige selbst dort auch und dann auch noch als Text`?