Questa pagina è aperta ai tuoi interventi. Puoi contribuire cliccando su "Modifica" dal menu in alto.

1.  I Campi Personalizzati

Una nuova caratteristica di WordPress 1.2 è la possibilità per gli autori degli articoli di assegnare dei campi personalizzati a ciascun un articolo. Queste informazioni sono conosciute anche come meta-dati. Questi meta-dati possono includere parti di informazione come Stato d'animo: Contento, Sto leggendo: Cenerentola, Sto ascoltando: Rock Around the Clock, e altro ancora. Con un aggiunta di codice extra, è possibile ottenere azioni più complete, come ad esempio usare i metadati per memorizzare la data di scadenza di un articolo.

I metadati sono gestiti con la coppia "chiave/valore". La chiave è il nome del metadato. Il valore è l'informazione che apparirà nella lista di ciascun articolo associato alla chiave. Ci possono essere anche più chiavi per ciascun articolo. Ad esempio, se stai leggendo due libri (diciamo uno di argomento tecnico al lavoro e un romanzo a casa), puoi creare una chiave "letture" e usarla due volte nello stesso articolo, per ciascun libro.

Questo è un esempio di come queste informazioni potrebbero essere visualizzate nel tuo articolo:

Sto leggendo:Calvin e Hobbes
Stato d'animo:Contento

1.1  Utilizzo dei Campi Personalizzati

Ora cerchiamo di mettere in pratica l'esempio appena indicato. Aggiungiamo quindi due campi personalizzati, uno chiamato "Sto leggendo" e l'altro "L'umore di oggi". Le istruzioni che seguono ti mostreranno come aggiungere queste informazioni ad un articolo tramite l'uso dei Campi Personalizzati.

  1. Dal Pannello di Amministrazione -> Scrivi Articolo, scegli Controlli Avanzati. Se visualizzi l'interfaccia di scrittura semplice, clicca sul bottone Controlli Avanzati vicino al bottone Pubblica.
  2. Dopo aver scritto l'articolo, scorri la pagina fino alla fine della sezione Avanzati e cerca l'area Campi Personalizzati
  3. Per creare un nuovo Campo Personalizzato chiamato "Sto Leggendo", scrivi "Sto Leggendo" (senza virgolette) nel campo di testo etichettato con Chiave
  4. Ora dovresti assegnare al campo Chiave appena creato un Valore, che nel nostro caso è il titolo del libro che stai leggendo, e cioè "Calvin e Hobbes". Scrivi quindi "Calvin e Hobbes" nel campo Valore, senza virgolette.
  5. Clicca su Aggiungi Campo Personalizzato per salvare queste informazioni relative all'articolo.

Per aggiungere "Stato d'animo", ripeti la procedura e aggiungi "Stato d'animo" alla chiave e una descrizione del tuo umore nel campo valore, poi salva le informazioni insieme all'articolo

Nei tuoi prossimi articoli potrai aggiungere un nuovo libro e un nuovo stato d'animo ai tuoi meta-dati. Nella sezione Campi Personalizzati la Chiave apparirà dal menu a discesa, dove puoi scegliere la chiave che desideri inserire nel post. E' necessario quindi creare una Chiave una volta sola, dopodiché potrai assegnare alla stessa chiave, per ogni articolo, un valore diverso.

1.2  Visualizzazione dei Campi Personalizzati

Ora che hai aggiunto dei campi personalizzati all'articolo, è ora di mostrare i libri che stai leggendo (e il tuo stato d'animo) ai tuoi visitatori. Per visualizzare i campi personalizzati di ciascun articolo devi usare il tag the_meta(). Per funzionare, questo tag va inserito all'interno del Loop. Molte persone inseriscono il tag the_meta() alla fine del loro articolo. Ecco un esempio base di come usare il tag:

 <?php the_meta(); ?>

Il risultato sarà questo:

 <ul class='post-meta'>
 <li><span class='post-meta-key'>Sto leggendo:</span> Calvin e Hobbes</li>
 <li><span class='post-meta-key'>Oggi mi sento:</span> Felice e contento</li>
 </ul>

