Zum Inhalt springen

Index Search nur in bestimmten Bereich / Sektion

Erstellt am 14. Mai 2004 · 3 Antworten · letzte Antwort am 3. Juli 2006

Tags: Frage

MrTom ·

Der Baum meiner Seite hat zwei Bereiche.
Im ersten ist die Webseite mit dem "normalen" Inhalt.
Der zweite Baum nennt sich "intern". Wie der Name schon sagt, liegen dort Seiten, wie z.B. Suchen, Temp, Systemfolder etc...

root
  Webseite
     Unterseiten
   intern
     interne Seiten

Hab zwar ausgeschaltet, das dort nicht mehr gesucht wird. Allerdings gibt es nun bei mir einen Schönheitsfehler.

Index Search bring immer er hat in folgender Sektion gesucht und gefunden. Was natürlich etwas verwirrend ist, da es ja für den Webseitenbesucher nur eine gibt.

Suche nach 'Sasser'

Zeige Ergebnisse 1 bis 2 von insgesamt 2 in 1 Bereich:

Unternehmen (2 Seiten)
Seite 1

Wie man an diesem Beispeil sieht, ist diese Ausgabe etwas sinnfrei. Es wird ja nie mehr als in einem Bereich etwas gefunden!

Nun hab ich was gefunden, wo ich zum einem nicht sicher bin ob es damit weg geht und auch nicht wie es funktioniert.

plugin.tx_indexedsearch._DEFAULT_PI_VARS.sections=

Leider findes man dazu nicht sehr viel.

Kann man irgendwie die Unterteilung in Sektionen in der "Bildschrimausgabe" ausschalten?

Unbekannter Benutzer ·

Wenn man die erweiterte Suche anklickt und in den Code schaut, gibts einiges zu entdecken ... hiervon kann man dann auch einige Einstellungen für seine Suche übernehmen, wenn man - wie ich - ein eigenes Formular für die Suche baut:

#Index Suche / eigenes Formular
  temp.indexSearch = TEXT
  temp.indexSearch {

    # Sprachparameter übergeben
    data = global:L
    insertData = 1

    # die hidden Felder lassen sich gut aus der "erweiterten Suche" / Code ableiten
    wrap (
      <form name="searchform" method="post" action="{$suchergebnis}.html?&L=|">
        <div class="title">SUCHE</div>
        <div><input type="text" name="tx_indexedsearch[sword]" class="input" value="..." onfocus="document.searchform.elements[0].value='';" onblur="if(!document.searchform.elements[0].value) document.searchform.elements[0].value='...';" /></div>
        <div><input type="image" name="tx_indexedsearch[submit_button]" class="submit" src="fileadmin/template/main/images/m_{$einrPraefix}suche.gif" alt="Suchen" /></div>
        <input type="hidden" name="tx_indexedsearch[_sections]" value="rl2_37" />
        <input type="hidden" name="tx_indexedsearch[pointer]" value="0" />
        <input type="hidden" name="tx_indexedsearch[ext]" value="0" />
        <input type="hidden" name="tx_indexedsearch[extResume]" value="0" />
        <input type="hidden" name="tx_indexedsearch[group]" value="flat" />
      </form>
    )
  }

Über _sections kann man die Ebene bestimmen, hier der Code aus meiner Seite:

<option value="0">Ganze Website</option>
                      <option value="-1">Nur diese Seite</option>
                      <option value="-2">Homepage + Ebene 1</option>
                      <option value="-3">Ebene 2 und tiefer</option>
                      <option value="rl1_1403" SELECTED>Ebene 1: Stiftung</option>
                      <option value="rl1_36">Ebene 1: Einrichtungen</option>
                      <option value="rl1_837">Ebene 1: Partner</option>
                      <option value="rl1_35">Ebene 1: Schulen</option>
                      <option value="rl1_1403,36,837,35">Alle Seiten auf Ebene 1</option>

rl2_37 aus meinem Form oben ist dementsprechend die 2. Ebene, PID 37 ... und die kann man ja über ein ext. Template oder sonst wie für einzelne Seitenäste festlegen ...

ebenso auch über "tx_indexedsearch[group]" und "tx_indexedsearch[extResume]" das Aussehen der Ergbnisseite ... experimentiere einfach etwas rum!

todo ·

Hallo MrTom,

Hab zwar ausgeschaltet, das dort nicht mehr gesucht wird.

Wie hst Du das denn geschafft?

Ciao
ToDo

nullzeit ·

Hi todo,

vorweg mal n hinweis: dies bezieht sich auf die indexed_search die bei typo3 version 4 final dabei ist (soweit ich das nachvollziehen kann).

und falls es dich noch interessiert:

in der indexed_search im ordner liegt ein file das heisst
"indexed_search.tmpl" dort musst du -nach dem form tag- sowas hier in der art einfügen:

<input type="hidden" name="tx_indexedsearch[_sections]" value="rl2_37" />

wichtig ist hierbei der inhalt des value="":

rl2 steht für den level der site (also ebene 2 in dem fall, root wäre rl0)
und der rest ist ,ein trennzeichen der unterstrich "_" und die PageId (PID)
der seite bei der die suche starten soll, ist doch ganz simpel.

page_cache und frontend_cache löschen, browser reloaden und guggn! 🙂

greetz, Chris