[gelöst] Blöcke nur auf eigenem Userprofil anzeigen
am 17.08.2010 - 01:21 Uhr in
Hallo,
ich verwende z.B. einen Block zum anzeigen der Profilbesucher. Wenn ich nun ein anderes Profil besuche möchte ich, dass dieser Block ausgeblendet wird oder die Informationen des jeweiligen Users zeigt. In dem beschriebenen Fall wäre eine Ausblendung eher besser. Ich habe gesehen, dass man z.B. sagen kann: Block einblenden außer auf z.B. den Sieten /user. Leider unterscheidet sich der Ordner User bei dem eigenen und bei einem "Betrachterprofil" nicht. Kann man das irgendwie auf die schnelle lösen?
- Anmelden oder Registrieren um Kommentare zu schreiben

Mit argumenten im VIew
am 17.08.2010 - 07:05 Uhr
Mit argumenten im VIew
PHP-Code in der Block-Konfiguration
am 17.08.2010 - 11:16 Uhr
Ich habe gesehen, dass man z.B. sagen kann: Block einblenden außer auf z.B. den Sieten /user. Leider unterscheidet sich der Ordner User bei dem eigenen und bei einem "Betrachterprofil" nicht. Kann man das irgendwie auf die schnelle lösen?
Doch, der unterscheidet sich schon, nämlich über die User-ID im Pfad
user/%uid: Auf dem eigenen Benutzerprofil entspricht diese ID der eigenen Benutzer-ID und auf einem fremden Benutzerprofil ist sie ungleich der eigenen Benutzer-ID. Dann kanns Du in der Block-Konfiguration ja PHP-Code angeben, der zu TRUE oder FALSE auswertet und je nachdem den Block anzeigt oder nicht. Dabei kannst Du überarg(i)auf das i-te Element des aktuellen Pfades zurückgreifen (d. h. www.example.com/drupal/arg(0)/arg(1)/...) Beispiel:<?php
global $user;
if (arg(0) == 'user' && arg(1) == $user->uid) {
// eigenes Benutzerprofil
return TRUE;
} else {
// andere Seite
return FALSE;
}
?>
Jetzt erstellst Du zwei Blöcke, benutzt dazu Views und Views-Argumente, und blendest den einen immer nur auf dem eigenen Benutzerprofil ein und den anderen auf allen anderen Benutzerprofilen.
Das funktitioniert ! Vielen
am 17.08.2010 - 11:22 Uhr
Das funktitioniert ! Vielen Dank !