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

(gelöst) print $user_profile; durch mein eigenes zusammengebautes Profil ersetzen

Eingetragen von beaschmitz (469)
am 22.06.2011 - 21:56 Uhr in
  • Themes & Theming

Hallo,
ich habe freundlicherweise von Lonit einen PHP Code erhalten, der es mir erlaubt, Profile auf öffentlich oder Privat zu stellen......
D.h. Freund (User Relationships) können das Profil sehen und die anderen eben nicht! Dazu wird folgender Code in die user-profile.tpl.php Datei eingefügt:

<?php
global $user;

if (
arg(0) == 'user' && is_numeric(arg(1))) {
$account = user_load(arg(1));
if (isset(
$account->uid)) {
$node = content_profile_load('profile', $account->uid);
$user_is_friend = user_relationships_load(array('between' => array($user->uid, $account->uid), 'approved' => TRUE)) ? 1 : 0;

if (
arg(0) == 'user' && $user->uid == arg(1)) {
print
$user_profile;
}
elseif (
$node->field_profile_privacy_active[0][value] == 'Nein') {
print
$user_profile;
}
elseif (
$node->field_profile_privacy_active[0][value] == 'Ja' && $user_is_friend == 0) {
print
views_embed_view('No_Friend', 'block_1');
}
elseif (
$node->field_profile_privacy_active[0][value] == 'Ja' && $user_is_friend == 1) {
print
$user_profile;
}

}}
?>

Diverse Views etc gebastelt und als Ganzes funktioniert es dann eben (danke nochmals an Lonit!). Wer es nochmal nachlesen will, bitte hier: http://www.drupalcenter.de/node/34030

Nun habe ich heute gelernt, wie ich das User Profil auslesen kann und es in Einzelteilen wieder zusammen bauen kann, damit es einfach kompakter erscheint.

Zum Beispiel so:

<div class="profile">
 
<h2> <?php print $account->name?> </h2>
<?php print theme('user_picture', $user); ?>

<strong>Graduierung</strong> <?php print $account->profile_guertelfarbe?> <br>
  <strong>Trainingspartner vorhanden?</strong> <?php print $account->profile_trainingspartner?> <br>
  <strong>Kyu Grad</strong> <?php print $account->profile_kyu_grad?> <br>   
<strong>Postleitzahl</strong> <?php print $account->location['postal_code']?> <br>
<br>

<?php print $profile[privatemsg_send_new_message]; ?>
</div>

Wie packe ich aber nun diese Art der Zusammenstellung in die oben genannten Code? Dort wird ja einfach nur immer
print $user_profile;
gesagt...

Dies möchte ich durch meine friesierte Version ersetzen... Wie geht das?

DANKE

‹ admin bereich themen (node/add) Metatags mit PHP-Script auslesen ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Du ersetzt z.B. print

Eingetragen von Ionit (1802)
am 22.06.2011 - 22:24 Uhr

Du ersetzt z.B. print $user_profile; mit Deinem Code + CSS.

<?php
if (arg(0) == 'user' && $user->uid == arg(1)) {
print
'<div class="profile"><h2>';
print
$account->name;
print
'</h2>';
print
theme('user_picture', $user);
usw.
}
?>

oder so

<?php
if (arg(0) == 'user' && $user->uid == arg(1)) {
print
'<div class="profile"><h2>' . $account->name . '</h2>' . theme('user_picture', $user) . '<strong>Graduierung</strong>' . $account->profile_guertelfarbe . '<br>' . 'usw_usw';
usw.
}
?>

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hey Lonit! Du bist wieder da!

Eingetragen von beaschmitz (469)
am 22.06.2011 - 22:36 Uhr

Hey Lonit!
Du bist wieder da! DANKE für Deine Antwort. Werde ich nachher einmal ausprobieren!
DANKE

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo Lonit, klappt soweit

Eingetragen von beaschmitz (469)
am 23.06.2011 - 20:36 Uhr

Hallo Lonit,
klappt soweit ganz gut! Vielen Dank: ich habe es mit der zweiten Variante gemacht, da ich dort besser die Formatierungen einbinden konnte:

<?php
global $user;

