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

imagecache und usernode, Profilbild-thumb?

Eingetragen von Mattes (233)
am 14.12.2007 - 00:32 Uhr in
  • Module

Ich benutze Usernode und CCK für meine Profile (Tutorial von Michelle)
um einfluß auf das Profilbild zu haben habe ich nach dem Tutorial von Lullabot
Imagecache installiert.

Klappt alles soweit super, nur zeigt er mir auch die Buddypictures und
die Bilder in den Gästebucheinträgen so groß wie das Profilbild an.

ich hab versucht in der gaestebuch.tpl über den befehl:

<?php print theme('user_picture', $profileuser, 'thumb'); ?>

ein thumb zu laden leider ohne erfolg.

Hat jemand einen Rat, wie ich das verkleinerte Profilbild (Imagecache hat definitiv eins angelegt)
nun laden kann?

‹ Aggregator übenimmt Tag <DC> nicht IMCE: Dateien überschreiben ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Welche Presets hast Du in

Eingetragen von quiptime (4972)
am 14.12.2007 - 00:44 Uhr

Welche Presets hast Du in Imagecache erstellt? Welche dieser Presets werden im Usernode und Gaestebuch verwendet?

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

zwei: -medium

Eingetragen von Mattes (233)
am 14.12.2007 - 01:12 Uhr

zwei:

-medium (150x150)
-thumb (45x45)

in der template habe ich folgenden code:

// Theme override for user.module which retains original user settings picture and profile links
Function phptemplate_user_picture($account, $size = 'thumb') {
  if (variable_get('user_pictures', 0)) {
    // Display the user's photo if available
    if (preg_match('/q\=user\/\w+/', $_SERVER['REDIRECT_QUERY_STRING'])) {
        $size = 'medium';
    }
     if ($account->picture && file_exists($account->picture)) {
      $picture = l(theme('imagecache', $size, $account->picture), 'user/' . $account->uid, NULL, NULL, NULL, FALSE, TRUE);
    }
    else if (variable_get('user_picture_default', '')) {
      $picture = l(theme('imagecache', $size, variable_get('user_picture_default', '')), 'user/' . $account->uid, NULL, NULL, NULL, FALSE, TRUE);
    
           
    }
    return '<div class="picture">'.$picture.'</div>';
  }
}


?>

im Usernode:

<?php print theme("user_picture",$profileuser); ?>

und in der gaestebuch.tpl

<?php
print theme('user_picture', $entrywriter, 'thumb');
?>

  • Anmelden oder Registrieren um Kommentare zu schreiben

Du wunderst Dich das im

Eingetragen von quiptime (4972)
am 14.12.2007 - 02:20 Uhr

Du wunderst Dich das im Gaestebuch die Bildformate der Userprofil angezeigt werden. Kein Wunder, denn ganau das willst Du doch mit

Zitat:

und in der gaestebuch.tpl

<?php
print theme('user_picture', $entrywriter, 'thumb');
?>

erreichen. Oder?

Auch ist der Code sinnlos weil der Parameter 'thumb' von der Funktion ignoriert wird.

<?php
function theme_user_picture($account) {
  if (
variable_get('user_pictures', 0)) {
    if (
$account->picture && file_exists($account->picture)) {
     
$picture = file_create_url($account->picture);
    }
    else if (
variable_get('user_picture_default', '')) {
     
$picture = variable_get('user_picture_default', '');
    }

    if (isset(
$picture)) {
     
$alt = t("@user's picture", array('@user' => $account->name ? $account->name : variable_get('anonymous', t('Anonymous'))));
     
$picture = theme('image', $picture, $alt, $alt, '', FALSE);
      if (!empty(
$account->uid) && user_access('access user profiles')) {
       
$picture = l($picture, "user/$account->uid", array('title' => t('View user profile.')), NULL, NULL, FALSE, TRUE);
      }

      return
"<div class=\"picture\">$picture</div>";
    }
  }
}
?>

Nebenbei gesagt, in Drupal 6 gibt es diese Theme Funktion nicht mehr.

Was haelst Du von der Funktion

<?php
function theme_imagecache($namespace, $path, $alt = '', $title = '', $attributes = NULL) {
 
$attributes = drupal_attributes($attributes);

 
$imagecache_path = imagecache_create_url($namespace, $path);
  return
'<img src="'. $imagecache_path .'" alt="'. check_plain($alt) .'" title="'. check_plain($title) .'" '. $attributes .' />';
}
?>

 

