Nur das Alter im Profil anzeigen
Eingetragen von Plisken (4)
am 27.07.2010 - 12:42 Uhr in
am 27.07.2010 - 12:42 Uhr in
Hallo Community,
Ich habe folgendes Problem:
Meine User sollen bei Anmeldung ihr Geburtsdatum eintragen. Im Profil soll das Alter angezeigt werden und in einem Event Kalender (realisiert mit Date + Calender) soll automatisch der Geburtstag angezeigt werden.
Das Alter lasse ich mir mit Hilfe des Birthday Modul im Profil anzeigen, allerdings sieht das so aus: 11/05/1979 (31). Ich hätte es aber gerne so, das nur das Alter ohne das Datum im Profil angezeigt wird.
Im Birthday Modul gibt es allerdings keine Einstellungsmöglichkeit dafür.... gibt es eine andere Möglichkeit dieses so wie beschrieben zu realisieren?
beste Grüße,
Marco
- Anmelden oder Registrieren um Kommentare zu schreiben
Modul modifizieren
am 27.07.2010 - 23:29 Uhr
Hallo Marco,
ich fürchte, da wirst du etwas am Modulcode herumbasteln müssen.
In Zeile 1049 fügst du Folgendes ein, um das Datum zu löschen:
$output = "";
Und dann passt du in Zeile 716 die Ausgabe für das Alter an, indem du die Klammern löscht:
$age = '<span class="birthdays-age">'. $account->age .'</span>';
Das ist jetzt nur ein schneller Hack. Beim Updaten des Moduls gehen diese Änderungen natürlich verloren.
Hack
am 28.07.2010 - 06:47 Uhr
Hallo.
Bitte keine Modulhacks vorschlagen! Das vermittelt nur den Eindruck einer nicht existierenden gängigen Praxis.
Besser ist es, einfach das Feld auszublenden und das Alter im Template per
<?php print $account->age; ?>
auszugeben.Stefan
stBorchert
am 28.07.2010 - 14:55 Uhr
Hallo.
einfach das Feld auszublenden und das Alter im Template per
<?php print $account->age; ?>
auszugeben.schönen Dank für eure Antworten!
Ich denke deine Lösung erscheint mir die bessere, alleine schon wenn es mal um ein update der Module geht. Mein Problem ist gerade nur das ich von Jahre langer Joomla Nutzung nun zu Drupal gewechselt bin und zugegeben noch extreme Anfangsschwierigkeiten mit dem Workflow habe. Hatte mir deshalb das Zen Template installiert um mich überhaupt mal in den Aufbau eines Template rein zu fuchsen.
Deshalb noch zwei Fragen:
Wie meinst du das mit dem Feld ausblenden? Wenn ich das Feld ausblende, fehlt dann nicht der gesamte Platzhalter im Profil (wenn es so etwas in Drupal gibt)?
Ich habe mir die php Datein von Zen mal angeguckt, ich konnte nirgends einen zusammenhang zu den Profilen (konto) endecken?! Selbst Firebug zeigt mir nichts vernünftiges an (Drupal addon ist installiert und aktiviert).... wo muss der Code den rein?
Welches Template?
am 28.07.2010 - 18:17 Uhr
Bitte keine Modulhacks vorschlagen!
Sorry, war schon etwas spät, Asche auf mein Haupt.
Besser ist es, einfach das Feld auszublenden und das Alter im Template per
<?php print $account->age; ?>
auszugeben.Welches Template wär das denn? Das Modul klinkt sich ja in das Benutzerprofil ein, sodass es gar kein eigenes Template dafür mitbringt.
user-profile.tpl.php
am 28.07.2010 - 18:39 Uhr
Moin.
Änderungen am Aussehen des Benutzerprofils kommen selbstverfreilich in die Datei user-profile.tpl.php.
Hier mal noch eine ausführlichere Erklärung, was man damit so alles machen kann: Customizing the user profile layout.
Stefan
Super Anleitung
am 28.07.2010 - 18:41 Uhr
Vielen Dank!
stBorchert
am 28.07.2010 - 20:16 Uhr
Moin.
Änderungen am Aussehen des Benutzerprofils kommen selbstverfreilich in die Datei user-profile.tpl.php.
Hier mal noch eine ausführlichere Erklärung, was man damit so alles machen kann: Customizing the user profile layout.
Die Erklärung hatte ich auch schon gefunden... das was mich ein wenig verwirrt ist:
Step 1 - is to override the default User Profile page layout by uploading a custom user-profile.tpl.php* file to your active theme folder.
So wie ich das verstehe, soll die Datei user-profile.tpl im Ordner von dem Theme liegen? Da ich sie dort nicht finden konnte, bin ich auf doof, auf die Idee gekommen, die Windows suche mal zu bemühen.
gefunden habe ich sie nun im modules/user Ordner....das ist so richtig? Oder liegt das jetzt nur an dem Zen Template?
Sry, die vllt dumme frage...aber ich versuche mich halt hier neu durch zu wurschteln :-)
funktioniert leider nur halb
am 28.07.2010 - 20:37 Uhr
Vielen dank erstmal, funktioniert auf jeden fall mit dem Code! Das Alter wird ausgegeben.
Das Problem was sich nun aber ergibt ist, das ich nun ja das das Datums Eingabe Feld als Verstecktes Profilfeld deklarieren musste
und es somit nicht mehr in der Anmeldung erscheint. Gibt es dafür auch eine Lösung? So müssen meine User ja ihr alter quasi Nachbearbeiten...
Templates
am 28.07.2010 - 21:35 Uhr
So wie ich das verstehe, soll die Datei user-profile.tpl im Ordner von dem Theme liegen?
Genau.
gefunden habe ich sie nun im modules/user Ordner....das ist so richtig?
Ja, auch das ist richtig. Allerdings ist das Template im Modulordner nur das Standardtemplate und der Ausgangspunkt für Dich zum Weitermachen.
Wenn Du ein Template überschreiben möchtest, kopierst Du es aus dem entsprechenden Modulverzeichnis in Dein Themeverzeichnis und machst dann mit der Kopie weiter.
Drupal weiss dann (nach einem Neuaufbau der Theme-Registry), dass ab jetzt Dein Template verwendet werden soll und nicht mehr das aus dem Modulverzeichnis.
hth,
Stefan