Zum Inhalt springen

Ausblendung des Texts related News

Erstellt am 5. Dezember 2005 · 14 Antworten · letzte Antwort am 20. Dezember 2005

Tags: tt_news, Frage, TYPO3 3

michaels ·

Moin,

Unter den News steht jedesmal "Link" bzw. "in Verbindung stehende Nachrichten".

Aus optischen Gründen möchte ich dies für den Fall unterdrücken, dass keine Einträge in diesen Feldern vorhanden sind. Das ist bei nämlich der Regelfall.

Danke,
Michael

michaels ·

Hallo Georg,

damit ist mir noch nicht viel geholfen. Ich bin ja auf der Suche nach der Schraube, an der man drehen muss.

Was mir vorschwebt ist, dass das Label im Frontend nur erscheint, wenn ich im Backend in die entsprechenden Felder etwas eingetragen habe.

Wer kann mich auf die richtige Spur bringen?

Danke,
Michael

stefan s ·

Die Zauberformel 😉 lautet 'if.isTrue.field = xxx'.

 displaySingle { 
     links_stdWrap {
       if.isTrue.field = links
     }

     related_stdWrap {
       if.isTrue.field = related
     }
  }

Ins Setup.

michaels ·

Sieht aus, als wär das genau das Richtige. Leider tat sich nichts, als ich es ins Setup eingetragen habe.
Habe ich da noch etwas übersehen?

stefan s ·

Meine Glaskugel hat mittwochs immer frei...

Poste doch mal deinen News-relevanten TS-Code.
Wenn du meinen Code-Schnipsel einfach so kopiert hast, müsste dein Code so aussehen:

plugin.tt_news {
...
      displaySingle {
           ...
           links_stdWrap {
             if.isTrue.field = links
           }
           related_stdWrap {
             if.isTrue.field = related
           }
        } 
...
}
michaels ·
# Das News-Plugin konfigurieren
plugin.tt_news {
     pid_list >
     pid_list = 13
     PIDitemDisplay = 13
     # Einschub
     displaySingle { 
        links_stdWrap {
           if.isTrue.field = links
           }
        related_stdWrap {
           if.isTrue.field = related
           }
        } 
     # Ende des Einschubs
     }
stefan s ·

Benutzt du noch tt_news 1.0.4? Zumindest deutet 'PIDitemDisplay' darauf hin. Wenn du T3 3.7.0 oder höher im Einsatz hats, installier dir die aktuelle tt_news-Version (2.2.24, glaube ich). Ich weiss nämlich nicht, ob mein Lösungsvorschlag in 1.0.4 schon funktioniert oder ob das erst später implementiert wurde.

Zur Sicherheit ne dumme Frage:
In deinem news.tmpl steht aber nicht 'Links' bzw. 'In Verbindung stehende Nachrichten' vor den entspr. Markern?

michaels ·

Ja, ich verwende tt_news 1.0.4 und t3 3.8.1. Wenn ich wie von dir empfohlen ein Update von News mache, was für Risiken gehe ich da ein? Darf man das so einfach einspielen, ohne irgend etwas "abzuschießen"?

Zur 2. Frage: Vor dem Marker ### NEWS_LINKS### steht z.B. Links:

stefan s ·

erstmal zur eigentlichen Frage: hehe. Sorry, musste sein.

Wenn in deiner news.tmpl schon 'Links:' vor dem Marker steht, erscheint das immer. Da kannst du mit TS natürlich nix ausbügeln! Also weg damit! Es sollten nach Mgl. nur dei Marker da stehen, zumindest, was diese sporadisch befüllten Marker betrifft.

Im TS-Setup kannst du dann für diese alles andere festlegen.

Bsp:

