Beispiel für einen Shortcode in WordPress

Hier ist ein Beispiel für einen WordPress Shortcode, der das Alter einer Person basierend auf einem eingegebenen Geburtsdatum berechnet und das Alter in Jahren und Monaten zurückgibt.

Füge diesen Code in die functions.php Datei deines WordPress-Themes ein:

PHP
function berechne_alter($atts) {
    // Attribute des Shortcodes extrahieren
    $atts = shortcode_atts(array(
        'geburtsdatum' => '01.01.1970', // Standardwert, falls kein Geburtsdatum angegeben wird
    ), $atts, 'alter_berechnen');

    // Geburtsdatum in ein DateTime-Objekt umwandeln
    $geburtsdatum = DateTime::createFromFormat('d.m.Y', $atts['geburtsdatum']);
    $heute = new DateTime('now');

    if (!$geburtsdatum) {
        return 'Ungültiges Datum';
    }

    // Alter berechnen
    $interval = $heute->diff($geburtsdatum);
    $jahre = $interval->y;
    $monate = $interval->m;

    return "{$jahre} Jahre und {$monate} Monate";
}

// Shortcode registrieren
add_shortcode('alter_berechnen', 'berechne_alter');

Du kannst diesen Shortcode in deinem WordPress-Beitrag oder deiner Seite wie folgt verwenden:

[alter_berechnen geburtsdatum="12.03.1980"]

Dieser Shortcode nimmt das Geburtsdatum im Format dd.mm.yyyy und gibt das Alter der Person in Jahren und Monaten zurück.

Erklärung des Codes:

  1. shortcode_atts: Diese Funktion extrahiert die Attribute des Shortcodes und setzt standardmäßige Werte, falls diese nicht angegeben wurden.
  2. DateTime::createFromFormat: Konvertiert das Geburtsdatum aus dem String-Format d.m.Y in ein DateTime-Objekt.
  3. new DateTime('now'): Erstellt ein DateTime-Objekt für das aktuelle Datum und die aktuelle Uhrzeit.
  4. $heute->diff($geburtsdatum): Berechnet den Unterschied zwischen dem aktuellen Datum und dem Geburtsdatum.
  5. $interval->y und $interval->m: Extrahiert die Anzahl der Jahre und Monate aus dem Intervall.