Zum Inhalt springen

3 verschiedene News-Ansichten

Erstellt am 17. Oktober 2005 · 11 Antworten · letzte Antwort am 19. Oktober 2005

Tags: tt_news, Frage

droptix ·

Auf meiner Startseite möchte ich drei unterschiedliche News-Ansichten machen:

  • • eine Top-Meldung (LATEST aus einer best. Kategorie)
    • 5 Meldungen mit Bild und Teaser (1-5 neueste aus LIST)
    • 10 Meldungen ohne Bild, nur Überschrift (6-15 neueste aus LIST)

Mir stellt sich die Frage, wie ich drei verschiedene Ansichten machen kann. Zwei gingen ja noch, weil ich LIST und LATEST verwenden könnte.

LATEST soll mir nur die letzte aus der Kategorie "Top-Meldung" anzeigen. die anderen sollen Querbeet in chronologischer Reihenfolge kommen, aber eben die 5 aktuelleren davon mit Bild und Teaser-Text, die letzten 10 nur mit Überschrift.

Dabei darf die News aus "Top-Meldung" nicht noch einmal in LIST auftauchen (Experimente mit der Option 'excludeLatestFromList = 1' scheiterten bislang).

utiuti ·

Ich bin auch nicht so der News Guru, und noch ziemlich Frisch in Typo3.
Hoffe ich habe dich richtig verstanden !

3 Kategorien -> füge doch einfach 2 Mal das Plugin News auf deine Startseite ein (oder 3x wie du willst)

Wenn die Kategorie Top-Meldungen in der dritten Ansicht nicht erscheinen soll, dann nimm diese Kategorie halt raus aus dieser Ansicht ?
Hört sich aber irgendwie zu einfach an. Habe bestimmt etwas falsch verstanden.

Vielleicht hilft's ja was 😉

just2b ·

Mein Vorredner war schon richtig!
möcht nur noch hinzufügen: kannst ja überall ein eigenes Template angeben, deswegen dürft das alles kein problem sein!

lg georg

droptix ·

@utiuti: Nicht ganz richtig verstanden. Es reicht nicht aus, dafür drei Kategorien anzulegen, auch deshalb weil meine News später in mehreren Kategorien gleichzeitig liegen werden.

Ich versuch das nochmal auf den Punkt zu bringen:

  • • Startseite zeigt 16 News
    • die 1. ist die Top-Meldung (LATEST)
    • News 2 bis 6 mit Bild und Teaser (LIST)
    • News 7 bis 16 nur Überschrift (LIST)
    • ein Redakteur bestimmt, welche News eine Top-Meldung ist, indem er sie zusätzlich zum Standard-Ressort (z.B. "Politik") in die Kategorie "Top-Meldung" legt
    • LATEST zeigt nur News aus der Kategorie "Top-Meldung", und zwar immer nur die aktuelleste (nur eine)
    • die darunter liegenden News kommen aus allen Kategorien
    • da die Top-Meldung zusätzlich in einer anderen Kategorie (dem eigentlichen Ressort) liegt, würde sie auch nochmal darunter angezeigt werden -> das darf nicht sein (dafür gibt es die Option "excludeLatestFromList", die ich aber noch nicht so wie ich brauch zum Laufen gebracht hab)
    • wenn nun aber am Morgen die Top-Meldung ein Zugunglück vom Vortag ist und am Nachmittag ein Flugzeug in die Twin-Tower fliegt, ändert sich die Top-Meldung -> das Zugunglück muss nun wieder unter der Top-Meldung mit auftauchen
    • die News 2 bis 16 sind chronologisch angeordnet
    • kommt eine neue News rein, verschieben sich alle um eins nach unten -> News 16 verschwindet, da nun News 15 deren Platz einnimmt und News 1 die neue ist -> deshalb kann ich die News nicht einfach nach Kategorien anzeigen, sonst müsste ich alle von Hand verschieben

Dass ich mehrere News-Ansichten gleich mit einem Seiteninhalt festlegen kann, das hab ich auch schon gemacht, aber die sehen dann natürlich alle gleich aus :-) weil alle auf dasselbe Template zurück greifen, dass ich im TS angegeben hatte.

Ihr meint sicher drei separate Seiteninhalte anlegen und jeweils ein anderes Template zuweisen. Gute Idee, nur:

Wenn ich dann im Reiter "Template" jeweils ein anderes Template angebe, überschreibt das dann die Einstellung, die im Haupt-Template meiner Seite steht? Ich probier das einfach mal...

Auf jeden Fall der einfachste Ansatz, wenn das so klappen würde. Ich geb bescheid, ob das hinhaut. Danke soweit!

droptix ·

Jepp es geht schonmal. Wenn ich im Reiter "Template" explizit eine andere Datei angebe als im Haupt-Template meiner Seite, dann wird das aus dem Haupt-Template quasi überschrieben und stattdessen das angegebene verwendet.

Fein soweit. Ich habe es in einen eigenen <div> container eingebettet und kann es nun auch anders über CSS formatieren. 😃

Nächste Hürde:

Momentan zeigen die zwei LIST-Ansichten noch dasselbe an, weil beide ohne Rücksicht auf die Zeit oder Anzahl ihrer angezeigten News Rücksicht nehmen.

Ich muss nun noch die erste LIST so einstellen, dass sie nur die 1. bis 5. News anzeigt. Und die zweite LIST (nur Überschriften) soll dann nur die 6. bis 15. News anzeigen, damit sich die Einträge nicht überschneiden.

Dazu gab es schonmal einen ähnlichen Thread, aber leider auch ohne Erfolgsausgang o.O

(Wie) Kann man die LIST-Ansicht zeitlich oder nach der Anzahl der zu zeigenden News-Beiträge eingrenzen?

droptix ·

