Det jag vill göra är att skriva ut en bilds url till originalet och thumbnailen i en speciell doctype.
I node--test.tpl behöver jag få ut URL:en till originalet i en länk tillsammans med fältet "title" utskrivet och som klickbar länk behövs thumbnailen. De guider jag kikat på saknar info om hur jag printar en thumbnail i node--XXX.tpl och/eller hur man skriver ut specifika delar av image_field där url är en del.
Så är det någon som vet hur man går tillväga för att skriva ut en bilds URL i node.tpl (från field_image) samt dess thumbnail?
Guider jag kikat på är bl.a. http://drupal.org/node/1115204
EDIT: Kom på en workaround som dock inte känns ok... I CKEditor kan man klicka i title på länkar och i länkarna lägga in bilder. Det är dock lite omständigt och borde gå att jobba sig runt på ett snyggare sätt.
Comments
Content Template is easier
I would use the content template module instead. If you click on the body area you get a list of possibilities for output to screen. Easier than trying to figure out the variables yourself. Use CCK imagefield and imagecache to make the variables available in the content template module.
Edit: This is a D6 answer. I have not studied content template in D7 yet.
Carl McDade
Drupal Source Exchange - alpha
Thanks
I'll check out the use of a module separate for this, however I do use Drupal 7 and I want most functions in my own code and not in additional modules.
/Victor
The Code way
The code way ( which I think is best 99% of the time BTW ) is to use var_dump or print_r on the $content variable or $node variable (depends on the Drupal version) to get the whereabouts of the values needed. Then use <?php print render($content['body']); ?> to place the values in your HTML or PHP output.
Carl McDade
Drupal Source Exchange - alpha
Det låter som att det du
Det låter som att det du försöker göra går att lösa med views och eva.
Men om du vill använda node.tpl.php så kan du först göra en preprocess i template.php och skapa ett par nya variabler.
<?phpTHEMENAME_preprocess_node(&$vars) {
if ($vars['type'] == 'NODETYPE') {
$uri = $vars['field_image'][0]['uri'];
$url = file_create_url($uri);
$vars['image_url'] = l($url, $url);
$vars['image_thumbnail'] = l(theme_image_style(array('path' => $uri, 'style_name' => 'thumbnail', )), $url, array('html' => TRUE));
}
}
?>
Och sedan kan du använda
$image_urloch$image_thumbnaili din node.tpl.php<?phpecho $image_thumbnail;
echo $image_url;
?>
Funktionerna jag har använt kan du läsa mer om här: l, file_create_url, theme_image_style
Glöm inte att ändra THEMENAME till namnet på ditt tema NODETYPE till namnet på din nodtyp. Du kan också behöva ändra
$vars['field_image'][0]['uri']så att det passar ditt fälts namn, aktivt språk m.m. Använd devel för att få ut vad du har att jobba med.Joakim Lundberg | Kollegorna
Som Joakim säger kan du lösa
Som Joakim säger kan du lösa det med en template funktion, views + eva och jag tror även Display Suite kan fixa det där. Eller kanske ännu enklare använda Panels för att ta över visningen av sidan och där i lägga till fältet två gånger med olika formatering. tpl-filer blir lite jobbigt i längden att underhålla när du vill förändra befintligt beteende imo.
//Pontus Nilsson, Digitalist
Tackar för hjälpen
Tack så mycket. Har börjat jobba med views nu.