Sto modificando il mio page-front.tpl.php e vorrei che venisse preso in considerazione un determinato nodo nella front-page, fino a qui niente di difficile in quanto con la riga
<?php print $content; ?>
viene/vengono inseriti tutti i nodi che hanno spuntato il flag per la prima pagina.
Io vorrei invece che la front page prendesse in considerazione un solo nodo e che lo visualizzasse senza il titolo.
Idee?
Vai nella pagina Admin -> Configurazione del sito -> Informazioni sul sito
e sostituisci nella definizione della home page "node" con "node/[nid della pagina]"
Il problema e' che non voglio il titolo nella home page,
mentre come tu hai suggerito, viene mostrato in home page quel nodo con titolo e contenuto.
Ciao namberone.
Ecco un po' di idee alla veloce:
1. nascondi il titolo nella front-page con il css
qualcosa tipo
.front h2.title {
display:none;
}
Guarda il codice html prodotto dal tema che hai scelto. In genere viene aggiunta una classe stile front. Guarda bene il codice per trovare magari un selettore CSS più specifico.
2. usare una vista
Potresti usare una vista, dire che mostri soltanto 1 elemento, il più recente, del tipo che vuoi tu e che abbia "mostra in homepage". A quel punto aggiungi i campi che vuoi, lasciando fuori il titolo.
Questa seconda cosa è un po' più macchinosa e te la consiglio solo se hai un po' dimestichezza con il modulo views, e se l'hai già installato sul sito.
3. puoi creare un template solo per la prima pagina del sito. Per farlo devi copiare il file che si chiama page.tpl.php che trovi nel tema che hai scelto e nominarlo page-front.tpl.php
A quel punto nel file page-front.tpl.php cancelli la chiamata a "$content", se sei sicuro che la pagina sarà sempre la stessa puoi caricare il nodo con
e poi stamparti il contenuto con
Ti consiglierei la prima, comunque... :-)
Mario Vercellotti (Vermario)
Freelance
http://www.verdevelop.com
@vermario: intanto grazie 1000,
dato che avevo iniziato con la terza opzione ho inserito al posto del $content queste due righe
<?php $nodohomepage = node_load(10); ?>
<?php print $nodohomepage->content; ?>
ma non fa vedere nulla. La versione di drupal e' la 6.
Risolto..
era BODY e non CONTENT...o almeno cosi' funziona.
<?php $nodohomepage = node_load(10); ?>
<?php print $nodohomepage->body; ?>
Altri campi utili sono:
$node->nid ND identificativo univoco del nodo
$node->language ND lingua del contenuto:'it' , 'en', 'fr', …
$node->type ND tipo del nodo. Tabella di codifica NODE_TYPE
$node->uid ND identificativo utente del proprietario del nodo
$node->status ND =0 non visibile; =1 visibile
$node->created ND timestamp della data di creazione del nodo
$node->changed ND timestamp della data di modifica del nodo
$node->comment ND identificativo utente dell'ultimo commento
$node->promote ND =1 il nodo è visualizzato in prima pagina
$node->moderate ND =1 il nodo deve essere controllato prima della pubblicazione
$node->sticky ND numero d'ordine del nodo nella prima pagina
$node->vid NR identificativo del numero di revisione
$node->uid NR identificativo utente del proprietario del nodo
$node->title NR titolo del nodo per la revisione corrente
$node->body NR contenuto del nodo per la revisione corrente
$node->teaser NR sommario del nodo per la revisione corrente
$node->log NR Messaggio di log contenente le modifiche eseguite
$node->revision_timestamp NR data di modifica del nodo
$node->format NR formato del nodo da tabella FILTERS_FORMAT
$node->name US nome utente
$node->picture US percorso all'immagine utente
$node->data US serializzazione di un array che rappresenta i campi dela form utente
Oops, sorry! :-) si, $nodohomepage->body! :-)
Mario Vercellotti (Vermario)
Freelance
http://www.verdevelop.com