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.





Thanks, yellowled! That saved me a bunch of time trying to get the styles right after my update.
And thanks for updating those plugins!