Personalizzazione di un field di tipo immagine in note.tpl.php

11 contenuti / 0 new
Ultimo contenuto
Personalizzazione di un field di tipo immagine in note.tpl.php

Ho creato un tipo di contenuto e ora ne vorrei personalizzare il template mediante la modifica del file node--[tipo di contenuto].tpl.php. Ho personalizzato tutti i vari field presenti nel contenuto, fatta eccezione del field di tipo immagine.
Gli altri field li ho personalizzati con l'aiuto del modulo "devel" seguendo, per esempio, il seguente codice codice:
<?php print $node->nome macchina del field['und'][0]['value']; ?>

Ora per un field di dipo immagine devel mi da i seguenti parametri:
nome-field-tipo.immagine (Array, 1 element)
und (Array, 4 elements)
0 (Array, 13 elements)
fid (String, 2 characters ) 62
alt (String, 0 characters )
title (String, 0 characters )
width (String, 3 characters ) 259
height (String, 3 characters ) 194
uid (String, 1 characters ) 1
filename (String, 9 characters ) colpa.jpg
uri (String, 29 characters ) public://produzioni/colpa.jpg
filemime (String, 10 characters ) image/jpeg
filesize (String, 4 characters ) 9317
status (String, 1 characters ) 1
timestamp (String, 10 characters ) 1370955815
rdf_mapping (Array, 0 elements)
Ora sovolando il fatto vi sono più immagini caricate nel fiel, come posso far stampare l'immagine in node?

Grazie a tutti.

Drupal Version:

Come dico sempre, io il PHP lo capisco ma non lo parlo, ma a occhio non dovrebbe essere eccessivamente complicato costruirti la stringa definitiva dell'URL troncando l'URI e sostituendo la parte iniziale con il token che rappresenta la cartella pubblica dei file.
(Si è capito cosa ho detto con linguaggio da cani?)

...enter at your own risk...

ahahahah guarda o trovato in devel iln parametro che mi serve, ora te lo posto:
Sono nel tabs "Presentazione" di devel e mi da questa lista
... (Array, 20 elements)

...omissis....
field_pro_imgslide (Array, 19 elements)
#theme (String, 5 characters ) field
#weight (String, 1 characters ) 9
#title (String, 4 characters ) Foto
#access (Boolean) TRUE
#label_display (String, 6 characters ) hidden
#view_mode (String, 4 characters ) full
#language (String, 3 characters ) und
#field_name (String, 18 characters ) field_pro_imgslide
#field_type (String, 5 characters ) image
#field_translatable (String, 1 characters ) 0
#entity_type (String, 4 characters ) node
#bundle (String, 10 characters ) produzione
#object (Object) stdClass
#items (Array, 4 elements)
#formatter (String, 38 characters ) lightbox2__lightshow__medium__original
0 (Array, 8 elements)
#theme (String, 15 characters ) lightbox2_image
#item (Array, 13 elements)
#lightbox_type (String, 9 characters ) lightshow
#image_style (String, 6 characters ) medium
#lightbox_style (NULL)
#path (Array, 2 elements)
path (String, 68 characters ) http://www.miosito.it/sites/default/files...
options (Array, 0 elements)
#node_id (String, 2 characters ) 44
#field_name (String, 18 characters ) field_pro_imgslide

Ora se nel tabs "load" di devel ho questo:

... (Object) stdClass
...omissis..
field_pro_foto (Array, 1 element)
und (Array, 1 element)
0 (Array, 3 elements)
value (String, 29 characters ) Mario Bianchi

e se uso questo codice funziona tutto:
<?php print $node->field_pro_foto['und'][0]['value']; ?>
però non mi funziona con i parametri passati in "presentazione"

Il duro lavoro fatto con passione, ripaga sempre!!!!

risolto con questo codice
<?php print render($content['field_pro_imgslide'][0]['#path']['path']); ?>

Il duro lavoro fatto con passione, ripaga sempre!!!!

Ottimo!

...enter at your own risk...

:-)

Il duro lavoro fatto con passione, ripaga sempre!!!!

Ora però si pone un altro problema. Con il codice sopra riesco a stampare l'url dell'immagine in modo da poterlo inserire nel tag img. Ora però l'immagine dovrebbe avere un formato prestabilito, indipendentemente dall'immagine caricata. Come posso ottenere questo?

Il duro lavoro fatto con passione, ripaga sempre!!!!

intendi i formati preimpostati da imagecache tipo thumbnail medium original etc.?

...enter at your own risk...

esatto, ma credo di aver risolto scrivendo i parametri direttamente nel tag img

Il duro lavoro fatto con passione, ripaga sempre!!!!

Ciao, scusa ma sono tornato sul forum dopo mesi di assenza e mi sono imbattuto in questo post...

ti posso chiedere per quale motivo modifichi il field immagine da
node--tipocontenuto.tpl.php
e non lo fai invece da
template.php

dove ti puoi agganciare a hook__image e fare quello che ti pare?

esempio:

function TUOTEMA_image($variables) {
   return '<img class="'.$variables['style_name'].'" src="'.$attributes['src'].'" />';
}

in questo modo prima di ritornare il codice puoi cambiare lo style desiderato

...
$variables['style_name']=TUOSTILE;
...

Bella dritta, ora la provo anche questa. Ben tornato nel forum!!!!

Il duro lavoro fatto con passione, ripaga sempre!!!!