YellowLeds Weblog v2

Artikel über Webdesign, Webstandards und Serendipity von Matthias Mees

Seite 1 von 1, insgesamt 1 Einträge

In Serendipity auf veraltete Artikel hinweisen

Ich habe gerade etwas in dieses Blog eingebaut, was ich eigentlich schon lange haben wollte: In Artikeln, die älter als ein Jahr sind, wird jetzt ein Hinweis angezeigt, dass der Artikel vielleicht „überholt oder veraltet ist“.

Warum wollte ich das?

Ein großer Teil dieses Blogs beschäftigt sich inhaltlich mit Webentwicklung, und da entwickeln sich Dinge zum Teil so rasend weiter, dass Artikel eben sehr schnell veralten (das fällt mir immer wieder in der Fortbildung auf). Die mit Abstand meisten Besucher dürften einzelne Blogartikel über Google erreichen, weil sie nach einem bestimmten Thema gucken, und das Artikeldatum steht eben auch erst am Ende. Also lieber gleich am Anfang mit dem Zaunpfahl winken. Zumal die Umsetzung in Smarty echt easy-peasy ist.

Wie geht das?

Verantwortlich für die Anzeige eines einzelnen Artikels in s9y ist die entries.tpl. Dort ermitteln wir zunächst das Alter des angezeigten Artikels und weisen es einer Variablen zu:

{assign var="age" value=$smarty.now - $entry.timestamp}

Wir ziehen also den Unix-Timestamp des Artikels vom aktuellen Unix-Timestamp (beides in Sekunden) ab. Dann prüfen wir, ob dieser Wert größer ist als der für ein Jahr (365 × 24 × 60 × 60) und geben – falls dem so ist – an geeigneter Stelle im Artikel einen Textblock aus (der natürlich per CSS gestaltet werden sollte, damit er auch ins Auge fällt):

{if $age >= 31556926}
    <p class="outdated"><strong>Vorsicht:</strong> Dieser Artikel ist mindestens ein Jahr alt. Wenn es ein Artikel über Webentwicklung ist, kann es gut sein, dass er inzwischen überholt oder veraltet ist.</p>
{/if}