Wenn ein WordPress Beitrag älter als zwei Jahre ist

WordPress Beitrag älter als zwei JahreAb einem gewissen Alter spielen zwei Jahre nicht mehr die ganz große Rolle. Ob nun 37 oder 39 – der Unterschied wirkt unerheblich. Vor allem in Zeiten, da 60 doch ist die neue 40 ist. Im Internet hingegen können zwei Jahre wie bei Kleinkindern ganze Welten bedeuten. Wenn also ein WordPress Beitrag älter als zwei Jahre ist, kommt sein Inhalt vielleicht gar nicht mehr mit dem aktuellen Kenntnisstand mit. Und da vielleicht nicht jeder den Blick auf das Veröffentlichungsdatum richtet, kann der deutliche Hinweis auf das Alter durchaus sinnvoll sein.

Never ask a lady!

Eine Lady sollte man niemals nach ihrem Alter, geschweige denn nach ihrem Gewicht fragen. Bei einem Beitrag ist das etwas anderes. Im Rahmen eines Blogs sollte der ohnehin mit seinem Veröffentlichungsdatum gekennzeichnet sein und somit sein Alter zu erkennen geben. Etwas anders sieht es aus, wenn der Beitrag nicht dem Bloggen dient. Wenn Sie Beiträge auch benutzen, um Ihre Leistungen oder Angebote darzustellen, wäre hier ein Datum kontraproduktiv. Siehe hierzu auch den Beitrag zum Ausblenden von Meta-Angaben wie Autor und/oder Datum. Der im Übrigen auch schon so ein WordPress Beitrag älter als zwei Jahre ist.

Der entscheidende Punkt ist nun, dass Sie vielleicht alte Blogbeiträge, auf gar keinen Fall aber eine Ihrer Leistungen oder Angebote mit  diesem Hinweis kennzeichnen wollen. Denn auch diese Beiträge haben ja ein Datum, selbst wenn Sie es nicht veröffentlichen. Dann könnten Sie solche Beiträge auch gleich löschen. Oder auf eine Leistung (ein Angebot) weiterleiten, das noch nicht so alt ist. Wenn Sie also Beiträge für unterschiedliche Zwecke nutzen, braucht es die Unterscheidung. Sprich: Es braucht eine Abfrage. Doch dazu später mehr.

Den WordPress Beitrag nach dem Alter fragen

Schauen wir erst einmal auf den Code, der nach dem Alter fragt. Den habe ich bei einer Hamburger WordPress und Onpage SEO Agentur gefunden:

<?
$ageunix = get_the_time('U');
$days_old_in_seconds = ((time() - $ageunix));
$days_old = (($days_old_in_seconds/86400));
if ($days_old > 365) {
echo '<div class="haftung">DISCLAIMER: Dieser Beitrag ist älter als ein Jahr und daher vielleicht nicht mehr aktuell.</div>';
}
?>

Der Hamburger Anbieter geht von einer noch rascheren Alterung aus und weist also auf den möglichen Verfall nach bereits einem Jahr hin. Dies findet sich nicht nur im Text, der als Disclaimer ausgegeben werden soll, sondern auch in der Zeile if ($days_old > 365) {. 365 Tage, so haben wir mal gelernt, sind ein Jahr. Braucht es zwei Jahre, machen Sie aus den 365 entsprechend 730 Tage.

Was Sie dann konkret auf dem Beitrag stehen haben möchten, das auf die Möglichkeit des nicht mehr aktuellen Inhaltes hinweist, geben Sie innerhalb des DIV-Bereiches mit der Klasse .haftung ein. Die Sie auch anders nennen können, zum Beispiel .alterbeitrag.

Wohin mit dem Code?

Beim Hamburger Anbieter heißt es, der Code gehöre in die single.php. Stimmt. Es sei denn, das Theme arbeitet mit einer content-single.php. Dann könnte man den Code zwar noch immer in der single.php unterbringen. Die content-single.php hat aber den Vorteil, dass Sie die konkrete Position besser festlegen können.

Ein Beispiel:

Das noch immer aktuelle Standardtheme Twenty Seventeen arbeitet ohne content-single.php und ruft als Template für die Darstellung die content.php auf. Die nun zu benutzen wäre keine gute Idee, denn dieses Template ist auch für die Darstellung der Beiträge auf Übersichtsseiten wie der Kategorieseite zuständig. Wollte man, dass der Hinweis direkt oben als Erstes erscheint, würde er so auch auf Übersichtsseiten als Erstes zu sehen sein. Und so weit wollen Sie es mit dem Hinweis dann wohl doch nicht treiben.

Beim Theme Twenty Seventeen ist der Code in der single.php also besser aufgehoben. Und in der Tat, er funktioniert auch außerhalb des Loops. Also zum Beispiel direkt nach dem öffnenden main-Container, vor dem Loop.

Bei einem Theme wie Radiate, das hier auf dieser Website läuft und mit content-single.php arbeitet, ist der Code dort gut aufgehoben. Hier lässt sich festlegen, ob der Hinweis nun zum Beispiel über dem Titel, zwischen Titel und Meta-Angaben oder erst vor dem Content erscheinen soll.

Nur Blogbeiträge berücksichtigen

Nun sollen von dieser Kennzeichnung nicht alle Beiträge, sondern nur jene der Kategorie Blog betroffen sein. Dazu braucht es eine Abfrage, die besagt: Bist du ein Blogbeitrag, zeige den folgenden Hinweis. Bist du es nicht, zeige halt nichts.

<?php
if (in_category('blog')) {
?>
...
<?php
} else {
}
?>

Sollten Sie mit einer anderen Kategorie als blog die Unterscheidung getroffen haben, wählen Sie halt deren Namen. Also zum Beispiel news oder aktuelles etc.

Hinweis nur im Blog, dass ein WordPress Beitrag älter als zwei Jahre ist

Im ganzen Satz lautet der Code dann wie folgt:

<?php
if (in_category('blog')) {
?>

<?
$ageunix = get_the_time('U');
$days_old_in_seconds = ((time() - $ageunix));
$days_old = (($days_old_in_seconds/86400));
if ($days_old > 730) {
  echo '<div class="alterbeitrag">Dieser Beitrag ist älter als zwei Jahre. Es könnte also sein, dass auch der Inhalt - zumindest in Teilen - bereits veraltet ist.</div>';
}
?>

<?php
} else {
}
?>

Das passende CSS für den Hinweis

Nun braucht es eigentlich nur noch ein wenig CSS, damit der Hinweis nicht völlig unmotiviert an der gewählten Position auf der Beitragsseite erscheint.

Ich habe mich – passend zu der Ausgabe der blockquotes und der Code-Darstellung – für folgende Vorgaben entschieden:

.alterbeitrag {border-width:1px 1px 1px 3px;
border-style:solid solid solid solid;
border-color:#e8e8e8 #e8e8e8 #e8e8e8 #ffd000; padding:15px; margin: 10px 0;}

Beitragsbild: Britta Kretschmer

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.