if (
arg(0) == 'user' && is_numeric(arg(1))) {
$account = user_load(arg(1));
if (isset(
$account->uid)) {
$node = content_profile_load('profile', $account->uid);
$user_is_friend = user_relationships_load(array('between' => array($user->uid, $account->uid), 'approved' => TRUE)) ? 1 : 0;

if (
arg(0) == 'user' && $user->uid == arg(1)) {
print
'<div class="profile"><h2>' . $account->name . '</h2>' . theme('user_picture', $user) .
'<strong>Graduierung </strong>' . $account->profile_guertelfarbe . '<br>' .
'<strong>Trainingspartner vorhanden? </strong>' . $account->profile_trainingspartner . '<br>';
}
elseif (
$node->field_profile_privacy_active[0][value] == 'Nein') {
print
'<div class="profile"><h2>' . $account->name . '</h2>' . theme('user_picture', $user) .
'<strong>Graduierung </strong>' . $account->profile_guertelfarbe . '<br>' .
'<strong>Trainingspartner vorhanden? </strong>' . $account->profile_trainingspartner . '<br>';
}
elseif (
$node->field_profile_privacy_active[0][value] == 'Ja' && $user_is_friend == 0) {
print
views_embed_view('No_Friend', 'block_1');
}
elseif (
$node->field_profile_privacy_active[0][value] == 'Ja' && $user_is_friend == 1) {
print
'<div class="profile"><h2>' . $account->name . '</h2>' . theme('user_picture', $user) .
'<strong>Graduierung </strong>' . $account->profile_guertelfarbe . '<br>' .
'<strong>Trainingspartner vorhanden? </strong>' . $account->profile_trainingspartner . '<br>';
}

}}
?>

Jedoch habe ich ein Problem: Plötzlich hängt mir Drupal die rechte Seitenleiste (nur wenn ich die Profilseite aufrufe) unter die Page??! Vermutlich muss ich in dem Code noch etwas "abschließen"?? Wer kann mir helfen?
DANKE

  • Anmelden oder Registrieren um Kommentare zu schreiben

Du musst die CSS-Klasse

Eingetragen von Ionit (1802)
am 23.06.2011 - 21:04 Uhr

Du musst die CSS-Klasse schließen. Da fehlt ein oder mehrere Close-tags.

Edit:
Da fehlen 3 Close-Tags!

print '<div class="profile"><h2>' ist der öffnende Tag. Dieses muss auch imemr geschlossen werden.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Aach, yes, jetzt sehe ich es

Eingetragen von beaschmitz (469)
am 23.06.2011 - 21:38 Uhr

Aach, yes, jetzt sehe ich es auch! Sorry, wie man merkt, bin ich total php Anfänger!
ich habe die div class geschlossen und jetzt geht es!
Aber ich hatte schon die richtige Vermutung: es fehlte etwas!
DANKE!

PS: ich habe noch ein Problem mit der Ausgabe von Checkboxes. Falls Du noch eine Idee und Lust hast?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hi Lonit

Eingetragen von beaschmitz (469)
am 13.08.2011 - 23:50 Uhr

...ich habe mich an einer erweiterten Version versucht und "hänge" hier:
http://www.drupalcenter.de/node/36881
Hast Du einen Tipp?
DANKE

  • 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 6 Tagen
  • Hey danke
    vor 1 Woche 6 Tagen
  • Update: jetzt gibt's ein
    vor 2 Wochen 14 Stunden
  • Hallo, im Prinzip habe ich
    vor 2 Wochen 5 Tagen
  • Da scheint die Terminologie
    vor 2 Wochen 5 Tagen
  • Kannst doch auch alles direkt
    vor 3 Wochen 2 Tagen
  • In der entsprechenden View
    vor 3 Wochen 2 Tagen
  • Dazu müsstest Du vermutlich
    vor 3 Wochen 2 Tagen
  • gelöst
    vor 5 Wochen 5 Tagen
  • Ja natürlich. Dass ist etwas,
    vor 5 Wochen 6 Tagen

Statistik

Beiträge im Forum: 250233
Registrierte User: 20451

Neue User:

  • ByteScrapers
  • Mroppoofpaync
  • 4aficiona2

» 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 28 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