Wenn Du die Formate der Bilder im Gaestebuch anpassen moechtest dann musst Du vermutlich auch eine Theme Funktion aus dem Gaestebuch verwenden. Die voran genannte function phptemplate_user_picture() betrifft zwar Userbilder aber nicht zwingend auch die Bilder im Gaestebuch.

-------------------------------------------------------------------------------

Bevor Du weiter im Code rumwuehlst. Warum gehst Du das Problem nicht anders an?

Du kann in Imagecache beliebiebige Presets anlegen. Lege die erforderlichen Presets an falls sie nicht schon existieren.
Da im Usernode das User-Image ja ein CCK-image-field ist kannst Du in der Inhaltstyp-Konfiguration dieses Feldes festlegen welches Imagecache Preset fuer die Anzeige dieses Image verwendet wird. Schon allein durch eine differenzierte Festlegung an dieser Stelle sollte sich Dein Problem erledigen.

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ok, ich habe schon zwei

Eingetragen von Mattes (233)
am 14.12.2007 - 16:32 Uhr

Ok, ich habe schon zwei entsprechende Presets für das Benutzerbild: 'medium' und 'thumb'.
Wie meinst du den kann ich nun auf die beiden entsprechend zugreifen?

Um zum Beispiel das Bild in der gaestebuch.tpl verkleinert also mit dem preset thumb anzuzeigen mußte ich was tun (knoten im kopf *g)?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Tja, damit es nicht zu

Eingetragen von quiptime (4972)
am 14.12.2007 - 16:45 Uhr

Tja, damit es nicht zu abstrakt wird.

Welches Gaestebuch verwendest Du? Poste mal den Code Deines Gaestebuch-Template.

PS
Du hast dem Userprofil-Image fuer die Usernode in der Inhaltstyp-Konfiguration der Usernode bereits das Preset 'medium' zugewiesen? Wirklich?

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Frage

Eingetragen von krahe (24)
am 14.12.2007 - 19:25 Uhr

Bei mir funktioniert das nur wenn ich aus

if ($account->picture && file_exists($account->picture)) {
$picture = file_create_url($account->picture);
}

ein

if ($account->picture && file_exists($account->picture)) {
$picture = file_create_path($account->picture);
}

mache.

Habe ich etwas falsch installiert oder so? Habe Drupal 5.x und die letzte ImageCache Version druff.

Der löst sonst bei mir die URL des Bildes nicht auf und damit generiert es dann ImageCache bei mir auch nicht.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich wiederhole:

Eingetragen von quiptime (4972)
am 14.12.2007 - 19:36 Uhr
quiptime schrieb

Tja, damit es nicht zu abstrakt wird.

Welches Gaestebuch verwendest Du? Poste mal den Code Deines Gaestebuch-Template.

PS
Du hast dem Userprofil-Image fuer die Usernode in der Inhaltstyp-Konfiguration der Usernode bereits das Preset 'medium' zugewiesen? Wirklich?

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

@quiptime Ok es gibt drei

Eingetragen von Mattes (233)
am 14.12.2007 - 22:35 Uhr

@quiptime
Ok es gibt drei Dateien die ich für folgendes Gästebuch-Modul verwende: http://drupal.org/project/guestbook

guestbook.tpl.php

<!--This themes the guestbook as a whole-->

<div id="guestbook-intro">
  <?php
  $intro
= _guestbook_info($uid, 'intro');
  if (!empty(
$intro)) {
    print
"<strong>Owner's note:</strong><br />" . check_markup($intro);
  }
 
?>

</div>

<div id="guestbook-entry-form">
  <?php print guestbook_form_entry($uid) ; ?>
</div>

<div id="guestbook-pager"> 
  <?php print theme('pager', NULL, $limit, 0) ;?>
</div>

<div id="comments guestbook-comments">
  <?php
 
foreach ($entries as $entry) {
    print
theme('guestbook_entry', $uid, $entry, $comment_entry);
  }
 
?>

</div>
 
<div id="guestbook-pager"> 
  <?php print theme('pager', NULL, $limit, 0) ;?>
</div>

guestbook-entry.tpl.php

<?php
  $entrywriter
= user_load(array('uid' => $entry['author']));
  if (
$entrywriter->uid == $uid) {
   
$extraclass = "ownguestbook" ;
  } else {
   
$extraclass = "";
  }
