Come Passare Parametri ai Tag

Introduzione

I tag dei template sono funzioni PHP che è possibile inserire all'interno dei delle propri pagine di template di WordPress per fornire il contenuto dinamico al vostro blog. Così come le funzioni PHP molti tag dei template accettano degli argomenti o dei parametri. I parametri dei tag dei template sono variabili che potete utilizzare per modificare l'output del tag o in alternativa modificarne il funzionamento in qualche modo. Pensate ai parametri come delle opzioni utente o delle impostazioni che vi permettono di personalizzare il funzionamento dei tag dei template.

Con riferimento ai parametri, i tag dei template di WordPress possono essere di tre tipologie, come di seguito descritto:

  1. Tag senza parametri
  2. Tag con parametri in stile PHP
  3. Tag con parametri in stile query-string

Tag senza parametri

Alcuni tag dei template non hanno alcuna opzione e quindi non hanno alcun parametro che sia possibile passare a questi tag.

Il tag dei template the_author_firstname() è uno di quelli che accetta alcun parametro. Questo tag semplicemente visualizza il nome dell'autore di un articolo. I tag senza alcun parametro non devono avere alcunché fra le parentesi di apertura e chiusura dei parametri del tag:

 <?php the_author_firstname(); ?>

Tag con parametri in stile PHP

