RSS Typo3, tt_news, AMENU und die zukünftigen News

verfasst 24.05.2010 von MediaCix | kurze URL: /t999 | 1 Kommentare

Typo3, tt_news, AMENU und die zukünftigen News

Das CMS Typo3 kann zwar allerhand, aber dafür haben auch die Extension (Erweiterungen) so ihre Macken. Darunter zählt auch das News-System TT_NEWS. So gibt es fehlerhafte Darstellungen beim AMENU (Anzeige der News im Monat). Hier werden zum Beispiel zukünftige News gar nicht erfasst und Dargestellt. Schreibt man im Monat Mai bereits News-Termine für Juni oder Juli werden diese erst dargestellt, wenn der jeweilige Monat erreicht ist. Natürlich ist das bei einen News-System sinnvoll, aber viele nutzen das TT_News auch für andere Möglichkeiten. Nun wollte ich auch zukünftigen News bei AMENU darstellen und bin erst nach Stunden in der Datei class.tx_ttnews.php fündig geworden.

Wie oben schon erwähnt liegt das Problem in der Datei class.tx_ttnews.php, welche im EXT-Ordner von TT_News zu finden ist. Die Ursache für die fehlerhafte Darstellung von zukünftigen News ist die Funktion displayArchiveMenu(), die bei etwas Zeile 1200 zu finden ist. Hier wird der Bereich durch ein MIN und MAX-Datum bestimmt.

» PHP
<?php
// Finding maximum and minimum values:
$row $this->getArchiveMenuRange($selectConf);
if (
$row['minval'] || $row['maxval']) {
...
}
?>


Egal welche News in der Zukunft liegen, die Variable $row['maxval'] ist immer das aktuelle Datum. Und genau das ist der Grund dafür, dass bei AMENU zukünftige News nicht angezeigt werden. Eine Abhilfe besteht nur darin genau an dieser Stelle das MAX-Datum der aktuellsten News zu ermitteln. Ein Vorschlag wäre dieser:

» PHP
<?php
$maxval_query 
"
 select * from tt_news 
 where deleted = 0 AND hidden = 0 
 ORDER BY datetime DESC LIMIT 1
 "
;
$maxval_res mysql_query($maxval_query);
$maxval_range mysql_fetch_assoc($maxval_res);
$row['maxval'] = $maxval_range['datetime'];
?>


Natürlich ermitteln diese Zeilen das MAX-Datum von allen News. Wer seine News noch in Kategorien eingeteilt hat sollte das Query erweitern. Wichtig ist auch, dass gelöschte oder verborgene News nicht mit erfasst werden.

bisherige Kommentare

1
24.02.2011
zabinetta meint dazu:
hm, hab ewig versucht das so hinzukriegen, und es hat nicht funktioniert. als ich schon fast aufgegeben habe, hab ich nochmal einen anderen Ansatz probiert, und der ging.
habe tt_news 3.0.1
gezogen hat am ende eine dieser beiden Typoscripteinstellungen:
plugin.tt_news.amenuEnd = -300 days
plugin.tt_news.datetimeDaysToArchive = -300

neuen Kommentar schreiben

Ich möchte automatisch eine E-Mail bei neuen Kommentaren erhalten.



Themen mit ähnlichen Inhalten


Tags zum Beitrag

typo3     tt_news     amenu     class.tx_ttnews.php