Aktuelles Datum im deutschen Format ausgeben

  • Habe bereits diesen Code, leider wird das Datum aber in Englisch ausgeben, also anstatt z.B. Oktober October... Kann man das ändern?

    function datum_shortcode() {
    $datum = date('d. F Y');
    return $datum;
    }
    add_shortcode('datum', 'datum_shortcode');

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Deine Frage ist primär eine PHP-Frage, keine Wordpress-spezifische Frage. Die einfachste Lösung wäre die Verwendung von

    Code
    setlocale(LC_TIME, "de_DE.utf8");

    Siehe: https://www.schattenbaum.net/php/datum2.php

    Beispiel mit deinem Code:

    Code
    function datum_shortcode() {
    setlocale(LC_TIME, "de_DE.utf8");
    $datum = date('d. F Y');
    return $datum;
    }
    add_shortcode('datum', 'datum_shortcode');

    Oder Du nutzt doch die von Wordpress bereitgestellten Funktionen wie die o.g. date_i18n(). Beispiel bei deinem Code wäre dann:


    Code
    function datum_shortcode() {
    $datum = date_i18n('d. F Y');
    return $datum;
    }
    add_shortcode('datum', 'datum_shortcode');

    Beispiele für so etwas findet man übrigens in der Wordpress-Referenz in den Kommentaren: https://developer.wordpress.org/reference/functions/date_i18n/

  • Beispiele für so etwas findet man ...


    .. oder auch umfassend beschrieben in der WordPress Dokumentation zur Ausgabe von Datum und Uhrzeit, verlinkt in der Antwort #2 hier im Thread.

    Etwas eigenes Mitdenken sollte man schon wenigstens versuchen, dafür ist dieses Forum da.

    In diesem Fall hätte einfach auch schon nur das Lesen des Links geholfen, dort steht sehr klar:

    Zitat

    The [FONT=Courier New]date_i18n()[/FONT] function basically behaves like the PHP [FONT=Courier New]date()[/FONT] function, except that it also translates things like month names and weekdays and similar into the current locale for the site. You can replace a call to [FONT=Courier New]date()[/FONT] with a call to [FONT=Courier New]date_i18n()[/FONT], using the same arguments.


    Das ist exakt die Antwort auf die ursprüngliche Frage.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!