Bewertung: 5.0 von 7 Benutzern
klaus_b
Nach der letzten Aktualisierung auf Blogengine.NET 1.5.0.9 und der anschließenden Prüfung mit den verschiedenen W3C-Validatoren, wurde der RSS-Feed meines Blog nicht mehr als valide erkannt. Der Feed.Validator mokierte einen falschen Inhalt im Author-Tag eines jeden Artikel. Der W3C Feed-Validator verlangt hier eine gültige Emailadresse als Inhalt. Bis zur Blogengine.NET Version 1.4.5 wurde der RSS-Feed meines Blog immer als valide erkannt. Also musste sich das Problem mit dem Update auf die Version 1.5 eingeschlichen haben. Und tatsächlich; Beim direkten Vergleich der Klasse SyndicationGenerator aus dem Blogengine.Core Namensraum wurde der kleine aber gravierende Unterschied deutlich.
In der statischen Methode WriteRssItem(XmlWriter writer, IPublishable publishable) wird dem author-Element der Namen des Beitragsautor mitgegeben und keine Emailadresse.
Also brauch hier nur die betreffende Zeile wie im folgenden Listing ersetzt zu werden und der RSS-Feed wird wieder als valide erkannt.
//------------------------------------------------------------
// Write optional channel item elements
//------------------------------------------------------------
// canged to pass the W3C feed test
writer.WriteElementString("author", BlogSettings.Instance.Email.Replace("@", ".nospam@nospam.") + " (" + publishable.Author + ")");
//writer.WriteElementString("author", publishable.Author);
Mir ist nicht ganz klar warum diese Änderung erfolgte. Ein Grund könnte die bessere Unterstützung für Blogs mit mehreren Autoren sein. Doch dann sollte, um einen validen Rss-Feed zu erzeugen, die Email des jeweiligen Autor aus dem Benutzerprofil verwendet werden.
Wenn ihnen der Artikel gefallen hat oder er für sie hilfreich war, bitten "kicken" sie ihn.
