indexed_search „zerstückeln“

Auf vielen Seiten gibt es eine Suchbox, die oben irgendwo in der Ecke steht. Wenn man da was eingibt und absendet, landet man auf einer Seite, auf der die Ergebnisse angezeigt werden, meistens steht da auch noch eine Suchbox darüber. Was ist aber wenn man die Suchbox über den Ergebnissen nicht haben möchte, und für die kleine Suchbox oben in der Ecke nicht gleich die Macina Searchbox verwenden möchte und der Pagebrowser trotzdem funktionieren soll.

Zunächstmal braucht man nicht gleich die Macina Searchbox, um eine Box in einer Ecke zu machen, reicht ein wenig Typoscript.

lib.search = COA_INT
lib.search {
10 = TEXT
10.value =
20 = HTML
20.value =
wrap =

|

}

Fertig ist die Box! Man kann natürlich auch Klassen hinzufügen, um das Ding zu stylen oder ein fieldset drumrum. Die searchPagePID ist eine Konstante, die man definieren muss, an diese Seite wird das Ergebnis gesendet.

Auf die Ergebnisseite wird das Plugin indexed_search gelegt. Wenn man da aber das Formular nicht haben möchte, kann man es nicht einfach entfernen. Denn der Pagebrowser verlinkt nicht einfach, da wird per JavaScript ein Wert in dem Formular geändert und das Formular anschließend gesendet. Und wenn kein Formular da ist, dann gibt es JavaScript Fehlermeldungen. Mögliche Lösung ist das Ausblenden des Formulars mit CSS oder das verstecken der ungewollten Felder mit type=“hidden“.
Zu beachten ist bei all dem, dass das Formular in der Box einen anderen Namen hat, als die Suchbox selbst. Dann falls die gleich sind, gibt es auch Probleme beim Pagebrowser.

Und noch folgende ätzende Sachen: die Ausgabe der indexed_search läßt sich nicht steuern, d.h. es wird immer die Box, danach der Pagebrowser und dann das Ergebnis augegeben. Die Reihenfolge kann man nicht geeinflussen, man kann keine Wraps um die Bereiche machen und man kann sie nicht ausblenden, um irgendwann die indexed_search nochmehr zu zerstückeln (z.B. Suchbox in Spalte 1, Ausgabe in Spalte 2 und Pagebrowser in Spalte 3).

2 Kommentare

  1. lars

    joa schönes script….nur leider werde ich nur auf die seite mit dem searchplugin weitergeleitet, ohne das mir ergebnisse angezeigt werden…?

    die suche über das plugin läuft ohne probleme….irgend eine idee?

    benutzt TYPO3 4.2.1 mit der neuesten indexedsearch

    lars

  2. natalia

    hmmm, schwierig. Das Feld muss genauso heißen, wie die genierte Suchbox vom Plugin. Da kannst du mal nachschauen, ob das Feld nicht irgendwie umbenannt worden ist, wobei ich ja auch mit der TYPO3 Version arbeite.
    Dann gibt es zum Testen die Brutalo-Methode, da schreibt man einfach debug($_POST) irgendwo rein z.B. in die main Funktion der indexed_search, um zu schauen, was gesendet wird.