?>


<div class = "comment guestbook-entry <?php print $extraclass ?>">
  <div class="comment-left">
    <div class="author-name">
      <?php print theme('username', $entrywriter); ?>
    </div>
   
 
<?php print theme('user_picture', $entrywriter, 'thumb'); ?>


   
  </div>
 
  <div class="comment-right">
    <div class="post-info">
      <span class="postedon"><?php print format_date($entry['created'], 'medium');?></span>
    </div>
   
    <br class="clear" />

    <div class="content">
      <?php
     
print check_markup($entry['message'], variable_get('guestbook_input_format',1));
     
?>

    </div>
   
    <br class="clear">
  </div>
 
    <div class="links">
      <?php
     
if (_guestbook_access('administer', $uid) && !$confirm_delete) {
        if (
$comment_entry != $entry['id']) {
         
$pager = $_GET['page'] ? 'page='. $_GET['page'] : NULL;
          print
l(t('Delete entry'), "guestbook/$uid/delete/{$entry['id']}", array(), $pager);
        }
      }
     
?>

    </div>

  <br class="clear" />

</div>

und zu guter letzt guestbook-form-entry-form.tpl.php

<?php
  $access
= $form['access']['#value'];
 
$display = $form['display']['#value'];
 
$uid = $form['uid']['#value'];

  switch (
$access) {
    case
'not logged in':
      print
'<p class="links">&raquo; '. t('You must be logged in to post a comment.') .'</p>';
      break;  
    case
'not allowed':
      print
'<p class="links">&raquo; '. t('You are not allowed to post in this guestbook.') .'</p>';
      break;  
    case (
'allowed' || 'own guestbook'):
      print
drupal_render($form);
      break;
  }
?>

Das Gästebuch-Modul ist aber etwas angepasst (von Michelle)

  • Anmelden oder Registrieren um Kommentare zu schreiben

@Mattes, Noch eine Wiederholung

Eingetragen von quiptime (4972)
am 14.12.2007 - 23:47 Uhr

Ok soweit.

Aber

Zitat:

PS
Du hast dem Userprofil-Image fuer die Usernode in der Inhaltstyp-Konfiguration der Usernode bereits das Preset 'medium' zugewiesen? Wirklich?

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

OK, wir brauchen nur das

Eingetragen von quiptime (4972)
am 15.12.2007 - 01:07 Uhr

OK, wir brauchen nur das "guestbook-entry.tpl.php".

Bevor es weitergehen kann. In welchen Formaten/Dateinamen existiert ein Userimage?

Gibt es ein Userimage in /imagecache/vorgesehenes-Preset/ ?

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Also es gibt in beiden

Eingetragen von Mattes (233)
am 15.12.2007 - 01:48 Uhr

Also es gibt in beiden Ordnern ein entsprechendes Bild es sind JPG's. die Dateien liegen jeweils entsprechend des Presets in:
/files/imagecache/thumb/files/pictures/picture-1.jpg(42x42)
/files/imagecache/medium/files/pictures/picture-1.jpg (152x152)

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich habe noch nicht kapiert

Eingetragen von quiptime (4972)
am 15.12.2007 - 02:41 Uhr

Ich habe noch nicht kapiert welches Preset fuer die Anzeige in der Galerie zustandig ist.

Probiere mal, in der "guestbook-entry.tpl.php" den Code

<?php
print theme('user_picture', $entrywriter, 'thumb');
?>

mit diesem Code zu ersetzen

<?php
print theme('imagecache', 'thumb', '/files/pictures/'.variable_get('user_picture_default', ''));
?>

oder als Variante
<?php
print theme('imagecache', 'thumb', variable_get('user_picture_default', ''));
?>

Entscheidend ist '/files/pictures/'.variable_get('user_picture_default', '') bzw. variable_get('user_picture_default', '').

Falls/da vermutlich kein Bild angezeigt wird poste bitte den HTML Quellcode des Image bzw. welcher Pfad im img Tag fuer das Bild verwendet wird.
Wenn kein Bild angezeigt wird muss die Angabe mit '/files/pictures/'.variable_get('user_picture_default', '') bzw. variable_get('user_picture_default', '') korrigiert werden.

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hab die erste Variant

Eingetragen von Mattes (233)
am 15.12.2007 - 03:09 Uhr

