Probleme auf Userbild zuzugreifen

am 31.07.2008 - 23:02 Uhr in
Nutze ein Theme (ad lemon twist), in welchem neben dem Kommentar das Userbild aus dem Profil angezeigt werden soll. Hat der User keins, so wird das Standardbild genommen.
Für das Profil klappt das alles super, aber beim Kommentar wirft er einfach nix aus.
könnt ihr euch mal ne Code anschauen...
comment.tpl.php
<div class="comment-picture">
<?php print $picture ?>
</div>
<div class="comment<?php print ($comment->new) ? ' comment-new' : ''; print ($comment->status == COMMENT_NOT_PUBLISHED) ? ' comment-unpublished' : ''; ?> clear-block">
<div class="comment1"><div class="comment2">
<?php if ($comment->new) : ?>
<a id="new"></a>
<span class="new"><?php print $new ?></span>
<?php endif; ?>
<div class="submitted">
<?php print $submitted ?>
</div>
<span class="clear"></span>
<div class="content">
<?php print $content ?>
<div class="user-signature clear-block">
<?php print $signature ?>
</div>
</div>
<?php print $links ?>
</div></div></div>
In der anzeigten Seite taucht das Bild nicht auf...
Hier ein Auszug aus dem Quelltext der angezeigten Seite
<div id="comments">
<a id="comment-6"></a>
<div class="comment-picture">
</div>
<div class="comment clear-block">
<div class="comment1"><div class="comment2">
wie man sieht wird die "Bildabfrage" einfach ignoriert.
Habt ihr eine Lösung?
- Anmelden oder Registrieren um Kommentare zu schreiben
Grundsaetzlich ist es nicht
am 01.08.2008 - 01:52 Uhr
Grundsaetzlich ist es nicht schlecht zu wissen welche Drupalversion verwendet wird.
Loesungsansatz, Idee
Wenn der Kommentar zusammen mit der Node angezeigt wird kennt man die Node ID.
Wenn das Nodeobject in der comment.tpl.php verfuegbar ist kommt man an das Userimage ran ( user_load() ).
Wenn das Nodeobject in der comment.tpl.php NICHT verfuegbar ist wird es mittels der Node ID geladen ( node_load() ) und dann kommt man an das Userimage ran ( user_load() ).
Nodeobject ansehen:
<?php
print_r($node);
?>
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Füge ich den Code in die
am 01.08.2008 - 09:04 Uhr
Achja... Version 6.3
Füge ich den Code in die comment.tpl.php ein, so wirft er mir folgendes aus:
stdClass Object ( [nid] => 9 [type] => forum [language] => de [uid] => 1 [status] => 1 [created] => 1217534172 [changed] => 1217534172 [comment] => 2 [promote] => 0 [moderate] => 0 [sticky] => 0 [tnid] => 0 [translate] => 0 [vid] => 9 [revision_uid] => 1 [title] => blablabla[body] =>
Testeintrag
‹ blablablablabla› [log] => [revision_timestamp] => 1217534172 [format] => 2 [name] => Webmaster [picture] => [data] => a:3:{s:14:"picture_delete";i:1;s:14:"picture_upload";s:0:"";s:13:"form_build_id";s:37:"form-9a01e8ffba218de3b2eae4230c3ea957";} [tid] => 2 [path] => content/blablabla [last_comment_timestamp] => 1217535316 [last_comment_name] => [comment_count] => 2 [taxonomy] => Array ( [2] => stdClass Object ( [tid] => 2 [vid] => 1 [name] => Katzen & Hunde [description] => [weight] => -9 ) ) [forum_tid] => 2 [build_mode] => 0 [readmore] => [content] => Array ( [body] => Array ( [#weight] => 0 [#value] =>
blablablablabla
[#title] => [#description] => [#printed] => 1 ) [forum_navigation] => Array ( [#weight] => 100 [#value] => ‹ hmmmmmmmmmmmmm › [#title] => [#description] => [#printed] => 1 ) [#title] => [#description] => [#children] =>
rrrrrrrrrrrrrrrrr
‹ ttttttttttttttttttttttttttttt › [#printed] => 1 ) [links] => Array ( [comment_forbidden] => Array ( [title] => Kommentar schreiben: Anmelden / Registrieren [html] => 1 ) ) )
Textinhalte habe ich durch fiktiven Text exsetzt.
Warum er mir das Bild nicht anzeigt, ist für mich nicht ersichtlich. Bin leider PHP-Noob
Dankeschön schonmal :)
Zitat: stdClass Object (
am 01.08.2008 - 09:19 Uhr
stdClass Object ( [nid] => 9 [type] => forum [language] => de [uid] => 1
Die Node ist vom User mit der ID 1
Nun noch ein kurzer Denkfehler von mir. Du willst ja an die Userimages der User die die einzelnen Kommentare erstellt haben rankommen.
Commentobject
Es gibt das Commentobject.
<?php
print_r($comment);
?>
Mit der Ausgabe des Commentobjectes sollte die ID des Users welcher den Kommentar geschrieben hat angezeigt werden.
Vermutlich kann man die ID des Kommentaruser so anzeigen:
<?php
print $comment->uid;
?>
Userboject
Mit der ID des Kommentaruser wird das Userobject geladen:
<?php
user_load($comment->uid);
?>
Dann kann man sich das Userobject ansehen:
<?php
print_r($user);
?>
Im Userobject sollte die Information des Userimage enthalten sein.
Poste bitte mal die Ausgabe von print_r($user)
PS
Warum
<?php
print $picture
?>
Deine Drupalversion ist immer noch offen!
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Hatte oben schon
am 01.08.2008 - 09:41 Uhr
Hatte oben schon hinzugefügt... nutze Version 6.3
mit diesem Theme hier: Ad Lemon Twist
Das gleiche Theme vom selben Autor existiert auch für Wordpress.
Hier ein Beispiel wie es aussehen soll:
h**p://www.farfromfearless.com/2008/01/11/lemon-twist-v20-updated-wordpress-theme/
Man beachte die tollen Kommentare mit Userbild :)
Hier eine Testseite mit dem Drupaltheme, auf welchem auch keine Bilder angezeigt werden. (hier liegt es aber daran, dass nur Gäste gepostet haben)
h**p://www.duplika.com/blog/ad-lemon-twist
Laut README sollen das mit den Bildern aber funktionieren > Komisch :(
Hier der Code bei print_r($user);
stdClass Object ( [uid] => 1 [name] => Webmaster [pass] => xxxxxxxxxxxxxxxxxxxxxxxxxxx [mail] => xxxxxxxxxxx@xxxxxxxxx.com [mode] => 0 [sort] => 0 [threshold] => 0 [theme] => [signature] => [created] => 1216491479 [access] => 1217579226 [login] => 1217578212 [status] => 1 [timezone] => 3600 [language] => de [picture] => [init] => xxxxxxxxxxxx@xxxxxxxxxx.com [data] => a:3:{s:14:"picture_delete";i:1;s:14:"picture_upload";s:0:"";s:13:"form_build_id";s:37:"form-9a01e8ffba218de3b2eae4230XXXXX";} [sid] => eae5gc1da76gnre7pbd23jctj1 [hostname] => 79.229.XX.XX [timestamp] => 1217579226 [cache] => 0 [session] => FCKeditor|a:2:{s:13:"UserFilesPath";s:33:"/sites/default/files/userfiles/1/";s:21:"UserFilesAbsolutePath";s:69:"/is/htdocs/wp1090609_OYXXXXXX/www//sites/default/files/userfiles/1/";} [picture_delete] => 1 [picture_upload] => [form_build_id] => form-9a01e8ffba218de3b2eae423XXXXXX [roles] => Array ( [2] => authenticated user ) )
Habe wieder ein wenig zensiert :)
@Junker, kannst Du in den DVC (Mumble) kommen?
am 01.08.2008 - 09:53 Uhr
Ah, Drupal 6. Sorry das ich das uebersehen hatte.
Mit D6 gibt es eventuell eine andere, elegantere Loesung. Einen generischen View der Useimages anzeigt. Er hat in der URL ein Argument - die User ID. Aufruf eines solchen View etwa so: /userimage/ x Wobei x eine User ID ist.
Dieser View gibt in der comment.tpl.php die Userimages aus:
<?php
print views_embed_view('der_view_name_ueserimage_anzeige', 'default');
?>
Kannst Du in den DVC (Mumble) kommen?
Dann koennen wir drueber sprechen an Statt hier wie wild zu posten.
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
bin drin :)
am 01.08.2008 - 10:09 Uhr
bin drin :)
Nach langer Fehlersuche
am 01.08.2008 - 17:13 Uhr
Nach langer Fehlersuche mußte ich feststellen, dass die Userbildanzeige für Beiträge und Kommentare ausgeschaltet war.
Könnte mir in den Ar*** treten :)
Userbilder aktivieren
am 01.08.2008 - 17:30 Uhr
Userbilder aktivieren
Mit Clean URL's lautet der Pfad: /admin/build/themes/settings
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Kaffee?
am 01.08.2008 - 17:53 Uhr
Hattest Du Kaffee auf Deinen Bildschirm gekippt? :-)