Questa pagina è aperta ai tuoi interventi. Puoi contribuire cliccando su "Modifica" dal menu in alto.
On this page... (hide)
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.
- 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.
- Dopo aver scritto l'articolo, scorri la pagina fino alla fine della sezione Avanzati e cerca l'area Campi Personalizzati
- Per creare un nuovo Campo Personalizzato chiamato "Sto Leggendo", scrivi "Sto Leggendo" (senza virgolette) nel campo di testo etichettato con Chiave
- 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.
- 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ì:
|
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->IDoppurethe_ID().$keyè una stringa contenente il nome della chiave di cui vuoi ottenere il valore.$singlepuò avere valoreTRUEoFALSE. 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.