Hab die erste Variant angepasst und erhalte nun das Default-image was auch in dem thumbordner liegt.
Obwohl es für den Benutzer ein Bild gibt. Das Default-image hat aber die richtige Größe :)

Hier die Anpassung (Ich habe nur den Pfad modifiziert, er hat vorher ins Datennirvana geführt)

<?php
print theme('imagecache', 'thumb', 'files/'.variable_get('user_picture_default', ''));
?>

  • Anmelden oder Registrieren um Kommentare zu schreiben

Das bedeutet, im Gaestebuch

Eingetragen von quiptime (4972)
am 15.12.2007 - 03:13 Uhr

Das bedeutet, im Gaestebuch wird nun das gewollte Userimage angezeigt? Problem geklaert?

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Noch nicht ganz, da immer

Eingetragen von Mattes (233)
am 15.12.2007 - 03:20 Uhr

Noch nicht ganz, da immer das default-image anzeigt wird, was ja nur dann angezeigt werden soll wen der Benutzer kein eigenes Bild von sich hoch geladen hat. Es gibt für meinen Testbenutzer ein eigenes Bild, wenn ich mit ihm dann in ein fremdes Profil einen Gästebuch schreibe soll ja dort auch neben dem Eintrag sein verkleinertes Bild erscheinen. So wie hier im Forum (dein und mein Avatar z.B.)

  • Anmelden oder Registrieren um Kommentare zu schreiben

Na ok, dann muessen wir noch

Eingetragen von quiptime (4972)
am 15.12.2007 - 03:34 Uhr

Na ok, dann muessen wir noch das richtige Bild rausfischen, wenn das Format schon mal stimmt.

Im Templatecode der Datei gibt es bereits Ansatzpunkte.

Ziehe mir schnell 'nen Kaffe rein. Wenn Du noch ein wenig am Rechner bist koennen wir das Prob Heute noch klaeren.

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Klar gerne, bist mir echt ne

Eingetragen von Mattes (233)
am 15.12.2007 - 03:37 Uhr

Klar gerne, bist mir echt ne riesen Hilfe. :)

  • Anmelden oder Registrieren um Kommentare zu schreiben

theme_user_picture($account)

Eingetragen von quiptime (4972)
am 15.12.2007 - 04:07 Uhr

theme_user_picture($account)

$account ist die User ID

Die gibt es im "guestbook-entry.tpl.php" mit $entrywriter = user_load(array('uid' => $entry['author']))

Also sollte $entrywriter die User ID sein.

In der Funktion theme_user_picture() wird dies gemacht:

<?php
if ($account->picture && file_exists($account->picture)) {
 
$picture = file_create_url($account->picture);
}
else if (
variable_get('user_picture_default', '')) {
 
$picture = variable_get('user_picture_default', '');
}
?>

Man sollte also damit das Userimage erhalten. Nun koennte man so probieren:
<?php
if ($entrywriter->picture && file_exists($entrywriter->picture)) {
 
$picture = file_create_url($entrywriter->picture);
}
else if (
variable_get('user_picture_default', '')) {
 
$picture = variable_get('user_picture_default', '');
}
?>

 

Daraus ergibt sich als Code fuer die "guestbook-entry.tpl.php":

<?php
if ($entrywriter->picture && file_exists($entrywriter->picture)) {
 
$picture = file_create_url($entrywriter->picture);
}
else if (
variable_get('user_picture_default', '')) {
 
$picture = variable_get('user_picture_default', '');
}
print
theme('imagecache', 'thumb', 'files/'.$picture);
?>

Bin mir nicht sicher ob das funktioniert. Was enthaelt die Variable $picture ?
-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Andererseits wird in

Eingetragen von quiptime (4972)
am 15.12.2007 - 04:21 Uhr

Andererseits wird in "guestbook-entry.tpl.php" mit

<?php
$entrywriter
= user_load(array('uid' => $entry['author']))
?>

ein Userobjekt geladen.

Mit print_r($entrywriter) kann man sich anzeigen lassen ob das Objekt das Userimage enthaelt.

Kannst Du das mal testen?

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Wenn ich das richtig

Eingetragen von Mattes (233)
am 15.12.2007 - 04:23 Uhr

Wenn ich das richtig verstehe enthält $picture den Pfad zu dem Standart userbild. Im Quelltext sieht es folgendermaßen aus: http://www.meineDomain.de/files/pictures/picture-1.jpg

