Drupal: Format des Erstellungsdatums ändern

Viele Wege führen nach Rom. Ganz besonders was Drupal angeht. Um das Format des Datums zu ändern, das neben dem Namen des Autors im Header einer Drupal-Node angezeigt werden kann, stellt Berlin-Coding drei Möglichkeiten vor.

  1. Da gibt es ein Modul für. Zwar mit reichlich Overkill, aber soweit recht komfortabel macht https://www.drupal.org/project/submitted_by genau das was es soll.
  2. Wer es leichtgewichtiger mag, klingt sich in der template.php seines Themes unter template_preprocess_node() ein. Genau an der Stelle werden die nötigen Bestandteile an die $submitted-Variable übergeben, die dann im Node-Template ausgerendert wird.
    function MYTHEME_preprocess_node(&$vars) {
      if (variable_get('node_submitted_' . $vars['node']->type, TRUE)) {
        $date = format_date($vars['node']->created, 'custom', 'd. F Y');
        $vars['submitted'] = t('Submitted by !username on !datetime', array('!username' => $vars['name'], '!datetime' => $date));
      }
    }
  3. Am flexibelsten ist man am Ende wahrscheinlich direkt in seinem Node-Template. Besonders, wenn der zusammengesetzte String ohnehin noch weiter zerstückelt werden soll. Dort kann man die Zeile <p class="submitted"><?php print $submitted; ?></p> durch folgende beispielhafte Komposition ersetzen.
    <?php print t('Submitted by !username on !datetime', array('!username' => $name, '!datetime' => format_date($node->created, 'custom', 'd. F Y'))); ?>