MagpieRSS anpassen: Fehler beheben – Quellcode verbessern
Auf der Suche nach einem RSS-Reader, den ich in eine Homepage einbauen kann, bin ich auf MagpieRSS gestoßen. Wichtig war mir auch, dass Caching unterstützt wird, um den Server zu entlasten.
Bereits bei der nicht sehr schweren Installation hatte ich die erste Fehlermeldung
Warning: MagpieRSS: fetch_rss called without a url in
Die Angabe der Feed-URL sollte deswegen angepasst werden, am besten die Get-Funktion nicht verwenden. Wozu steht die überhaupt in der Vorlage? Statt
$url = $_GET['http://www.froos.de/blog/feed/'];
sollte
$url = "http://www.froos.de/blog/feed/";
verwendet werden.
Der Feed wird jetzt angezeigt, die Formatierung muss noch angepasst werden. Der Markup Validation Service wirft nämlich noch einige Fehler. Das liegt daran, dass zum einen ein neuer Absatz mit dem p-Tag erstellt wird, aber nicht mehr geschlossen und zum anderen daran, dass die Links nicht richtig erstellt werden. Beides lässt sich durch drei kleine Änderungen am Quelltext beheben.
require_once('magpierss/rss_fetch.inc'); $url = "http://www.froos.de/blog/feed/"; $rss = fetch_rss( $url ); echo "Channel Title: " . $rss->channel['title']; echo "<ul>"; foreach ($rss->items as $item) { $href = $item['link']; $title = $item['title']; echo "<li><a href=\"$href\">$title</a></li>"; } echo "</ul>";
In Zeile 5 habe ich . “<p>” gelöscht, erstelle also keinen neuen Absatz.
In Zeile 10 habe ich je ein \” in den Link eingefügt, damit dieser konform wird.