Hier noch mal die komplette ausgabe:

  <div class="author-name">

      <a href="/user/1" title="Benutzerprofil anzeigen." class="active">Admin</a>    </div>
   
 
<img src="http://www.meineDomain.de/files/imagecache/thumb/files/http://www.meineDomain.de/files/pictures/picture-1.jpg" alt="" title="">   
  </div>

  • Anmelden oder Registrieren um Kommentare zu schreiben

Jep, er schmeißt das aus:

Eingetragen von Mattes (233)
am 15.12.2007 - 04:26 Uhr

Jep, er schmeißt das aus: [picture] => files/pictures/picture-1.jpg

  • Anmelden oder Registrieren um Kommentare zu schreiben

Also wird davon nur "picture-1.jpg" benoetigt. Richtig?

Eingetragen von quiptime (4972)
am 15.12.2007 - 04:32 Uhr
Mattes schrieb

Jep, er schmeißt das aus: [picture] => files/pictures/picture-1.jpg

Also wird davon nur "picture-1.jpg" benoetigt. Richtig?

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Also wird davon nur "picture-1.jpg" benoetigt. Richtig?

Eingetragen von quiptime (4972)
am 15.12.2007 - 04:30 Uhr
Mattes schrieb

Jep, er schmeißt das aus: [picture] => files/pictures/picture-1.jpg

Also wird davon nur "picture-1.jpg" benoetigt. Richtig?

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Wenn ich das richtig

Eingetragen von Mattes (233)
am 15.12.2007 - 04:33 Uhr

Wenn ich das richtig verstehe dann Jep.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Der Code fuer die guestbook-entry.tpl.php

Eingetragen von quiptime (4972)
am 15.12.2007 - 04:40 Uhr

Der Code fuer die guestbook-entry.tpl.php

<?php
$user_picture
= preg_replace("/.*\//", "", $entrywriter['picture']);
print
theme('imagecache', 'thumb', 'files/'.$user_picture);
?>

Eventuell muss der Pfad 'files/'.$user_picture korrigiert werden.

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ne, so erhalte ich leider

Eingetragen von Mattes (233)
am 15.12.2007 - 04:44 Uhr

Ne, so erhalte ich leider nur folgenden error:

Fatal error: Cannot use object of type stdClass as array in /home/www/..../guestbook-entry.tpl.php on line 18

  • Anmelden oder Registrieren um Kommentare zu schreiben

Und so?

Eingetragen von quiptime (4972)
am 15.12.2007 - 04:47 Uhr

<?php
$user_picture
= preg_replace("/.*\//", "", $entrywriter->picture);
print
theme('imagecache', 'thumb', 'files/'.$user_picture);
?>

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Super, jetzt zeigt er das

Eingetragen von Mattes (233)
am 15.12.2007 - 04:55 Uhr

Super, jetzt zeigt er das hochgeladene Benutzerbild an. Leider aber nicht mehr das Default-image des Users ohne eigenes Benutzerbild. Ist ja auch klar, da dieser in der var picture nichts drin stehen hat.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Die Variante, wenn kein

Eingetragen von quiptime (4972)
am 15.12.2007 - 04:58 Uhr

Die Variante, wenn kein Userimage da ist und deswegen das default Image verwendet werden muss ist noch einzubauen.

Schlage vor, das machen wir nach dem Wir ausgeschlafen haben.

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Gerne, danke für deine Zeit

Eingetragen von Mattes (233)
am 15.12.2007 - 05:02 Uhr

Gerne, danke für deine Zeit und deine Hilfe. Erholsame Nacht und bis Morgen.
Gruß Mattes

  • Anmelden oder Registrieren um Kommentare zu schreiben

Na schnell noch das mit dem User ohne Image

Eingetragen von quiptime (4972)
am 15.12.2007 - 05:05 Uhr

Na schnell noch das mit dem User ohne Image:

<?php
if ($entrywriter->picture) {
 
$user_picture = preg_replace("/.*\//", "", $entrywriter->picture);
}
else (
variable_get('user_picture_default', '')) {
 
$user_picture = variable_get('user_picture_default', '');
}
print
theme('imagecache', 'thumb', 'files/'.$user_picture);
?>

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Dann erhalte ich einen

Eingetragen von Mattes (233)
am 15.12.2007 - 05:16 Uhr

