Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Module ›

[gelöst mittels Modul] Profilfelder ausgeben über PHP

Eingetragen von andreame (32)
am 24.02.2010 - 14:43 Uhr in
  • Module
  • Drupal 6.x

Liebe Leute,

leider nicht PHP-kundig finde ich das einfach selbst nicht raus
und ersuche um Hilfe.

Ich verwende ein Theme, dass mit

<?php
print $picture;
?>

mir das Userbild im Node anzeigt. Mit
<?php
print $submitted;
?>

bekomme ich "Veröffentlicht von 'username' am 'Datum'".
(Datei node.tpl.php)

Mit dem Modul Profile habe ich Felder angelegt, u.a.
profiles_vorname und profiles_nachname und diese will ich da
auch in jedem Node haben.

Was muss ich tun, dass ich diese im Node auch ausgeben kann,
also in der Form

"Veröffentlich von 'vorname' 'nachname'' am 'Datum'"

Meine Versuche z.B. mit

<?php
print $profiles_vorname;
?>
haben leider
nicht gefruchtet, offenbar muss mich da irgendwie anders auf die
definierten Felder beziehen.

Herzlichen Dank im voraus,
LG Andrea

‹ Berechtigungen für Taxonomy URL Alias anstatt <a href="/node/<?php print $nid ?>" ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

print_r

Eingetragen von Hydra (29)
am 24.02.2010 - 15:11 Uhr

Hey, versuch mal sowas wie

<?php
  print_r
($node);
?>

Aus der Array Struktur (schau am besten in den Quelltext) kannst du dir raussuchen wie die heißen! Ich habe das mal bei CCK erweiterungen benutzt. Sieht dann ungefähr so aus:

$node->field_kurzinfo[0]['value'];

field_kurzinfo war mein CCK Feld. Ich denke dass du so auch die Felder vom Profilemodul finden wirst.

lg. Hydra

  • Anmelden oder Registrieren um Kommentare zu schreiben

Du hast in der node.tpl.php

Eingetragen von derjochenmeyer@... (591)
am 26.02.2010 - 14:47 Uhr

Du hast in der node.tpl.php keinen Zugriff auf die Profilfelder. Am besten du machst es über template_preprocess_node in der template.php

z. B.

<?php
function phptemplate_preprocess_node(&$variables) {
 
$account = user_load(array('uid' => $node->uid));
 
$variables['vorname'] = $account->profile_FELDNAME;
 
$variables['nachname'] = $account->profile_FELDNAME;
 
// dann kannst du in der node.tpl.php direkt auf $vorname und $nachname zugreifen
  // hier kannst du auch das submitted direkt überscheiben
 
$variables['submitted'] = "Veröffentlich von 'vorname' 'nachname'' am 'Datum'";
}
?>

Also alles was anch den muster $variables['bezeichnung'] definiert wird ist dann in der node.tpl.php als $bezeichnung verfügbar.

  • Anmelden oder Registrieren um Kommentare zu schreiben

hmmmm

Eingetragen von andreame (32)
am 24.02.2010 - 15:57 Uhr

Danke!

@Hydra Das verstehe ich leider überhaupt nicht ....
Ich weiss auch nicht, wie ich überhaupt den Quelltext anschaue ...

@ derjochenmeyer

