Fehler im RSS Feed von T3Blog
Nachdem Lars mich darauf aufmerksam gemacht hat, dass mein RSS Feed nicht geht, hab ich mich auf die Suche nach der Ursache gemacht. Zuerst dachte ich, der Feed sei komplett leer, hab dann aber gesehen, dass sehr wohl XML generiert wird, also musste darin was falsch ein.
Mit Hilfe eines RSS Validierers hab ich mir das XML vorgenommen und festgestellt, dass die '&' im Link zu den einzelnen Beiträgen nicht richtig codiert werden.
Ein Ersetzen des '&' durch ein kodiertes & (#38) brachte schließlich den Erfolg, jetzt klappt die Darstellung der RSS Feeds.
Dieser Fehler sollte in zukünftigen Versionen von T3Blog behoben werden!
- 3 Kommentare



RSS t3blog
Hi Du,
ich sehe, dass bei Dir die RSS-Feeds von t3blog funktionieren. Bei mir kommt immer beim Klick auf den Link ein XML-Fehler
"XML-Verarbeitungsfehler: Kein Element gefunden"
Hattest Du das auch? Was hast Du im TS-Constant und TS-Setup eingetragen, damit es läuft?
Grüßle
Matthias
RSS t3blog
Hallo Matthias,
ich habe nix in die Constants und Setup eingetragen, sondern Änderungen im Quellcode vorgenommen. Dabei habe ich an den Stellen, an denen im Link ein "&" erzeugt wurde ein "&" draus gemacht, jetzt geht es. Die Links werden jetzt folgendermaßen dargestellt:
http://www.kaktusteam.de/index.php?id=mimis_blog&tx_t3blog_pi1[blogList][year]=2009&tx_t3blog_pi1[blogList][month]=02&tx_t3blog_pi1[blogList][day]=14&tx_t3blog_pi1[blogList][showUid]=9
Davor sah das so aus *glaub*:
http://www.kaktusteam.de/index.php?id=mimis_blog&tx_t3blog_pi1[blogList][year]=2009&tx_t3blog_pi1[blogList][month]=02&tx_t3blog_pi1[blogList][day]=14&tx_t3blog_pi1[blogList][showUid]=9
und daran hat sich wohl der RSS Validierer von Firefox gestört.
Im Quelltext sieht das so aus (/typo3conf/ext/t3blog/pi1/widgets/rss/class.rss.php):
case 'uid':
$newDate = $this->getDate($value);
$postid = TYPE == 'Comments' ? $this->getFkPostID($value) : $value;
$day = strftime('%d', $date);
$month = strftime('%m', $date);
$year = strftime('%Y', $date);
$link = tslib_pibase::pi_getPageLink(t3blog_div::getBlogPid(), '',
array('tx_t3blog_pi1[blogList][year]' => $year,
'tx_t3blog_pi1[blogList][month]' => $month,
'tx_t3blog_pi1[blogList][day]' => $day,
'tx_t3blog_pi1[blogList][showUid]' => $this->conf['feedItemLinkPrefix'].$postid));
$link = str_replace('&', '&', $link);
return '' .(stripos('http://',t3lib_div::getIndpEnv('HTTP_HOST'))?'':'http://').
t3lib_div::getIndpEnv('HTTP_HOST').'/'.$link .
#tslib_pibase::pi_getPageLink(t3blog_div::getBlogPid(), '',
#array('tx_t3blog_pi1[blogList][year]' => $year,
# 'tx_t3blog_pi1[blogList][month]' => $month,
# 'tx_t3blog_pi1[blogList][day]' => $day,
# 'tx_t3blog_pi1[blogList][showUid]' => $this->conf['feedItemLinkPrefix'].$postid)).
'';
#''.(stripos('http://',t3lib_div::getIndpEnv('HTTP_HOST'))?'':'http://').
#t3lib_div::getIndpEnv('HTTP_HOST').'/'.
#tslib_pibase::pi_getPageLink(t3blog_div::getBlogPid(), '',
#array('tx_t3blog_pi1[blogList][year]' => $year,
# 'tx_t3blog_pi1[blogList][month]' => $month,
# 'tx_t3blog_pi1[blogList][day]' => $day,
# 'tx_t3blog_pi1[blogList][showUid]' => $this->conf['feedItemLinkPrefix'].$postid)).'
# ';
break;
Hoffe, das hilft dir weiter!
Viele Grüße
Mimi
Danke
Danke schön. Hat mir geholfen. Hab Dich auch lobend in meinem eigenen Eintrag erwähnt.