Oh, sehr gut, das scheint schonmal zu gehen!

Hier eine Anleitung. Sucht dort nach "List StartId: Force LIST or LATEST to start from this item", um gleich zur richtigen Stelle zu kommen.

Frage dazu: Diese wunderbare Option kann man augenscheinlich nur anwenden, wenn man sich das News-Plugin mit TS zusammensetzt. Kann ich das nicht auch irgendwie auf meine Seiteninhalte legen oder wenigstens auf die Seite mit den Seiteninhalten?

Also ich habe "Startseite" mit einem LATEST- und den zwei LIST-Seiteninhalten. Die zweite List habe ich durch ein anderes Template ganz anders gestaltet. Nun soll auf die erste LIST die Option

listStartId=0
limit=5

und auf die zweite

listStartId=5
limit=10

Wie stelle ich das an?

utiuti ·

Muß mich hier leider Ausklinken. So vertraut bin ich mit der News Ext. noch nicht.

By the way:

Mach dich nicht verrückt, wenn du die Lösung nicht findest. Wenn die TopNews 2 Mal vorkommt ist das ja auch nicht soooo schlimm. Meistens findet man die Lösung sowieso erst wenn man etwas ganz anderes macht. :p

Viel Erfolg

droptix ·

Die Top-Meldung hab ich mittlerweile in der LIST-Ansicht weg bekommen. Die Option

excludeLatestFromList = 1

geht anscheinend nur, wenn man innerhalb einer Seite mindestens eine LATEST und eine LIST Ansicht als verschiedene Seiteninhalte (jeweils nur ein News-Plugin) einträgt.

Früher hatte ich aber nur einen Seiteninhalt und darin gleich LATEST und LIST untereinander aus den Objekten gewählt. Da ging's nicht.

Nun geht's 😃

Wenn ich es nun noch schaffen sollte, die "listStartId" und "limit" Einstellungen für einzelne Seiteninhalte zu setzen und nicht gleich für das gesamte News-Plugin, dann bin ich der Held :p

utiuti ·

Coole Sache

Rock on...

Wenn du fertig bist werden sich sicher einige Leute freuen, wenn du (wenigstens ein paar) Teile deines Codes postest.

Nur mal als Anregung. 😉

Mehr Tutorials für Deutschland !!!
Ähhh.. ..und den Rest der Welt. #giggle#

droptix ·

Das wird meine Diplomarbeit und die werd ich sicher als PDF der Community zur Verfügung stellen. Weihnachten 2005 ist das Ende geplant.

Das wäre dann der komplette Aufbau einer Seite mit speziellem Eingehen aus das News-Plugin (tt_news) und LDAP-Anbindung (eu_ldap).

Ist noch ein bissel was zu tun...

mstuebner ·
droptix schrieb

Das wird meine Diplomarbeit und die werd ich sicher als PDF der Community zur Verfügung stellen. Weihnachten 2005 ist das Ende geplant.

Hoffentlich nur der Abgabetermin und nicht gleich das Ende! ;-)

Bin schon gespannt am Warten, auch wegen LDAP etc.

droptix ·

Jetz hab ich erst die wirkliche Wirkung von

excludeLatestFromList = 1

erkannt #evil#

Ich dachte, dass diese Einstellung alle Einträge aus der LIST-Ansicht entfernt, die bereits in der LATEST-Ansicht vorkommen, um Dopplungen zu vermeiden.

Wenn ich also eine LATEST-Ansicht mit den drei aktuellsten Meldungen (unabhängig von der Kategorie) habe, sollen diese drei in der darunter liegenden LIST-Ansicht nicht noch einmal auftauchen.

Diese Annahme ist falsch. Sie macht nix weiter als die aktuellste/neueste Meldung aus der LIST-Ansicht zu verbergen, um sie ggf. in einer separaten LATEST-Ansicht einzeln anzuzeigen. Also wird immer nur eine News – und zwar die letzte – der LIST-Ansicht "abgeschnitten". Nicht mehrere …

Scheiße! Sorry, dass musste ich grad mal loswerden … 😢 Hier nochmal die simple PHP-Anweisung dafür, die das belegt:

// exclude news-records shown in LATEST from the LIST template
if ($theCode == 'LIST' && $this->conf['excludeLatestFromList'] && !$this->piVars[$pointerName] && !$this->piVars['cat']) {
    if ($this->config['latestLimit']) {
        $selectConf['begin'] += $this->config['latestLimit'];
        $newsCount -= $this->config['latestLimit'];
    } else {
        $selectConf['begin'] += $newsCount;
        // this will clean the display of LIST view when 'latestLimit' is unset because all the news have been shown in LATEST already
    }
}

–––––

Wo liegt jetzt dein Problem? werden sich einige jetzt fragen … Ganz einfach: Meine "Top-Meldung" ganz oben auf der Startseite ist nicht einfach nur die aktuellste Meldung des Tages, sondern die aktuellste aus einer ganz bestimmten Kategorie.

Warum? Weil der Chef-Redakteur selber bestimmen soll, welche Nachricht ihm am wichtigsten erscheint. Die Aktualität spielt dabei keine vordergründige Rolle. Zwei Flugzeuge im Twin-Tower könnte er z.B. für wichtiger halten als die Parteigespräche im Bundestag, obwohl diese zeitlich gesehen aktueller sind. Wenn der Chef-Redakteur der Meinung ist, dass eine bestimmte News zur Top-Meldung wird, weist er ihr zusätzlich die Kategorie "Top-Meldung" zu. Auf meiner Startseite wird dann ganz oben die neueste News aus dieser Kategorie angezeigt. Ich halte es für Blödsinn, wenn die Top-Meldung noch einmal in der Liste unten drunter erscheint.

Ooooh Mann, was für ein Tag #angry#