Domanda

Stiamo costruendo un sito ricco di contenuti in Drupal. È la prima volta che ci lavoro. Esistono diverse sezioni di questo sito, ognuna con un layout diverso. Ho intenzione di determinare page.tpl.php tramite il metodo phptemplate_preprocess_page ().

La mia domanda è il modo migliore per specificare dove in una determinata pagina mettere diversi pezzi di contenuto secondario. Abbiamo molti componenti di tipo sidebar, ognuno con diversi piccoli elenchi o gruppi di immagini. Penso che l'approccio migliore qui sia quello di definire più aree in base alle esigenze e rilasciare viste personalizzate (usando il modulo Viste) in queste regioni. Sembra ragionevole?

Aggiornamento:

Considerando il trattamento delle viste come query: ciò che mi confonde è che le viste hanno anche opzioni per modificarne l'aspetto. Preferirei se potessi semplicemente recuperare una matrice di nodi da una vista in modo da poter operare sui dati in PHP, piuttosto che sul markup formattato. È possibile?

È stato utile?

Soluzione

Per espandere un po 'la risposta Rishav (corretta), i blocchi sono l'elemento' standard 'per riempire le regioni. Le regioni nel tuo page.tpl.php definiscono il layout generale, ampio (ad esempio un'intestazione, alcune colonne / barre laterali e un piè di pagina - tutto ciò di cui hai bisogno). All'interno di una regione, è possibile posizionare solo una cosa (ad esempio una vista), ma di solito più sotto forma di diversi blocchi. L'ordine in cui appaiono nelle regioni è determinato dal peso dei blocchi.

È possibile creare blocchi direttamente nel modulo viste aggiungendo display di tipo blocco a una definizione di vista 'base'. Inoltre, ogni menu definito sarà disponibile come blocco. È anche abbastanza semplice creare i propri blocchi all'interno di moduli personalizzati, dandoti il ??pieno controllo sul suo contenuto (vedi hook_block () per questo). In questo modo, ad esempio, puoi mettere i moduli in blocchi (il blocco di login di un'installazione Drupal standard è un esempio per questo).

Altri suggerimenti

Sì, puoi utilizzare le aree personalizzate e inserirvi delle viste personalizzate.

Puoi anche usare creare blocchi personalizzati e usare le viste in essi.

Dipende dalla struttura del layout che hai.

Una vista (un elenco di contenuti) è una query del database. Una regione è un'area della pagina (barra laterale sinistra, piè di pagina, ecc.). Le regioni sono assegnate nel modello di pagina (il tpl.php's) e varieranno a seconda del tema che stai utilizzando. In genere, il contenuto secondario (incluso, ma non limitato a, Viste) viene posizionato tramite blocchi. I blocchi vengono visualizzati quando vengono assegnati a una regione ("Nuovi utenti" nella "Barra laterale destra"). Inoltre, le viste possono anche essere incorporate in un modello di pagina (all'interno o all'esterno di una regione).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top