Artikel mit Tag bilingual

08 Feb 2009 s9y-Port: Base

Base

Ein weiteres, eher schlichtes Template auf speziellen Wunsch eines einzelnen Herren.

Base basiert auf dem populären 960 Grid System. Besonderes Highlight ist die über die theme options optional einstellbare Logo-Grafik.

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

25 Jan 2009 plainList in s9y

Nachdem die notwendigen Anpassungen der Kern-Plugins in Serendipity so ziemlich abgeschlossen sind, geht es nun schrittweise an die sogenannten »additional plugins« – dabei handelt es sich, wie der Name bereits sagt, um zusätzliche Plugins, welche über Spartacus (bzw. das dazugehörige Plugin) nachinstallierbar sind.

Die Schwierigkeit in der Code-Aktualisierung jeglicher Plugins besteht in der Anforderung, die Ausgabe des Plugins möge mit dem veränderten Code idealerweise genau so aussehen wie vorher, damit möglichst wenige Templates aktualisiert werden müssen. Ein klassisches, leider sehr oft vorzufindendes Code-Beispiel in Plugins für s9y ist etwa so etwas:

<a href="...">...</a>
<br />
<a href="...">...</a>
<br />
[...]

Ich weiß nicht, wie man darauf kommt, so etwas zu verwenden – es ist doch ziemlich eindeutig, dass der semantisch korrekte Code für sowas eine ungeordnete Liste wäre:

<ul>
    <li><a href="...">...</a></li>
    <li><a href="...">...</a></li>
    [...]
</ul>

Nun gilt es jedoch, bei ungeordneten Listen (ul) die Bullets (•) und bei geordneten Listen (ol) die Numerierung zu vermeiden, um die »alte« Darstellung in s9y zu erhalten. Dafür haben wir auf Vorschlag von Garvin die neue CSS-Klasse plainList eingeführt. Diese erfordert folgenden Codeschnipsel in der style.css des verwendeten Templates:

.plainList {
    list-style: none;
    margin-left: 0;
    padding-left: 0;
}

Wichtig: Unbedingt die korrekte Groß-/Kleinschreibung beachten, plainlist und PlainList beispielsweise würden in CSS nicht erkannt!

Nun werden Listen, denen die Klasse plainList zugewiesen wurde (<ul class="plainList>, <ol class="plainList">), ohne Bullets oder Numerierung sowie ohne Einrückung und damit in (Seitenleisten-)Plugins genau so wie vorher dargestellt. (Wobei man natürlich diese Klasse auch z.B. in Blogeinträgen einsetzen kann.)

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.

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.