Sascha Postner macht Jagd auf Kommunikation, Webstandards und Public Relations

 

Wordpress Suche verbessern

Wer sich mit der integrierten Suche des Blogsystems Wordpress beschäftigt merkt schnell: Opimierung tut Not. Es fängt bereits damit an, dass die Suchergebnisse immer chronologisch sortiert werden und nicht nach Relevanz angezeigt werden können. Auch die darüber hinaus werden die Suchergebnisse eher unpraktisch aufbereitet. Mit einigen wenigen Handgriffen und der Installation einiger Plugins läßt sich dies aber weitestgehend ändern.

Verbesserungen am Template

Ausgab der Suchbegriffe und der Anzahl der Suchtreffer in den Suchergebnissen

Zunächst ist es eine gute Idee den User noch einmal daran “zu erinnern” nach was er eigentlich gesucht hat. Ich mache das am liebsten direkt oben im Titel des Template für die Suchergebnisse (search.php). Dabei lässt sich auch prima die Anzahl der Suchtreffer ausgeben:

<h2>Es gibt <?php echo $wp_query->found_posts; ?> Suchergebnisse für "<?php the_search_query() ?>"</h2>

Mit dem search_query kann man auch schön nochmal ein bereits vorgefülltes Suchfeld anbieten:

    <form id="bigsearchform" method="get" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>">
        <input class="searchfield"  type="text" value="<?php the_search_query(); ?>" name="s" id="q" />
        <input class="submit" type="submit" value="Suchen" title="Suchen" />
    </form>

Navigation der Suchtrefferseiten ändern

In vielen Templates wird bei der Navigation zwischen den Suchtrefferseiten leider der Text “Ältere Beiträge” bzw. “Neuere Beiträge” angezeigt. Mit diesem Code kann den Text verändern:

       < ?php previous_posts_link('&lt;&lt; Seite') ?>
      < ?php next_posts_link('Seite &gt;&gt;') ?>

Durchgängige Nummerierung der Suchtreffer

Wenn man die Suchtreffer durchgängig nummerieren möchte ist es am einfachsten dies über eine geordnete Liste zu erledigen. Dummerweise fängt Wordpress bei jeder Seite wieder an von vorne mit 1 zu zählen. Mit dem folgenden Code-Snippet läßt sich dies wunderbar anpassen.

<?php
  if( isset($paged) && ( intval($paged) > 1 ) ) {
  echo '<ol start="' . ( ($paged - 1) * $posts_per_page + 1 ) . '">';
  } else {
  echo '</ol><ol>';
  } ?>
<?php while (have_posts()) : the_post(); ?>
<li class="search-result">
<h3 id="post-<?php the_ID(); ?>"><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h3>
<!-- der Relevanssi Textauszug (s.u.) -->
<?php if (function_exists('relevanssi_the_excerpt')) { relevanssi_the_excerpt(); }; ?>
</li>
<?php endwhile; ?>
</ol>

Diese und einige andere Anregungen stammen aus dem Blog von Daniel Jäger.

Plugins

Search Suggest (Vorschläge für alternative Suchbegriffe)

Das Plugin Search Suggest von Joost de Valk ermöglicht es alternative Suchbegriffe vorzuschlagen. Dieses Feature kennt man unter anderem von Google und anderen Suchmaschinen. So lassen sich Tippfehler oder ähnliche Begriffe abfangen. Angezeigt wird in den Suchergebnissen dann “Meinten Sie vielleicht:” gefolgt von alternativen Suchbegriffen.

Die Vorschläge werden über die Yahoo-API generiert. Ebenfalls möglich wird so übrigens ähnliche Suchbegriffe in die Suchtreffer einzublenden!

Relevanssi (Verbesserung der Suchtreffer und der Relevanz)

Die Suchergebnisse der Wordpresssuche sind mit verlaub etwas dürftig. Verbessern lasseh Sie sich z.B. mit dem Plugin Relevanssi. Unter anderem lassen sich die Treffer so nach Relevanz ausgeben (mit Relevanzboost für Überschriften oder Tags) und die Suche auf bestimmte Kategorien oder Tags beschränken. Außerdem läßt sich zu jedem Treffer ein Textauszug anzeigen, in dem die Suchbegriffe hervorgehoben werden können.

Außerdem bietet das Plugin die Möglichkeit bestimmte “Blockwörter” aus dem Suchindex zu nehmen. Indexiert werden dabei auf Wunsch übrigens auch Kommentare und Pingbacks. Falls man möchte kann man durch den Index auch eine fuzzy-Logik-Suche aktivieren, wahlweise auch nur falls keine Treffer gefunden werden.

Als Schmakerl kann man sich auch ein Log der Suchanfragen an die Seite ausgeben lassen, um beispielsweise die eigenen Inhalte  an die Besucher anzupassen.

Kau-Boy’s AutoCompleter

Das Plugin AutoCompleter von Bernhard Kau ermöglicht eine Live-Search wie man sie auch von Google kennt. Im Gegensatz zu anderen Plugins, die “nur” vergebene Tags oder Kategorien vorschlagen sucht Kau-Boy’s AutoCompleter im Hintergrund die Inhalte des Wordpress Blogs ab und bietet sofort reale Suchtreffer an!

Angezeigt wird auf Wunsch sogar ein kurzer Textauszug rund um den Suchtreffer. Auch wenn es sicherlich noch einige Verbesserungsmöglichkeiten gibt (z.B. ist es nicht umbedingt sinnvoll sofort den ersten Treffer zu selektieren) ist es ein spitzen Plugin. Außerdem sollte noch der tolle Einsatz des Autoren betont werden und dessen schnelle Support!

Popularity: 29% [?]

Verwandte Artikel

Kommentare und Feedback

  1. Daniel posted the following on 1. Februar 2010 at 13:33.

    Hi Sascha, in Deinem sehr gut aufgearbeitem Beitrag sind sogar noch ein paar Tipps für mich dabei :-) Danke dafür! Liebe Grüße aus der weißen Hauptstadt!

    Antworte Daniel
    1. admin posted the following on 1. Februar 2010 at 14:03.

      Freut mich! ;)

      Antworte admin

Trackbacks and Pingbacks

  1. Pingback from Tweets die Sascha Postner : Waidwerk : Blog über Kommunikation, Webstandards und Public Relations» Blogarchiv » Wordpress Suche verbessern erwähnt -- Topsy.com

    [...] Dieser Eintrag wurde auf Twitter von Chris D und Sascha Postner, Sascha Postner erwähnt. Sascha Postner sagte: Neuer Blogeintrag: Wordpress Suche verbessern http://bit.ly/9cQpDc [...]


Leave a reply

Diese Seite hat Beta Status!
Mein XING-Profil. Mein Linkedin-Profil. Mein PGP-Schlüssel. Meine Amazon Wunschliste. Mein Twitter Account.
Volltextsuche Im Blog nach