Come rappresentare 'blocchi' di contenuto all'interno di Wordpress?
Ho sempre usato Wordpress solo come piattaforma di blogging self-hosted - fino ad ora. Ho la necessità di usarlo come un CMS molto basilare che consisterà in ~10 pagine, la maggior parte delle quali saranno contenuti statici, aggiornati periodicamente. Avrò bisogno della possibilità di caricare documenti, incorporare immagini, modificare il testo usando l'editor - praticamente tutte le funzionalità standard che Wordpress offre.
Tuttavia, sto avendo difficoltà riguardo alla modifica di sezioni specifiche all'interno di una pagina - in particolare, semplicemente non so da dove iniziare. Un CMS "normale" tradizionalmente suddivide una pagina in sezioni separate e mi permette di modificare ognuna di queste sezioni, sia modificando direttamente il contenuto, sia includendo contenuti condivisi in quel punto. Non riesco a capire come fare questo con Wordpress.
È possibile "estendere" il modello di Pagina in modo che una Pagina sia in realtà solo un blocco di contenuto, che viene incluso da una pagina/template specifica, e che sia - in qualche modo - protetto dall'essere visualizzato direttamente (rimuoverlo dai menu di navigazione sarebbe un inizio).
Qualche indicazione su dove iniziare?
Aggiornamento
Per chiarire, immagina un normale post di un blog Wordpress. Fingi che sia un contenuto statico. Supponi di voler permettere a un editor di cambiare solo il primo paragrafo di quel post. Ora,
- il contenuto statico di quella pagina dovrebbe essere in un Post, Pagina, Template, o qualcos'altro?
- il contenuto modificabile dovrebbe essere una Pagina, ... o qualcos'altro?
Per esempio:
<h1>Chi siamo</h1>
<p>Example.com è un'azienda specializzata in esempi, dimostrazioni,
e roba canonica.</p>
Se voglio che quel paragrafo sia modificabile, presumibilmente ho bisogno di qualcosa come:
<h1>Chi siamo</h1>
<p><?php insert_page('nome-del-blocco-contenuto'); ?></p>
Aggiornamento 2
OK, dopo molte ricerche, tentativi ed errori, ho scoperto quanto segue:
- Wordpress non è configurato per replicare facilmente un CMS classico, specialmente riguardo all'avere diversi pezzi di contenuto in una pagina.
- Questo modello può essere imitato, più o meno, usando post personalizzati (vedi sotto)
- Le pagine offrono quasi questa capacità, tuttavia:
- È necessario un plugin solo per includere una pagina
- Le pagine non sembrano essere flessibili come i post - ad esempio, nessun tipo di pagina personalizzato
Il metodo che ho usato, utilizzando tipi di post personalizzati, è più o meno questo:
- La pagina è una 'Pagina' con un template personalizzato - chiamiamolo 'miapagina.php'
- Quel template contiene quanto segue:
<div id="header"> <?php query_posts(array('name' => 'foo', 'post_type' => 'testo-intestazione')); get_template_part('testo-intestazione'); ?> </div> <div id="content"> <p>Del testo statico nel template che può essere modificato solo dall'amministratore del sito.</p> <?php query_posts(array('name' => 'bar', 'post_type' => 'immagine')); get_template_part('immagine'); ?> </div>
Tutto questo ha senso per qualcuno? :-)

Come ha menzionato tnorthcutt, potresti voler utilizzare tipi di post personalizzati. Tuttavia, dovresti anche dare un'occhiata ai campi personalizzati, che ti permetteranno di specificare frammenti di dati personalizzati dinamici che desideri associare a ciascuna pagina. Ecco il tutorial di Smashing Magazine sui campi personalizzati, il tutorial di Nettuts (e il video), e una lista di altri tutorial.

Darò un'occhiata ai tipi di contenuto personalizzati. Il problema con i campi personalizzati, se li ho capiti correttamente, è che, nel peggiore dei casi, sono solo testo semplice, e nel migliore dei casi, non offrono l'editing WYSIWYG.

Se ho capito correttamente, vuoi avere layout diversi per pagine diverse. Puoi ottenere questo risultato creando un template personalizzato per ogni pagina del sito oppure utilizzando un'unica pagina personalizzata con varie condizioni.
Per la prima opzione, consulta la sezione del WordPress Codex relativa ai template di pagina personalizzati: http://codex.wordpress.org/Pages#Creating_Your_Own_Page_Templates
Per la seconda opzione, consulta questo tutorial: http://www.darrenhoyt.com/2007/12/26/multiple-wordpress-page-layouts-in-one-single-template/
Successivamente, puoi spostare questi "blocchi" in diversi file PHP che includerai nelle tue pagine specifiche.

Mmm... darò un'occhiata ai link, ma non sono del tutto sicuro di essermi spiegato correttamente. In sostanza, ho bisogno di lavorare con il pezzo di contenuto più "atomico" possibile; qualcosa che ogni altro CMS che ho usato rende molto semplice. Ho aggiornato la domanda nel tentativo di spiegarmi meglio.

Se vuoi che il contenuto sia statico (e con statico intendo HTML semplice non servito da un database - come i post di WordPress) ma vuoi comunque modificarlo, allora aggiungi i blocchi al template. Altrimenti mettilo in una pagina e basta.

Penso che la soluzione migliore sia utilizzare i tipi di articoli personalizzati.

Dai un'occhiata a un plugin come Magic Fields. Utilizza internamente i Campi Personalizzati, ma l'interfaccia può includere un editor di testo avanzato, menu a discesa per le liste, ecc.
Questo ti permette di definire gli elementi del tuo contenuto, i loro tipi e (per le scelte) i loro valori. Successivamente, il tuo tema può visualizzarli.
Un'alternativa sarebbe avere un'area per i plugin definita e decidere quale plugin inserire. Tuttavia, questa soluzione è meno flessibile, poiché non consente comunque di gestire due elementi di contenuto specifici per pagina/post.
