Zum Inhalt springen

Problem mit Suchfunktion von tt_news

Erstellt am 16. September 2005 · 7 Antworten · letzte Antwort am 29. Juni 2006

Tags: tt_news, Frage

SigiM ·

Hi Leute,

ich bin gerade dabei eine Suche für meine News einzubauen. Ich möchte dazu die SEARCH-Funktion von tt_news verwenden. Wenn ich diese suche über das Backend einbinde klappt auch alles super. Nun möchte ich allerdings, das das Suchfeld auf allen Seiten zu sehen ist. Deshalb muß ich es über mein TS-Template einbinden.

temp.news = COA
temp.news < plugin.tt_news
temp.news.templateFile = fileadmin/news_template.tmpl
temp.news {
recursive >
recursive = 2
pid_list = 33
code >
code = SEARCH
}

und

marks.SEARCH < temp.news

Das Problem ist, das ich keine Ausgabe erhalte. Hat jemand ne Ahnung was ich villeicht vergessen habe?

Gruß, Sigi

SigiM ·

Ok, hab ein Problem gelößt, allerding kommt gleich das nächste 🙂
Mein alter Code hat nicht getan, weil

pid_list >

noch eingefügt werden mußte.
Er sieht also im Moment so aus.

temp.news = COA
temp.news < plugin.tt_news
temp.news.templateFile = fileadmin/news_template.tmpl
temp.news {
code >
code = SEARCH
recursive >
recursive = 2
pid_list >
pid_list = 33
}

Nun möchte ich aber das das Suchergebnins auf einer anderen Seite erscheint. Gibt es da eine Möglichkeit das Ergebnis umzuleiten?

Gruß, Sigi

droptix ·

Jepp, ebenfalls interessiert. Habe meine Suche unter der Navigation (danke SigiM für die Schnellanleitung, brauchte es grade) ebenfalls mittels Marker eingebunden, aber die Ergebnisse sollen dann in der 'Normal' Spalte als neue Seite ausgegeben werden.

droptix ·

Es lässt sich einfach eine "searchPid" einstellen (Seite, auf der die Suchergebnisse angezeigt werden sollen).

Dort werden sie dann auch wirklich angezeigt, aber trotzdem tauchen die Ergebnisse zusätzlich unter meinem Suchformular unter der Navigationsleiste auf (natürlich ist da nur extrem schmal Platz verfügbar). Außerdem soll auf dieser Seite nicht noch einmal das Such-Formular angezeigt werden -> dann sieht man es ja zwei Mal: einmal unter meiner Navi und dann auf der Ergebnisseite.

Template Setup:

temp.newssearch < plugin.tt_news
temp.newssearch {
    # Vom Typ SEARCH
    code >
    code = SEARCH
    # Keine Ergebnisse zu Beginn
    emptySearchAtStart = 1
    # Wo die Ergebnisse angezeigt werden sollen
    searchPid = 9
}

Und dann im default PAGE Object:

NEWSSEARCH < temp.newssearch
droptix ·

Doch noch eine (Not)Lösung:

Um die Suchergebnisse unter meiner Navi auszublenden, verwende ich CSS. Voraussetzung wäre allerdings, dass als News-Template das CSS basierte und nicht das Tabellen basierte verwendet wird. Denn dann kann man einfach in der Datei 'tt_news_v2_styles.css' folgendes hinzufügen, da es nicht existiert:

#content .news-search-form {
    display:none;
}

#left .news-list-container, #left .news-search-emptyMsg {
    display:none;
}

... wobei #content mein <div> Container für den Inhalt (Spalte 'Normal') und #left der für meine Navi ist. Das versteckt ein zweites Such-Formular auf der Ergebnisseite und die Ergebnisse und den Spruch "Bitte geben Sie einen Suchbegriff ein." unter meiner Navi.

:p

Übrigens:

searchPid = 5

bedeuted bei mir, dass die Seite mit der ID Nummer 5 eine Seite vom Typ 'nicht im Menü' ist und als Seiteninhalt das News-Plugin mit dem CODE 'SEARCH' enthält. Mit einer völlig leeren Seite (ohne News-Plugin) hat es bei mir nicht funktioniert und keine Suchergebnisse angezeigt.

ee547 ·

Hallo Leute!

Wir setzen auch die EXT. tt_news & indexed_search ein.

Folgendes Problem: wenn wir nach einem bestimmten Wort suchen, bekommen wir
mehrere Ergebnisse vom gleichen
News_record zurück.

d.h. wenn dieses Such-Wort, also
im news_record steht und zusätzlich auf einem anderen news_record als "related news" (in Verbindung stehende News)steht, so wird in der Suche, als Ergebnisse der News-Eintrag bis zu 9 mal angezeigt.
...(Hätten wir noch mehr "related news records" würde wir noch viel mehr Ergebnisse haben, schätze ich) .......

Gibt es hier Möglichkeiten die "related News" nicht zu indexieren

(bin noch recht talentfrei was Typo3/TS angeht)

kka ·
droptix schrieb

Doch noch eine (Not)Lösung:

Um die Suchergebnisse unter meiner Navi auszublenden, verwende ich CSS. Voraussetzung wäre allerdings, dass als News-Template das CSS basierte und nicht das Tabellen basierte verwendet wird. Denn dann kann man einfach in der Datei 'tt_news_v2_styles.css' folgendes hinzufügen, da es nicht existiert:

Hallo Typo3-ler,

habe schon viel hier gelesen und profitiert. Möchte nun nach langem Probieren und Suchen für das o.g. eine Lösung anbieten, die ohne CSS auskommt.

Also, wenn auf allen Seiten die News-Suche-Formular angezeigt werden soll,
zeigt man das Ergebnis der Newssuche auf einer anderen Seite, die ausserhalb
des Seitenbaumes liegt an.

Im TypoScript kann man dann per Conditional bestimmen, auf welchen Seiten
das Suchformular nur angezeigt wird ( nämlich auf fast allen ), und
auf welcher einzelnen Seite das Suchformular nicht mit angezeigt wird,
damit das Ergebnis nur einmal da ist, und nicht noch eine Kopfzeile der
Webseite verunstaltet oder unterhalb der Navi doppelt angezeigt wird.

Lösung:

[PIDinRootline = 72, 76 ]
# PID Angabe bedeutet hier: fuer genannte Seite und alle Unterseiten
#    76 ist MENU_OBEN
#    72 ist MENU_LINKS
# NEWSSUCHE ist Marker aus dem HTML-Template fuer alle Seiten, ausser auf Ergebnisseite 543, die nicht Unterseite von 76 oder 72 ist
seite {
      10.marks.NEWSSUCHE  = COA
      10.marks.NEWSSUCHE  < plugin.tt_news
      10.marks.NEWSSUCHE .templateFile = typo3/ext/tt_news/pi/news_template.tmpl
      10.marks.NEWSSUCHE  {
      code >
      code = SEARCH
      recursive >
      recursive = 99
      pid_list >
      pid_list = 72
      searchPid >
      searchPid = 543
      PIDsearch >
      PIDsearch = 543
      } 
 }
[PIDinRootline = 543 ]
# bei Seite 543 mit Suchergebnis den Marker einfach mit leerem Inhalt versehen

seite{
      10.marks.NEWSSUCHE  = TEXT
      10.marks.NEWSSUCHE.data = "   "
}

[global]
# Ende der Conditionals

Hoffe, das hilft vielleicht dem Einen oder der Anderen.

Freudigen Gruss in die Runde
Thorsten