Ich habe diesen Code in die template.php übernommen (mit und ohne der
letzten $variables Zeile - leider zeigt mit dann Drupal überhaupt nichts mehr
an.

Eingefügt habe ich es ganz am Ende der Datei - gibts da einen speziellen
Ort, wo das hin soll, damit es klappt?

LG Andrea

  • Anmelden oder Registrieren um Kommentare zu schreiben

Den wenn du in deiner

Eingetragen von derjochenmeyer@... (591)
am 26.02.2010 - 14:47 Uhr

Den wenn du in deiner node.tpl.php

<?php
print_r
($node)
?>
reinschreibst, dann wird beim Seitenaufruf das Node Objekt angezeigt. Allerdings ziemlich unleserlich. Wenn du dir den Browserquelltext (rechte Maustaste Quelltext anzeigen, oder so) anschaust, ist dieses Objekt wesentlich strukturierter dargestellt.

Allerdings wirst du die Informationen die du suchst da nicht finden. Du musst sie zugänglich machen. Am besten du suchst die Datei template.php in deinem Theme und fügst die von mir vorgeschlagene Funktion irgendwo am Ende der Datei ein.

Etwas PHP wird leider nötig sein.

Aber ich habe eben auch noch ein Modul gefunden was dir weiterhelfen könnte, hier: RealName

  • Anmelden oder Registrieren um Kommentare zu schreiben

funktioniert leider nicht ...

Eingetragen von andreame (32)
am 24.02.2010 - 16:08 Uhr

@ derjochenmeyer@...

Ich habe alles so gemacht, ganz genau, ausgeben probiere ich mit

<?php
print $vorname;
?>

<?php
print $nachname;
?>

aber leider nichts.

LG Andrea

  • Anmelden oder Registrieren um Kommentare zu schreiben

Modul probieren

Eingetragen von andreame (32)
am 24.02.2010 - 16:10 Uhr

Lieben Dank,

ich probiere es jetzt erst mal mit dem Modul, das ist vielleicht für mich
doch der bessere Weg. Ich habe leider nie PHP gelernt und mache immer
nur trial & error.

LG Andrea

  • Anmelden oder Registrieren um Kommentare zu schreiben

Versuche es mal mit: <?php

Eingetragen von Thoor (3678)
am 24.02.2010 - 16:19 Uhr

Versuche es mal mit:

<?php print $account->profile_vorname; ?>

oder eleganter mit Test, ob der Wert vorhanden ist:

<?php if($account->profile_vorname) {print $account->profile_vorname;} ?>

PS.: Da ist jetzt ein Feld fürs Profil! Für nen Node könntest Du analog $author nutzen! Bin aber selbst PHP Trottel, deshalb ohne Gewähr :-)

  • Anmelden oder Registrieren um Kommentare zu schreiben

Klappt super mit dem Modul

Eingetragen von andreame (32)
am 24.02.2010 - 16:25 Uhr

Ich habe das Modul installiert, Konfiguration ist nicht schwierig.
Und es klappt ganz hervorragend.
Ausserdem macht das Modul auch noch das unhübsche "not verified" bei
Gästen weg, was auch klasse ist und eh auf meiner To Do Liste war.

Ich danke ganz ganz herzlich für die Hilfe, aber plage mich
jetzt nicht mehr mit dem PHP weiter.

Vielen lieben Dank!
Andrea

  • Anmelden oder Registrieren um Kommentare zu schreiben

Profil laden

Eingetragen von tiger (415)
am 24.02.2010 - 16:26 Uhr

Um auf die Profilfelder zugreifen zu können musst du das Profil zuerst laden.

$user = user_load(array($node->uid));
$profile = profile_load_profile($user);
print $profile -> vorname;

vgl. http://api.drupal.org/api/function/

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
  • Composer nach Umzug
  • [gelöst] Taxonomie Begriffe zeigt nicht alle Nodes an
  • Drupal 11 + Experience Builder (Canvas) + Layout Builder
  • Welche KI verwendet ihr?
  • Update Manger läst sich nicht Installieren
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 1 Woche 2 Tagen
  • Hey danke
    vor 1 Woche 3 Tagen
  • Update: jetzt gibt's ein
    vor 1 Woche 4 Tagen
  • Hallo, im Prinzip habe ich
    vor 2 Wochen 1 Tag
  • Da scheint die Terminologie
    vor 2 Wochen 1 Tag
  • Kannst doch auch alles direkt
    vor 2 Wochen 5 Tagen
  • In der entsprechenden View
    vor 2 Wochen 5 Tagen
  • Dazu müsstest Du vermutlich
    vor 2 Wochen 5 Tagen
  • gelöst
    vor 5 Wochen 2 Tagen
  • Ja natürlich. Dass ist etwas,
    vor 5 Wochen 3 Tagen

Statistik

Beiträge im Forum: 250233
Registrierte User: 20450

Neue User:

  • Mroppoofpaync
  • 4aficiona2
  • AppBuilder

» Alle User anzeigen

User nach Punkten sortiert:
wla9461
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 17 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association