Il tag inserisce automaticamente i meta-dati all'interno di uno stile CSS chiamato post-meta. La chiave viene inserita in un tag span chiamato post-meta-key. In questo modo puoi stabilire una formattazione nel tuo foglio di stile CSS. I vari campi personalizzati vengono visualizzati in forma di elenco puntato. Per personalizzare l'aspetto della lista post-meta puoi modificare il tuo foglio di stile CSS, ad esempio, in questo modo:

 .post-meta {font-style: italic; color: maroon; }
 .post-meta-key {color: green; font-weight: bold; font-size: 110%; }

e quindi il testo verrà formattato così:

  • Currently Reading: CALVIN AND HOBBES
  • Today's Mood: JOLLY AND HAPPY

Ci sono anche alcuni plugin che aggiungono alcune funzioni interessanti per gestire e visualizzare i meta-tag. Una ricerca su Google potrebbe rivelarsi molto utile.

1.3  Tecniche Avanzate per i Campi Personalizzati

Di seguito ci sono alcune tecniche avanzate per gestire e visualizzare i meta-dati contenuti nei campi personalizzati

Ottenere il valore dei Campi Personalizzati

Per ottenere il valore dei meta-dati, devi usare la funzione get_post_meta():

  get_post_meta($post_id, $key, $single);

  • $post_id è l'ID numerico dell'articolo di cui vuoi ottenere il valore dei meta-dati. Per avere l'ID dell'articolo, puoi usare $post->ID oppure the_ID().
  • $key è una stringa contenente il nome della chiave di cui vuoi ottenere il valore.
  • $single può avere valore TRUE o FALSE. Se settato a TRUE la funzione restituisce un singolo risultato, in forma di stringa. Se viene scelto FALSE oppure non viene scelto nulla, allora la funzione restituisce l'insieme dei campi personalizzati in forma di array.

Dettagli sull'implementazione

Le informazioni relative ai meta-dati degli articoli sono memorizzati in una tabella dedicata: $tablepostmeta. Questa tabella è composta da quattro campi:

meta_id
ID unico per ciascun record
post_id
ID dell'articolo a cui è associato questo metadato<br />
meta_key
Nome della 'Chiave'
meta_value
Valore associato alla chiave

I valori contenuti in questa tabella vengono memorizzati in un array multidimensionale, chiamato $post_meta_cache, subito dopo che l'array $posts viene costruito nel file wp-blog-header.php. Questa variabile può contenere solo valori relativi agli articoli visualizzati nella pagina richiamata dal browser. La struttura dell'array è più o meno questa:

 [
   postid1 => [
     [
       key1 => [val1, val2, ...],
       key2 => [val1, val2, ...],
       ...
     ],
   postid2 => [ ... ],
   ...
]

Così, se vuoi estrarre i valori della chiave "letture" associati all'articolo numero 256, puoi usare questo codice PHP:

 // Restituisce un array contenente ciò che sto leggendo:
 $readinglist = $post_meta_cache[256]['letture'];

Non dimenticare che $readinglist è un array, non una singola variabile.

1.4  Funzioni relative ai tag dei meta-dati

Funzioni Interne

Queste funzioni vanno usate all'interno del Loop e tutte restituiscono un array.

get_post_custom()
Restituisce tutte le coppie chiave/valore per l'articolo corrente.

get_post_custom_keys()
Restituisce una lista di tutti i nomi delle chiavi per l'articolo corrente.

get_post_custom_values($key)
Restituisce la lista dei valori per una determinata chiave, per l'articolo corrente.

get_post_meta($post_id, $key, $single = false)
in WP 1.5 restituisce i metadati senza doverli estrarre dalla cache. E' obbligatorio indicare l'ID dell'articolo, la chiave, e se single viene settato a TRUE, restituisce solo il primo risultato, non in forma di array, da usare in PHP.

Funzioni Template

Al momento c'è solo una funzione relativa ai template.

the_meta()
Stampa un elenco puntato contenente i meta-dati dell'articolo corrente, con il tag <ul> associato ad una classe CSS post-meta e i tag <li> associati alla classe post-meta-key.

Ci aspettiamo che altri sviluppatori propongano altri usi interessanti dei meta-dati, in forma di plugin. La funzione the_meta() è in effetti solo un esempio base.

Ultima modifica il 19/01/2006 ore 09:48