PostSearchSuggestion | WE ARE ROOT

PostSearchSuggestion

Nachfolgend wird das von mir erstellte WordPress-Plugin “PostSearchSuggestion” beschrieben. Es basiert im Wesentlichen auf dem Plugin PXS-Mail, welches von Shane Marriott erstellt und von Frank Bueltge übersetzt und erweitert wurde.

Die Idee

Bei der Auswertung meiner Statistik kam es oft vor, dass ich Suchbegriffe fand, die interessante Artikel abgeben würden. Gern hätte ich von dem Besucher, der leider (noch) keinen Beitrag zu “seinem” Thema finden konnte, genauer gewusst, was ihn daran interessiert. Es besteht ja durchaus die Möglichkeit, dass ich ihm (oder ihr) helfen könnte.

Der Nutzen

Das Plugin ermöglicht es, auf zwei Varianten ein Formular einzubinden, welches beispielsweise nach einer Suche angezeigt wird. Dabei kann man innerhalb der zu bearbeitenden Templateseite (Anleitung folgt) entscheiden, ob das Formular nur bei erfolglosen Suchen oder immer angezeigt werden soll.

Der Besucher braucht dann nur ein paar Sätze in das Formular eintragen und schon geht die Post ab zum konfigurierten Empfänger.

Achtung: Um die Hemmschwelle für Einträge möglichst gering zu halten habe ich sämtliche Felder außer der Nachricht selbst optional gesetzt. Natürlich kann der Nutzer Kontaktdaten eintragen – die Vorteile dafür sind beispielsweise in meinem Suchformular aufgelistet. (Klicken um es zu testen.)

Die Installation

Vor einer Installation eines neuen Plugins ist es immer ratsam, ein Backup des WordPress-Verzeichnisses und eine Sicherung der Datenbank durchzuführen. Lieber ein Backup zuviel als eines zu wenig!

  1. Download der Plugin-Datei (Link: PostSearchSuggestion)
  2. Upload der Datei in das Plugin-Verzeichnis (wichtig: bitte direkt in <blogurl>/wp-content/plugins ablegen, ohne zusätzliches Unterverzeichnis).
  3. Aktivierung des Plugins in der Plugin-Seite im Admin-Bereich des Blogs.
  4. Konfiguration des Plugins via <blogurl>/wp-admin/options-general.php?page=PostSearchSuggestion.php bzw. Einstellungen –> PostSearchSuggestion

Die Möglichkeit #1: Verwendung via PHP-Funktion

Dies wird die wahrscheinlichere und auch von mir in diesem Blog praktizierte Variante sein.

Vorgehen:

  1. Wechsel in das Theme-Verzeichnis des aktuell verwendeten Themes.
  2. Öffnen der Datei search.php mittels eines Editors.
  3. Nun ist etwas Sucharbeit angesagt und eine Entscheidung zu fällen (Variante A oder B): HIERNACH geht WordPress nur hinein, sofern es Suchergebnisse gibt:
    <?php if (have_posts()) : ?>
    HIERZWISCHEN wird der Code PRO SUCHERGEBNIS ausgeführt (hier das Formular NIEMALS eintragen)!
    <?php while (have_posts()) : the_post(); ?><?php endwhile; ?>
    HIERNACH gab es keine Suchergebnisse.
    Variante A: Das Formular wird nur angezeigt, wenn keine anderen Ergebnisse zu finden waren, hiernach einfügen:
    <?php else : ?>
    <?php if( function_exists('postSearchSuggestionForm')) postSearchSuggestionForm(); ?>
    Variante B: Das Formular wird angezeigt, egal ob es Suchergebnisse gab oder nicht, hiernach einfügen:
    <?php endif; ?>
    <?php if( function_exists('postSearchSuggestionForm')) postSearchSuggestionForm(); ?>
  4. Nach dem Abspeichern der search.php sollte man über das Suchformular des Blogs eine Suchanfrage absetzen und dann das Formular sehen können. (Bei der Wahl von Variante A nur, sofern es keine Ergebnisse gibt.)

Die Möglichkeit #2: Verwendung via Platzhalter

Da in der Standardinstallation keine Möglichkeit zur Ausführung von PHP-Code innerhalb der Beitragstexte und Seiteninhalte existiert, muss man, um dennoch dynamische Inhalte zu erzeugen, einen Platzhalter in den Text einfügen, der bei der Ausgabe durch WordPress bzw. das Plugin ersetzt wird.

Dieser Platzhalter heißt für dieses Plugin: { PostSearchSuggestion }

ACHTUNG: Hier in diesem Text wurden innerhalb links und rechts vom Wort jeweils ein Leerzeichen eingefügt. Hätte ich dies nicht gemacht, würde an dieser Stelle nun auch das Formular stehen, da das aktive Plugin jeden Artikel- und Seiteninhalt durchsucht und ggf. den Tag ersetzt. Beim Einsatz müssen diese Leerzeichen entfernt werden, sodass der Tag kein Leerzeichen mehr enthält.

Durch diese zwei Varianten ist die Platzierungsfreiheit für das Formular quasi unbeschränkt und sollte sich an jeder Position darstellen lassen.

Das Rechtliche

Heutzutage kann man leider nicht einfach jemandem etwas anbieten ohne danach u.U. mit einem Anwalt zu tun zu haben. Daher nun mein ausdrücklicher Hinweis, dass ich das Plugin zwar getestet und zum Zeitpunkt des Verfassens dieser Seite auch selbst im Einsatz habe, aber dennoch keine Gewährleistung für Funktionstüchtigkeit, Datensicherheit oder Ausnutzung für Spamattacken geben kann. Dies ist u.a. darin begründet, dass mir unter keinen Umständen sämtliche Systemgegebenheiten und – eventuell sogar bisher unbekannte – Sicherheitslücken bekannt sein können.

Wie es immer bei solchen Rechtstexten ist, vergeht einem wieder gleich der ganze Spaß… sorry dafür! Die gute Nachricht: Ich bin natürlich gern bereit bei Problemen zu helfen und – sofern es Wissen und Zeit erlauben – Anpassungen bereitzustellen.

Feedback

Über ein solches würde ich mich – egal in welcher Form und ob positiv oder negativ – sehr freuen.

Schreib einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

be admin or die tryin'