Benutzerbild / Autorenfoto nicht öffentlich anzeigen sondern nur intern für andere Benutzer
Eingetragen von axelschulz@drup... (341)
am 20.03.2009 - 09:10 Uhr in
am 20.03.2009 - 09:10 Uhr in
Nett ist die Funktion, dass Autoren auch mit Foto angezeigt werden.
Mit Imagecache perfekt anpassbar, danke an die Tutorials etc :-)
Nur sollen nun die Fotos/Gesichter der Autoren nur anderen Benutzern angezeigt werden. Wenn Artikel, BLogs etc. öffentlich zugänglich sind, sollen diese OHNE Foto des Autors dargestellt werden.
Leider fand ich keinen Foreneintrag dazu, aber vielleicht hat es ja doch schon jemand realisiert.
Hintergrund:
meine Testuser wollen kein Nutzerbild einstellen, wenn man das Foto öffentlich sieht. Verständlich und eine neue Herausforderung für mich.
Danke
Axel
- Anmelden oder Registrieren um Kommentare zu schreiben
also ich löse dass mal
am 21.03.2009 - 19:00 Uhr
also ich löse dass mal allgemein für jedes benutzerbild im system
<?php
function hook_preprocess_user_picture(&$vars) {
if (user_is_anonymous()) {
$account = $variables['account'];
$picture = variable_get('user_picture_default', '');
$vars['picture'] = $picture;
$variables['picture'] = l($variables['picture'], "user/$account->uid", $attributes);
$alt = t("@user's picture", array('@user' => $account->name ? $account->name : variable_get('anonymous', t('Anonymous'))));
$variables['picture'] = theme('image', $picture, $alt, $alt, '', FALSE);
if (!empty($account->uid) && user_access('access user profiles')) {
$attributes = array('attributes' => array('title' => t('View user profile.')), 'html' => TRUE);
$variables['picture'] = l($variables['picture'], "user/$account->uid", $attributes);
}
}
}
?>
--------------
Blog www.freeblogger.org: Deutscher IRC-Channel: irc.freenode.net #drupal.de ... Jabber-me: dwehner@im.calug.de
SirFiChi ist auch dein Halbgott.
in node.tpl.php commenttpl.php
am 23.03.2009 - 06:57 Uhr
vielen Dank. Ich habe (leider kann ich kein PHP) diesen Code einfach mal komplett hinten in node.tpl.php sowie comment.tpl.php reingehängt, aber ich vermute, so geht's nicht oder es sind die falschen PHP-Dokumente. Wo füge ich diesen Code ein?
<?php
function hook_preprocess_user_picture(&$vars) {
if (user_is_anonymous()) {
$account = $variables['account'];
$picture = variable_get('user_picture_default', '');
$vars['picture'] = $picture;
$variables['picture'] = l($variables['picture'], "user/$account->uid", $attributes);
$alt = t("@user's picture", array('@user' => $account->name ? $account->name : variable_get('anonymous', t('Anonymous'))));
$variables['picture'] = theme('image', $picture, $alt, $alt, '', FALSE);
if (!empty($account->uid) && user_access('access user profiles')) {
$attributes = array('attributes' => array('title' => t('View user profile.')), 'html' => TRUE);
$variables['picture'] = l($variables['picture'], "user/$account->uid", $attributes);
}
}
}
?>
Sicher eine peinliche Frage, aber ich möchte nicht, dass Deine Antwort umsonst war.
Und ganz generell: darf man PHP Code einfach so ans Ende einfügen oder muss er immer an einer ganz bestimmten Stelle stehen (von der Logik des Abarbeitens durch den (vermutlich) Server)?
Danke!
na dass muss in die
am 16.05.2009 - 20:55 Uhr
na dass muss in die Template.php
--------------
Blog www.freeblogger.org: Deutscher IRC-Channel: irc.freenode.net #drupal.de ... Jabber-me: dwehner@im.calug.de
SirFiChi ist auch dein Halbgott.