29 Dez 2008 Core plugins in s9y 1.4

»Core plugins« sind die Ereignis- und Seitenleisten-Plugins, welche mit dem Kern von Serendipity ausgeliefert werden, also nicht nachträglich manuell oder via Spartacus-Plugin installiert werden müssen. Beginnend mit der Version 1.4 von s9y geben einige dieser Plugins anderen (besseren) HTML-Code aus, was zu Abweichungen in der Darstellung führen kann, falls das Template, welches man verwendet, auf diese Änderungen nicht vorbereitet sind. Sämtliche Templates, die mit s9y ausgeliefert werden, sind ab Version 1.4 natürlich bereits präpariert.

Die Änderungen betreffen die folgenden Plugins wie folgt:

serendipity_archives_plugin
wird nun als ungeordnete Liste (<ul>) ausgegeben
serendipity_authors_plugin
wird nun als ungeordnete Liste (<ul>) ausgegeben
serendipity_syndication_plugin
wird nun als ungeordnete Liste (<ul>) ausgegeben
serendipity_plugin_comments
Code etwas aufgeräumt (meine Notizen sind hier leider lückenhaft – ich meine, auch hier seien unnötige <br /> durch <div>-Verpackungen ersetzt worden)
serendipity_plugin_history
einzelne Textbausteine in <div> verpackt
serendipity_plugin_recententries
wird nun als Definitionsliste (<dl>) ausgegeben
serendipity_plugin_entrylinks
Inline-Styles und unnötige <br /> entfernt
diverse <div> in <span> umgewandelt
serendipity_plugin_shoutbox
unnötige <div> im Formular entfernt
unnötige <br /> entfernt, statt dessen Textbausteine in <div> verpackt

Die Anpassungen im CSS (normalerweise style.css des verwendeten Templates), die notwendig sein könnten, sind der style.css des Templates »Serendipity v2.3« (/templates/default/style.css) zu entnehmen. Dort findet man am Ende eine Liste der Änderungen, die man lediglich noch an das eigene Template anpassen muss.

Warum ist der neue Code nun »besser«? Nehmen wir beispielsweise das Plugin serendipity_archives_plugin: Es generiert eine Liste von Links zu bestimmten Abschnitten des Archivs des Blogs. Der semantisch korrekte Code dafür ist also eindeutig eine Liste, keine Ansammlung von über Zeilenumbrüchen getrennten Links. Das bedeutet, zur Auszeichnung des ausgegebenen Inhaltes wird das HTML-Element verwendet, welches dafür vorgesehen ist, keine Krücke.

29 Dez 2008 s9y 1.4 freigegeben

Knappe neuneinhalb Monate nach v1.3 wurde heute Version 1.4 der besten Blogengine der Welt freigegeben. Die Liste der Verbesserungen und neuen Features ist ellenlang, das Beste aber ist, dass es immer noch »Luft nach oben« gibt.

Unter anderem für mich ein »besonderer« Release, weil Serendipity nunmehr »ab Werk« Bulletproof als Template verwendet. Das BP-Entwicklungsteam hat eigens für diesen Zweck ein zusätzliches Colorset für BP gestrickt, welches den Look des alten Standardtemplates emuliert.

Mein persönliches Highlight in 1.4 aber sind die Veränderungen im generierten HTML-Code diverser Kernplugins (also der Plugins, welche mit Serendipity ausgeliefert werden) – nicht nur, aber zugegebenermaßen auch, weil das die Baustelle war, an der ich aktiv mitgearbeitet habe. Etliche Kernplugins liefern nun semantisch korrektes HTML aus, und es ist mein persönlicher Neujahrsvorsatz, in diesem Bereich auch 2009 weitere Verbesserungen in das Projekt einzubringen, da ich es für einen wesentlichen Aspekt halte.

Ein Artikel, wie diesen Veränderungen CSS-seitig zu begegnen ist, folgt.

16 Dez 2008 Update: Journalist-Port

Dank eifriger Mithilfe von Klaus habe ich einige kleine Fehler im Journalist-Port korrigiert und zwischenzeitlich das Zipfile auf meiner Ports-Seite aktualisiert. Bitte updaten.

04 Dez 2008 s9y-Port: Journalist

Journalist

Manchmal hat man ja einfach zuviel Zeit, obwohl man eigentlich gar keine hat. Mit etwas Glück springt dabei – auf speziellen Wunsch eines einzelnen Herren – der Port eines schlichten schwarz-weiß-Templates wie Journalist heraus.

Download und weitere Informationen auf meiner Ports-Seite. Fehler und sonstige Beschwerden bitte wie gehabt wahlweise in den Kommentaren oder per Email.

26 Nov 2008 Fragestunde: Ports

In den Kommentaren zum Desk Mess-Port tauchten zwei Fragen zum Thema Ports auf, die ich gerne beantworten will.

»Wie lange hast du in etwa dafür benötigt?«
Schwierig zu sagen, da ich sowas nicht protokolliere. Ich würde im Falle von Desk Mess meinen, dass darin vielleicht 5 bis 10 Arbeitsstunden stecken. Bei anderen Ports (i3theme, Mimbo) war es deutlich mehr.
Man darf dabei nie außer Augen lassen, dass ich eine gewisse Übung in Sachen Ports habe. Damit habe ich auch gewisse Erfahrungswerte und Code-Schnippsel (speziell bei Wordpress-Ports), die ich wiederverwenden kann.
»Wie schwer ist es eigentlich vorhandene Themes zu S9y zu porten?«
Das kommt natürlich auf die Vorlage an – nicht nur, ob es sich um eine reine (X)HTML-Vorlage, bei der man meist typische Aspekte eines Blogtemplates »dazudichten« muss, oder ein Wordpress-Template, bei dem man stattdessen Wordpress-spezifische Geschichten nach s9y umsetzen muss, handelt. Es geht natürlich auch darum, wie kompliziert die Vorlage ist, wieviele »Tricks« man in s9y einsetzen muss, um bestimmte Features zu implementieren. Und natürlich hängt es davon ab, wie »gut« die Vorlage ist, d.h. in erster Linie: Wieviel man dazudichten muss, damit es in s9y funktioniert.
Hinzu kommt auch hier, dass die Erfahrung in Sachen Ports und Templates mir natürlich hilft, ebenso gewisse Codeschnippsel, die ich immer wieder verwenden kann. Unterschiedliche Templates sind unterschiedlich schwierig, Mimbo war definitiv mit Abstand das komplizierteste bisher.

Sollte es noch mehr Fragen zu diesem Thema geben, immer raus damit :-)