plugin.tt_news {
   _LOCAL_LANG.de {
      more = [weiterlesen...]
      backToList = zurück
      textRelated = In Verbindung stehende Nachrichten:
   }
#_LOCAL_LANG.de ist in Datei pi/locallang.php vorbelegt, also hier nur ggf. abändern
  newsFilesHeader_stdWrap.wrap = <dt> | </dt>
  displaySingle { 
     links_stdWrap >
     links_stdWrap {
       wrap = <dl><dt><b>Links:</b></dt>|</dl>
       if.isTrue.field = links
     }
     addInfo_stdWrap.wrap >
     linksItem_stdWrap > 
     linksItem_stdWrap.wrap >
     linksItem_stdWrap.wrap = <dd>|</dd>
     linksHeader_stdWrap.wrap > 

     related_stdWrap {
       if.isTrue.field = related
     }
  }#single
}#plugin.tt_news

Wie bereits erwähnt, das funzt auf jeden Fall für ne aktuellere News-Version. Bei 1.04.: keine Ahnung, kann mich nicht mehr erinnern...

Update tt_news:
1. wenn, dann neue Version lokal installieren. dann bleibt sie auch bei nem T3-Update erhalten. Ausserdem greift die neue Version dann nur in dieser Installation (Vorteil, da sich einiges ändert -> siehe 2.)
2. werden deine News dann erstmal nicht angezeigt! denn
3. im TS musst du im Punkt 'Include static (from extensions):' noch was auswählen (das siehst du dann schon - aber nur 1 von den angebotenen 3!)
4. PIDitemDisplay heißt jetzt singlePid (oder singlePID?)

Im 70-Seiten-Manual ist das aber alles bestens erklärt. Also erstmal in Ruhe in ner Test-T3-Installation ausprobieren.

Die aktuellen Versionen sind letztlich wesentlich komfortabler zu bedienen

michaels ·

Danke,

jetzt bin ich schon ein ganzes Stück weiter. Als Neuling beginnen sich mir langsam die Zusammenhänge zu erschließen.

Im Template habe ich jetzt die Vorgaben gelöscht und sie sind damit auch aus den Nachrichten verschwunden. Habe ich jetzt aber etwas unter Links eingetragen, ergibt sich z.B. folgende Ausgabe:
<dl><dt>Links:</dt>Ablaufplan</dl>

Diese Tags werden also nicht ausgewertet, sondern als Text ausgegeben.

stefan s ·

Wenn du den TS-Code aus meinem letzten Post komplett übernommen hast, müsste eigentlich da stehen:
<dl><dt>Links:</dt><dd>Ablaufplan</dd></dl>

Das ist dann auch syntaktisch korrekt: zu einer definition list (dl) gehören definition type (dt) und definition data (dd).

michaels ·

Wenn ich folgenden Code eingebe,

wrap = <dl><dt><b>Links:</b></dt><dd>|</dd></dl>

zeigt das Frontend
<dl><dt>Links:</dt><dd>Ablaufplan</dd></dl>

Dh. nur das Bold-Tag wird richtig ausgewertet. Ich habe mir deinen Code mal in einer HTML-Datei angesehen und weiß jetzt, wie es aussehen sollte. Woran habert es wohl?

stefan s ·

entweder im Setup:

plugin.tt_news.general_stdWrap.parseFunc.allowTags = dl,dt,dd,xxx

xxx - Liste aller anderen tags, die du zulassen möchtest

oder:

plugin.tt_news.general_stdWrap.parseFunc < tt_content.text.20.parseFunc

, wenn du bei

tt_content.text.20.parseFunc

bereits dl, dt, dd zugelassen hast

michaels ·

Es ist vollbracht.

Das war der missing link. Dieses parseFunc ist ja eine interessante Geschichte. Da muss ich die Möglichkeiten weiter ausloten. Aber eines ist mir noch unklar:

Zuvor hat ich schon eine Reihe von Tags im Text der News verwendet. Nur dl,dt und dd wurden nicht ausgewertet. Wieso unterscheidet das Typoskript da zwischen Tags, wie ul im Gegensatz dl?

Benutze ich jetzt parseFunc, muss ich jetzt alle Tags aufzählen, damit sie wirken. Das gibt eine lange Liste. Gibt es auch einen Weg alle zuzulassen und dann eine Negativliste zu definieren?