Dann erhalte ich einen Syntax-Error das in der Zeile :

else (variable_get('user_picture_default', '')) {

das '}' falsch ist wenn ich davor ein Semikolon packe zeigt er mir wieder nur das Default-image an.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Sorry, logisch. Das

Eingetragen von quiptime (4972)
am 15.12.2007 - 05:19 Uhr

Sorry, logisch. Das geht:

<?php
if ($entrywriter->picture) {
 
$user_picture = preg_replace("/.*\//", "", $entrywriter->picture);
}
else {
 
$user_picture = variable_get('user_picture_default', '');
}
print
theme('imagecache', 'thumb', 'files/'.$user_picture);
?>

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Jetzt gibt's nur noch einen

Eingetragen von Mattes (233)
am 15.12.2007 - 05:27 Uhr

Jetzt gibt's nur noch einen kleinen Fehler, wen der Pfad so aussieht: 'files/pictures/'
lädt er das Bild des Benutzers der ein Bild hochgeladen hat. Der 'default_image' Pfad sieht dann so aus:
thumb/files/pictures/pictures/img_nobody.gif
wenn das pictures fehlt ist es genau anders herum.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Falls ich Dich richtig

Eingetragen von quiptime (4972)
am 15.12.2007 - 05:37 Uhr

Falls ich Dich richtig verstanden habe. So:

<?php
if ($entrywriter->picture) {
 
$picture = preg_replace("/.*\//", "", $entrywriter->picture);
 
$user_picture ='files/'.$picture;
}
else {
 
$user_picture = variable_get('user_picture_default', '');
}
print
theme('imagecache', 'thumb', $user_picture);
?>

Passe gegebenfalls in if un else die Pfade entsprechend an. Oder meinst Du es anders herum? Dann so:

<?php
if ($entrywriter->picture) {
 
$user_picture = preg_replace("/.*\//", "", $entrywriter->picture);
}
else {
 
$user_picture = 'files/'.variable_get('user_picture_default', '');
}
print
theme('imagecache', 'thumb', $user_picture);
?>

 

Zitat:

Jetzt gibt's nur noch einen kleinen Fehler, wen der Pfad so aussieht: 'files/pictures/'
lädt er das Bild des Benutzers der ein Bild hochgeladen hat. Der 'default_image' Pfad sieht dann so aus:
thumb/files/pictures/pictures/img_nobody.gif
wenn das pictures fehlt ist es genau anders herum.

Das verstehe ich nicht. Kannst Du das verstaendlicher formulieren. Wann ist welcher Pfad wie falsch?

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Nun läufts rund!!! Echt

Eingetragen von Mattes (233)
am 15.12.2007 - 05:39 Uhr

Nun läufts rund!!!
Echt klasse das du dir die Zeit genommen hast. Nun wünsch ich dir endlich einen angenehmen Feierabend *g
Also bis die Tage Mattes

  • Anmelden oder Registrieren um Kommentare zu schreiben

Du bist aber noch nicht ganz

Eingetragen von quiptime (4972)
am 15.12.2007 - 05:42 Uhr

Du bist aber noch nicht ganz fertig.

1.
Welche Variante ist nun richtig?

2.
Du musst glaube ich in der "template.php" die ueberfluessige Eintragung mit

// Theme override for user.module which retains original user settings picture and profile links

rausschmeissen.

Bis Morgen.

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Diese Variante ist nun die

Eingetragen von Mattes (233)
am 15.12.2007 - 05:53 Uhr

Diese Variante ist nun die "Richtige":

<?php
if ($entrywriter->picture) {
 
$picture = preg_replace("/.*\//", "", $entrywriter->picture);
 
$user_picture ='files/pictures/'.$picture;
}
else {
 
$user_picture = variable_get('user_picture_default', '');
}
print
theme('imagecache', 'thumb', $user_picture);
?>

Habe gerade gemerkt das das wegen des anderen presets nicht so ohne weiteres geht. Das größere Profilbild wird darüber gesteuert. Also lass ich es nun erst mal so wie es ist und wenn ich es modifiziere, dann Poste ich die Modifizierung noch mal hier rein.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Mit dem preg_replace wird

Eingetragen von quiptime (4972)
am 16.12.2007 - 00:57 Uhr

Mit dem preg_replace wird files/pictures/ entfernt und nachher wieder eingefuegt. Also kann man das weglassen.

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hast du noch ne Idee wie ich

Eingetragen von Mattes (233)
am 16.12.2007 - 01:05 Uhr

Hast du noch ne Idee wie ich die Template.php bezüglich des Imagecache-Codes anpassen kann?
Was mich ja total wundert ist das der Code zwar Einfluss auf das normale Userbild (medium) hat aber nicht auf die anderen Userbilder (thumb).

  • Anmelden oder Registrieren um Kommentare zu schreiben

Kannst Du das anders

Eingetragen von quiptime (4972)
am 16.12.2007 - 01:48 Uhr

Kannst Du das anders formulieren? Kapiere nicht was Du meinst.

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ist auch nicht so wichtig ,

Eingetragen von Mattes (233)
am 16.12.2007 - 02:02 Uhr

Ist auch nicht so wichtig , es funktioniert ja. Aber ne andere Frage/Thema, ich habe im meinem Profil auch eine Übersicht, der Benutzer die meine Freunde sind (Buddys), da besteht das gleiche Problem wie bei dem Gästebuch, ist aber anders aufgebaut. Soll ich für die Frage lieber ein neues Thema aufmachen?!

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ja, neuen Thread aufmachen.

Eingetragen von quiptime (4972)
am 16.12.2007 - 02:07 Uhr

Ja, neuen Thread aufmachen. Bitte mit moeglichst genauer Problembeschreibung

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

drupal 6 theme_user_picture

Eingetragen von md (3717)
am 18.09.2008 - 14:05 Uhr
quiptime schrieb

Nebenbei gesagt, in Drupal 6 gibt es diese Theme Funktion nicht mehr.

Das hab ich bis gerade auch geglaubt. Aber offensichtlich ist sie leider nur aus der API-Dokumentation verschwunden. Ich kann sie auf jeden Fall aufrufen!
Und im User-Modul ist dieser Code zu finden:

<?php
function user_user($type, &$edit, &$account, $category = NULL) {
  if (
$type == 'view') {
   
$account->content['user_picture'] = array(
     
'#value' => theme('user_picture', $account),
     
'#weight' => -10,
    );
?>

Ich hatte mich auch schon gewundert, warum eine so fundamentale Funktion ersatzlos gestrichen sein sollte.

vg
--
md - DrupalCenter

mdwp* :: Drupal Services

vg
md - DrupalCenter.de

mdwp* Drupal Consulting & Services

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Schriftgröße standard einstellen
  • PHP 8.1 - Deprecated function: rtrim()
  • Drupal Website gestalten
  • MariaDB 10.6
  • Entity Reference - Title Felder werden als Link angezeigt
  • Tokens werden in Viev als Link angezeigt
  • [bug entdeckt & workaround gefunden] benutzerdefinierte Felder vom Userprofil tauchen ungefragt auch in den Forumtopics auf...
  • [gelöst] Mass contact Empfängerliste nach Taxonomy Term statt Rolle
  • Update V. 9.3.12 auf V. 9.4 mit Fehler: Modul mySQL fehlt. Bitte Hilfe.
  • Sprachpfad, in Drupal Korrekt einstellen, auch bei den Meta-Tags
  • Update von Drupal 9.3 auf 9.4 oder bei 9.3 bleiben
  • Terminverwaltung
Weiter

Neue Kommentare

  • core_version_requirement: ^8
    vor 2 Stunden 48 Minuten
  • core_version_requirement: ^8
    vor 2 Stunden 50 Minuten
  • ok. Wenn ich das mache
    vor 2 Stunden 56 Minuten
  • Bei gleichem Namen hat das
    vor 3 Stunden 29 Minuten
  • Sorry, dass ich mich hier
    vor 3 Stunden 41 Minuten
  • Habe Patch versucht
    vor 10 Stunden 39 Minuten
  • Hier wird ein Patsch
    vor 12 Stunden 29 Minuten
  • Mit Drupal geht das um 150
    vor 23 Stunden 39 Minuten
  • Ah, ok. Wenn es ein Paragraph
    vor 1 Tag 23 Stunden
  • Also kleiner Nachtrag noch:
    vor 2 Tagen 36 Minuten

Statistik

Beiträge im Forum: 247863
Registrierte User: 19590

Neue User:

  • Tkakah
  • JeraldFub
  • andycrestodina

» Alle User anzeigen

User nach Punkten sortiert:
wla9213
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3845
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 8 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