Hinweis bei älteren Artikeln

Zugegeben, der große Programmierer bin ich nicht und werde ich wohl auch nie werden.

Aber da ich mich für die Materie interessiere, versuche ich immer wieder ein bisschen mehr selbst zu programmieren oder mir zumindest Funktionen aus vorhandenen Code-Schnippseln hinzubasteln.

So auch bei dem Wunsch, bei Artikeln die älter sind als x Tage daraufhinzuweisen, das der Inhalt evtl. nicht mehr dem aktuellen Stand entspricht.

Wir sind hier zwar nicht im Land der unbegrenzten Möglichkeiten, wo man z. B. jemanden darauf hinweisen muss, das wenn er etwas heißes isst er sich auch den Mund verbrennen kann – oder ähnliche eigentlich selbstverständliche Dinge.

Denn schaden kann es ja nie.

Schließlich kann ein Gerichtsurteil über das man vor einem Jahr geschrieben hat, heute schon der berühmte Schnee von gestern sein.

Aber wie fängt man das an?

Ich habe erst gegoogelt und im Forum von WordPress Deutschland gesucht, bis mir siedendheiß einfiel, das ich mir ja von Tanja aka crazytoast den Code bei den Kommentaren eingebaut hatte, der – wenn ein Artikel älter als x Tage ist – das URL-Feld aus- und einen Hinweistext einblendet.

Das musste doch irgendwie einzubauen gehen.

Gesagt, getan. Doch irgendwie wollte die Code-Funktion nicht so wirklich.

Ich hatte nicht nur vergessen, die Schleife zu schließen, es gab dann auch noch den einen oder anderen Fehler.

Mit Hilfe des WP-Forums gelang es mir dann, diese zu beseitigen.

Aber dann war da noch die Sache mit der div-Box. Sie sollte schließlich auch nur erscheinen, wenn der Artikel auch wirklich älter als die angegebene Zeit ist.

Doch auch das habe ich Schlußendlich noch hinbekommen.

Das werde ich jetzt auch einmal auf die bislang zu sehende Box versuchen anzuwenden, welche in der Sidebar in Kürze zu lesende Artikel ankündigt. Denn das die ständig zu sehen ist, stört mich eigentlich schon so lange, wie ich sie eingebaut habe.

Danke an dieser Stelle an Tanja und die hilfsbereiten Jungs und Mädels aus dem WordPress-Forum.

2 Gedanken zu „Hinweis bei älteren Artikeln“

  1. Fehlen beim Code da nicht ein paar Klammern { } Ich würde bei diesem Beispiel am Ende von Zeile 2 { schreiben (vor ?> und als letzte Zeile } ?>. Weiter dürfte auch </php?gt; keine richtige Anweisung sein sondern stattdessen ?>. Fällt mir nur gerade so auf 😉
    Übrigens habe ich solche Abfragen öfter bei mir im Theme. Aber Achtung, die funktionieren nur in der single.php und der comments.php.

    In der sidebar.php dürftest Du damit Schwierigkeiten kriegen. Hier rate ich zu einer eigenen Sidebar für ältere Artikel. Ich hab vor einiger Zeit mal beschrieben, wie man dem Tag Archiv eine eigene Sidebar zuweist.
    Für eine eigene Sidebar eine zusätzliche Sidebar Datei anlegen, z.B. sidebar-alte_artikel.php und dann in der single.php wo die Sidebar aufgerufen wird, eine Schleife zum Aufruf der entsprechenden Sidebar einbauen, wie z.B.:
    <?php $posting_time = get_the_time('U');
    if ( (time() - $posting_time) < (3600*24*90) ) { //jünger als 90 Tage
    get_sidebar();
    } else {
    get_sidebar('alte_artikel');
    } ?>

    Antworten
  2. Hallo Tanja!

    Danke, das Du mich da auf einige Fehler aufmerksam gemacht hast.

    Vor lauter & lt; und & gt (ohne Leerzeichen) hab ich da wohl nicht mehr durchgeblickt. Denn WP wandelt ohne die Maskierung in diese Schreibweise den Code ja sofort um.

    In die Sidebar bringe ich das ja auch nicht. Wie hier (https://schroeders-netzecke.de/wordpress/die-rubrik-sammelsurium) z. B. steht das oberhalb des Artikels.

    Und das scheint so zu funktionieren.

    Die Schreibweise mit den geschweiften Klammern macht bei mir ja Probleme. Ich erinnere da nur an deinen Wikio-Code. Ohne haut es bei mir hin, mit { und } meckert WP.

    Antworten

Schreibe einen Kommentar