Per i tag dei template che possono accettare Parametri, alcuni di essi richiedono che siano nello stile standard di PHP (http://www.php.net/manual/en/functions.arguments.php). Per questi tag, i Parametri vengono passati ad una funzione di tag mettendo uno o più valori all'interno delle parentesi della funzione.

Il tag bloginfo() accetta un parametro (conosciuto come il parametro show) che indica quale informazione del blog visualizzare:

 <?php bloginfo('name'); ?>

Il tag wp_title() accetta due Parametri: il primo è il parametro del sepratore ed il secondo indica se fare l'echo o visualizzare il risultato:

 <?php wp_title('-', TRUE); ?>

Il primo parametro è racchiuso fra apici singoli ed il secondo parametro invece no, ciò perché il primo è una stringa ed il secondo un parametro booleano. (Si veda Tipi di Parametri per informazioni sui vari tipi di parametri e su come utilizzarli.)

Per i Parametri in stile PHP occorre tenere a mente che:

  • Alcune funzioni accettano Parametri multipli.
  • I Parametri multipli sono separati da virgole.
  • L'ordine dei Parametri è importante!

Quando si passano i Parametri ad una funzione di un tag di template, assicurarsi di specificare tutti i vlori per tutti i Parametri sino all'ultimo che si desidera modificare, altrimenti il tag potrebbe funzionare in modalità inaspettata. Ad esempio il tag di template get_archives() ha sei Parametri:

 <?php get_archives('type','limit','format','before', after', show_post_count); ?>  

Per visualizzare la lista degli archivi nella modalità desiderata, supponiamo che si voglia modificare sil il terzo (format) ed il quinto (after) Parametro. Per fare ciò si dovrò assicurarsi di immettere anche i valori predefiniti del primo, secondo e quarto Parametro, come nel seguente esempio:

 <?php get_archives(,,'custom','','<br />'); ?>

Si noti l'uso di apici singoli per indicare un parametro con valore vuoto, che, in questo caso, forza i vaori predefiniti per questi Parametri specifici. Porre attenzione al fatto che i valori predefinit possono venir sovrascritti quando si passano Parametri vuoti, come nel caso di un parametro che specifica una stringa di testo e che non vi è modo di un valore boleano vuoto. Verificare quindi la documentazione per i valori predefiniti di un parametro e, quando ne è specificato uno, utilizzarlo come valore per il parametro (Si veda Tipi di Parametri per informazioni sui vari tipi di parametri e su come utilizzarli). Il sesto parametro non è stato specificato ciò perché WordPress utilizza il valore predefinito per tutti i Parametri rimasti indefiniti.

Assicurarsi di seguire attentamente la documentazione relativa ad un tag di template ed inserire i Parametri nell'ordine atteso dalla funzione di template. Per finire, per utilizzare i valori predefiniti per tutti i Parametri di un tag di template, utilizzare il tag senza specificare alcun valore per i parametri:

 <?php get_archives(); ?>

Tag con parametri in stile query-string

L'ultima tipologia di tag di template utilizza quello che viene definito come una stile query-string per il passaggio dei Parametri ad un tag. Questo fornisce un utili 'involucro' per quei tag che utilizzano lo stile PHP per i parametri delle funzioni ed anno un numero relativamente elevato di Parametri. Ad esempio il tag di template wp_list_cats() è un contenitore di list_cats(), un tag con diciotto Parametri!

Se si desidera impostare il parametro exclude di list_cats() (il diciassettesimo nella lista dei parametri) lascindo tutti gli altri con i valori predefiniti si dorvebbe fare così:

 <?php list_cats(TRUE,'All','ID','asc','', TRUE, FALSE, FALSE,
 TRUE, TRUE, FALSE,,, FALSE,,,'10,11,12'); ?>

Oppure utilizzare wp_list_cats():

 <?php wp_list_cats('exclude=10,11,12'); ?>

Ecco che i tag in stile query-string sono utili in questi casi perché permettono di modificare i valori dei soli Parametri desiderati, senza la necessità di fornire i valori per si tutti o quasi tutti i parametri. Tuttavia, non tutti i tag di template in stile funzione PHP hanno un equivalente di uno stile query-string. (Si noti che i nomi dei tag che accettano Parametri in stile query-string iniziano solitamente con un prefisso 'wp_', come in wp_list_cats(), verificare comunque la documentazione di un tag per verificare i metodi con cui vengono accettati i Parametri, se presenti.)

Il tag wp_list_authors() ha sei Parametri, in cui, in questo esempio, ne impostiamo tre:

 <?php wp_list_authors('show_fullname=1&feed=rss&optioncount=1'); ?>

Per prima cosa, tutti i Parametri sono racchiusi da singoli o doppi apici. Quindi ogni parametro viene immesso nel formato parametro=valore, utilizzando come separatore una e commerciale (ampersand - &). Scomponendolo, il tag precedente dice:

  • Il Parametro show_fullname (un parametro di tipo booleano) è uguale a 1 (vero).

AND

  • Il Parametro feed (un parametro di tipo stringa ) è uguale a rss.

AND

  • Il Parametro optioncount (un parametro di tipo booleano) è uguale a 1 (vero).

(Si veda Tipi di Parametri per informazioni sui vari tipi di parametri e su come utilizzarli.)

I Parametri in stile query-string non devono venir immessi in un ordine specifico. L'unica cosa di cui preoccuparsi è di indicare correttamente il nome del parametro. Se la leggibilità è un problema, è possibile separare i Parametri con uno spazio:

 <?php wp_list_authors('show_fullname=1 & feed=rss & optioncount=1'); ?>

È possibile anche suddividere la query-string su più righe (si noti il formato specifico che racchiude i singoli parametri/valori fra apici singoli ed un punto all'inizio di ciascuna riga):

 <?php wp_list_authors(
                    'show_fullname=1'
                      .'&feed=rss'
                      .'&optioncount=1'
                      ); ?>

Vi sono poche limitazioni quando si utilizzano tag in stile query-string, fra cui l'impossibilità di passare alcuni caratteri come ad esempio la e commerciale (&) o gli apici (singoli o doppi). In questi casi si dovrà utilizzare il tag equivalente con tale funzione PHP.

Tipi di Parametri

Vi sono tre tipi di of Parametri che occorre conoscere in riferimento ai tag di template di WordPress: stringa, intero e booleano. Ognuno di questi viene gestito in maniera leggermente differente come descritto di seguito.

Stringa

Una stringa è una linea di test ed è tipicamente qualsiasi cosa da un singolo carattere a diverse decine di parole. Un parametro stringa è spesso la selezione fra due o più opzioni possibili come mostrato nel parametro di bloginfo(). Altre volte una stringa è intesa come un testo da visualizzare quale il parametro sep in wp_title().

Nei tag che utilizzano parametri in stile funzione PHP, i valori stringa devono venir racchiusi fra apici singoli (') o doppi ("). Se un apice singolo è necessario come parte della stringa si mischino gli apici (utilizzando l'apice doppi per racchiudere il parametro nel caso il valore del parametro contenga un apice singolo) o si utilizzi il carattere di escape di PHP (una barra rovescia: \), come nell'esempio seguente che assegna un apice singolo peri parametri before ed after in the_title():

 <?php the_title('\,'\); ?>

Intero

Un intero è un numero che può avere valori positivi (1, 2, 3) o negativi (-1, -2, -3). I Parametri di tipo intero vengono spesso utilizzati per informazioni di tipo data o archivio, come ad esempio i Parametri anno e mese del tag get_month_link() oppure per specificare un valore numerico di qualche cosa del blog, un esempio lo si trova nel caso del parametro id del tag get_permalink().

Quando lo si passa ad un parametro in stile funzione PHP i valori interi inclusi in apici o meno vengono gestiti correttamente. Quindi i seguenti esempi sono entrambi validi:

 <?php get_permalink('100'); ?>

 <?php get_permalink(100); ?>

Booleano

I Parametri Booleani prevedono solo il valore vero/falso.

Ad esempio il tag the_time() ha un parametro display che accetta TRUE (vero) o FALSE (falso) come valore; impostando il parametro a TRUE visualizza l'ora sulla pagina, mentre il valore FALSE fa si che il tag "ritorni o restituisca " l'orario come un valore da utilizzare successivamente da latro codice PHP.

Un parametro booleano può venir indicato tramite un valore numerico: 1 per TRUE, 0 per FALSE. Per un valore booleano in tag di funzione con parametri in stile PHP ciò è equivalente:

  • 1 = TRUE = vero
  • 0 = FALSE = falso

Tuttavia, NON racchiudere i valori booleani all'interno di apici. per tag con stile query-string utilizzare solo valori booleani numerici (1 o 0).

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