node.tpl.php vs page.tpl.php

9 contenuti / 0 new
Ultimo contenuto
node.tpl.php vs page.tpl.php

Perdonate la mia ignoranza, ma non ho ancora capito la differenza sostanziale tra i seguenti 2 file:

node.tpl.php
page.tpl.php

Se non ho compreso male in page.tpl.php ci va inserito il codice relativo al layout delle varie pagine:

<body>
<div id="container">
  <?php print render($page['container']); ?>
  <div id="intestazione">
  <?php print render($page['intestazione']); ?>
</div><!--header-->
<div id="menu">
    <?php print render($page['menu']); ?>
<div class="clear"></div><!--clear-->

Ma non mi è chiaro cosa ci va messo in node.tpl.php.

Entrando nello specifico; mi sono creato il mio layout attraverso page.tpl.php e non ho avuto grossi problemi, contestualmente ho creato anche i vari blocchi, ed un contet-type ad hoc per le varie pagineche ho chiamato "articolo" e che deve contenere il testo dei vari articoli in content e le foto associate all'articolo posizionate nel box laterale al content una sotto l'altra.

Non mi è chiaro come fare per posizionare le immagini...su quale file dei due sopraelencati devo lavorare?
e come?

Cercando un pò in rete ho trovato questa guida che ho seguito alla lettera :
[url]http://www.drupal-expert.it/ritagliare-immagini-drupal.html[/url]
secondo la quale il file da modificare per posizionare le immagini dell'articolo è node.tpl.php, pur avendo seguito la guida le immagini caricate vengono visualizzate sempre nel conent sotto, il testo e non nel box laterale dove invece le vorrei posizionare.

Ma se il layout e i contenuti vengono gestiti attraverso page.tpl.php....questo node.tpl.php a cosa serve??

Drupal Version:

Ciao,
da un'occhiata a questa pagina: http://drupal.org/node/171194
L'immagini mi hanno aiutato molto a capire i temi in drupal ma soprattutto un attenta lettura della documentazione, che trovi anche a quella pagina, ti potrà essere di aiuto secondo me.

Consiglio per posizionare la/le immagine/i?! usa i CSS... con un programma (firebug o "strumenti di sviluppo di chrome" vedi come si chiama il campo (l'id del div o la classe) dove vengono inserite le immagini in visualizzazione e poi da li specifici tramite i css la posizione o altre caratteristiche delle immagini:)

Ovvio che una corretta personalizzazione del template sarebbe più giusto a mio avviso..

Luca grazie per la risposta ma il mio problema è più complicato e contorto.
Conosco Firebug e lo uso spesso; tuttavia in questo caso mi è poco d'aiuto.

In poche parole non sò come si fa per posizionare all'interno delle pagine un content-type appena creato.
Il content-type in questione è un articolo con del testo e con 5 immagini associate etichettate field_foto; quello che vorrei è posizionare queste immagibi nella sidebar sinistra e non sotto il testo dell'articolo...ma tramite la variabile content mi viene stampato tutto l'articolo immagini comprese...non riesco a gestire separatamente il testo dell'articolo e le immagini

così in velocità: crea un file articolo-node.tpl.php e al posto della variabile content metti i campi che ti interessano, poi via css definisci il layout.
Ciao!

Passione per Drupal
http://retialternative.it

ma non ho capito se vuoi che le immagini sia visualizzate in una regione che non c'entri nulla con quella dove viene "stampato" il contenuto o solamente dividere la gestione/"stampa" di ogni campo (testo, immagini)??

Ciao starbuck,
il file page.tpl.php contiene il layout dell'intera pagina, quindi dove vanno posizionate la varie regioni che compongono il tuo tema (le regioni sono le aree della pagina in cui poi vengono inseriti i blocchi). Il file node.tpl.php invece gestisce il layout del singolo content type, come la basic page o l'articolo che hai creato tu (quindi una porzione più piccola della pagina, contenuta all'interno di page.tpl.php).

Nello specifico puoi creare un file node--articolo.tpl.php per gestire il layout del solo content type articolo (o usare il modulo Display Suite): in questo modo puoi fare in modo che Drupal non stampi le immagini nel corpo del content type.

Dopodiché hai bisogno del modulo Views per creare un nuovo blocco che mostri le immagini del nodo articolo su cui sei. (questo è il passaggio più complicato)

Infine dall'interfaccia dei blocchi posizioni suddetto blocco nella regione del tema che più preferisci (nel tuo caso il box laterale).

CorsiDrupal.it - Formazione specializzata per Drupal
http://www.corsidrupal.it - 0287398638 - @CorsiDrupal
Corsi Base, Intermedi, Avanzati, in classe o da remoto, one-to-one, training on the job e percorsi personalizzati!

Grazie ....adesso ho capito ;-)

Però non mi è chiaro come collegare quanto scritto nel file node.tpl.php con il contenuto del file page.tpl.php

In poche parole come si posiziona il singolo node.content.tpl.php nel file page.tpl.php?

Allora sono riuscito a fare la vista contenente la lista delle immagini allegate all'articolo o anche creato il blocco della vista in modo da posizionarlo attraverso il menù blocco...cosa che ho fatto poco dopo, tuttavia le foto continuano ad essere visualizzate sotto il contenuto nell'articolo e non nel box immagini impostato attraverso i blocchi.

In poche parole l'array delle immagini è vuoto...però in view nell'anteprima non ci sono problemi.

Forse sbaglio qualcosa con i percorsi?

Finalmente ho risolto togliendo la spunta a CCK Blocks in

Nel menu Impostazioni di visualizzazione personalizzate ...relative al tipo di contenuto...

Qualcuno potrebbe spiegarmi perchè così funziona?