Variablen Date-Modul und Formatierung
Eingetragen von Holly (33)
am 23.12.2014 - 21:45 Uhr in
am 23.12.2014 - 21:45 Uhr in
Hallo zusammen,
ich kämpfe gerade mit dem Abruf von Variablen aus dem Date-Modul.
In der Node wird das Datum so angezeigt: Dienstag, 10. Februar 2015 - 20:00
Gerne würde ich aber die Variablen selbst abrufen. Aktuell mache ich das so: <?php print $node->field_datum['und'][0]['value']; ?>
Leider wird dann das Datum unformatiert ausgegeben. In diesem Fall so: 2015-02-10 20:00:00
Zur Formatierungen habe ich bis jetzt nur diese Infos gefunden: http://drupalcontrib.org/api/drupal/contributions%21date%21date.theme/fu...
Leider haben die Angaben bei mir nicht funktioniert.
Danke für die Hilfe im Voraus!
- Anmelden oder Registrieren um Kommentare zu schreiben
Klar kannst Du mittels PHP
am 24.12.2014 - 10:06 Uhr
Klar kannst Du mittels PHP das Datum anders formatieren, aber warum willst Du das selbst machen?
Unter Konfiguration » Lokalisierung und Sprache » Datum und Uhrzeit findest Du drei Tabs. Unter Formate definierst Du, welche weiteren Datumsdarstellungen Du noch haben möchtest. Unter Typen gibst Du Ihnen Namen. Im Inhaltstyp, unter Anzeige Verwalten, sagst Du dann, welches benamste Format Du haben möchtest. Bei der Ausgabe empfiehlt sich der Einsatz der render-Funktion. Die nimmt Dir eine Menge ab.
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Hallo wla, danke für deine
am 26.12.2014 - 16:20 Uhr
Hallo wla,
danke für deine Antwort. Klar kann ich die Formatierung des Datums in den Einstellungen verändern. Dann bin ich aber auf die darstellung in der Node angewisen. Ich will die Ausgabe im HTML Template selbst bestimmten. Somit muss ich die Variable via PHP abrufen.
Für solche Dinge sind die
am 26.12.2014 - 21:30 Uhr
Für solche Dinge sind die preprocess-Funktionen in Theme vorgesehen. Dort kannst Du ein Feld, z.B. in Abhängigkeit vom Nodetyp, für die Ausgabe im Template-File mittels PHP vorbereiten. Da steht Dir die date-Funktion von PHP für die Aufbereitung eines Datums zur Verfügung. Im template-File brauchst Du das Feld dann nur noch auszugeben.
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Ich weiß, ich bin kein
am 27.12.2014 - 19:55 Uhr
Ich weiß, ich bin kein PHP-Profi bzw. Drupal-Spezialist. Aber mein Projekt scheitert gerade an diesem Problem.
Irgendwie muss es doch auch möglich sein, die Ausgabe in der Node, so wie sie auch formatiert ist, auch direkt abzurufen. Im Devel-Modul wird dies auch so angezeigt, siehe Screenshot:
Leider kommt das Datum bei mir immer nur so 2015-02-10 20:00:00 raus. Die Variable so auszugeben wie sie im Devel-Modul (Themer info) gezeigt wird gelingt mir nicht.
Du greifst einfach zu tief in
am 27.12.2014 - 21:25 Uhr
Du greifst einfach zu tief in die Struktur. Versuche es mal so:
<?php print render($node->field_datum); ?>
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Das produziert bei mir eine
am 27.12.2014 - 21:46 Uhr
Das produziert bei mir eine Fehlermeldung:
Fatal error: Cannot use object of type DateObject as array in /Applications/XAMPP/xamppfiles/htdocs/.../includes/common.inc on line 5847
Ich muss immer [‘und‘][0][‘value‘] anhängen und dann kommt das Datum im Beschriebenen Format raus.
Noch ein Versuch <?php print
am 27.12.2014 - 23:40 Uhr
Noch ein Versuch
<?php print render((array) $node->field_datum); ?>
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Danke für den erneuten
am 28.12.2014 - 11:21 Uhr
Danke für den erneuten Versuch :-) aber auch hier bekomme ich eine Fehlermeldung:
Fatal error: Only variables can be passed by reference in /Applications/XAMPP/xamppfiles/htdocs/.../sites/all/themes/montessori_ffb/node--termin.tpl.php on line 82