| Mini-Tutorial: die Sache mit der Feedausgabe bei EventList |
|
Kategorie: Tutorials | Geschrieben von Gerald Martin am Mittwoch, 29. September 2010 | 1434x gelesen Problem: Die Terminansicht wird korrekt angezeigt, die Ausgabe als Feed verlinkt aber nicht auf die entsprechenden Detailseiten der Einträge, sondern scheinbar wahllos auf andere (bereits abgelaufene) Termine. Bei einem aktuellen Projekt bin ich darauf gestoßen:
Als Ausgabe für Termine wird EventList (www.schlu.net) in der aktuellen Version 1.0.1 verwendet: Wie man am Link sehen kann, wird die Ansicht ("View") categoryevents verwendet. Aus dieser Ansicht kann eine Feedausgabe (RSS 2.0)erzeugt werden: Dieser Feed erzeugte ursprünglich die fehlerhaften Links. Um dem Problem auf die Spur zu kommen, war zuerst einmal Recherche angesagt. Im Bugtracker des Projekts auf joomlacode.org wurde ich schließlich fündig: joomlacode.org/gf/project/eventlist/tracker/?action=TrackerItemEdit&tracker_item_id=15844 Das bedeutet also, in den Views wird eine falsche Variable an den Link im Feed angehängt. Das muss korrigiert werden. Allerdings fiel im ersten Drüberfliegen auf, dass das im Bugtracker beschriebene View eventlist in der aktuellen EventList Version 1.0.1 bereits behoben ist. Also müssen evtl. andere Views geändert werden. Achtung: Bevor Änderungen an Dateien gemacht werden, sollte in jedem Fall das Verzeichnis /components/com_eventlist/ gesichert werden!
Im Verzeichnis /components/com_eventlist/ sehen wir mit der schön, wie das MVC-Prinzip klassisch umgesetzt wird. Alle Views liegen demzufolge /components/com_eventlist/views . Da aber nicht alle Views eine Feedausgabe erzeugen, betrifft es nur folgende zu überprüfende Dateien: /com_eventlist/views/categoryevents/view.feed.php /com_eventlist/views/day/view.feed.php /com_eventlist/views/eventlist/view.feed.php /com_eventlist/views/venueevents/view.feed.php /com_eventlist/views/venues/view.feed.php
Um es kurz zu machen, es betrifft lediglich noch zwei Dateien, die zu korrigieren sind: In beiden Dateien muss jeweils in Zeile 85 $row->id durch $row->eventid ersetzt werden, also: $link = 'index.php?option=com_eventlist&view=details&id='. $row->id; nach $link = 'index.php?option=com_eventlist&view=details&id='. $row->eventid;
Damit haben wir beide Feedausgaben korrigiert.
Powered by AkoComment Tweaked Special Edition v.1.4.6 |
||||||

Artikel kommentieren