The variable in node.tpl.php that stores the user picture is (aptly named) $picture. In the template file, just put a conditional statement that uses $picture only if it contains something:
<?php if ($picture): ?> <div id='user_picture'> <?php print $picture; ?> </div> <!--end picture div--> <?php endif; ?>
That way. the user_picture div only exists if there is actually a picture. This is the way that regions are commonly laid out in a page so that they don't show up if they don't contain any content.
Steve
Christopher M. Jones wrote:
Thanks, yes. I assumed that step. To clarify: I have pictures enabled and they show in my templates. But where no picture exists, because the user has not uploaded one, I have a link that reads "username's picture". I not only want to remove that link but I want to adjust the layout to compensate for the lack of a picture.
Dale McGladdery wrote:
You didn't mention turning on Picture Support in user settings. To do so go to Adminster | User management | User settings (/admin/user/settings) and scroll down to the "Picture support" section. This is where you select you default picture, as well.
On Mon, Dec 1, 2008 at 10:13 AM, Christopher M. Jones cjones@partialflow.com wrote:
I'm using Drupal five, building a theme off of Zen. I want to optionally display a user's picture in posts, so that if the user has uploaded a picture then it is displayed, and if not then the teaser view shifts left to occupy that space.
So I turned on pictures in the theme configuration. But now, where there is no picture available, I have a "soandso's picture" link.
Specifically: I want if( $picture ){...} in the .tpl.php file to evaluate to FALSE if there is no picture, TRUE if there is one. How can I get this behavior? Is there a theme override that I'm missing?
-- [ Drupal support list | http://lists.drupal.org/ ]