Come creare un tema per WordPress 3.0 – sidebar.php

Nel precedente tutorial ho spiegato come creare la pagina principale, l’index.php, includendo vari file, fra cui la sidebar, è giunta l’ora di crearla.

Creiamo due file: sidebar.php e functions.php.

Il file function.php è uno dei file più importanti di wordpress, in quanto andremo a scriverci tutte le funzioni, per adesso mettiamoci al suo interno questo codice:

<?php

if ( function_exists(‘register_sidebar’) ){

register_sidebar(array(

‘name’ => ‘mainsidebar’,

‘before_widget’ => ”,

‘after_widget’ => ”,

‘before_title’ => ‘<h4>’,

‘after_title’ => ‘</h4>’,

));

}

?>

Con queste righe abbiamo creato una sidebar, di nome ‘mainsidebar’, che ha prima e dopo il widget (cioè l’elemento inserito) niente, e che racchiude nel titolo il tag h4.

Andando a vedere le sidebar del nostro tema in Aspetto–>widgets dovremo poterne vedere una con il nome da noi assegnato e poter aggiungere widget.

Se proviamo ad aggiungere qualcosa non noteremo nessun cambiamento, in quanto non abbiamo definito alcuna sidebar,

Passiamo al file sidebar.php, mettendo al suo interno:

<?php if ( !function_exists(‘dynamic_sidebar’)

|| !dynamic_sidebar(‘mainsidebar’) ) : ?>

<!– mostro la sidebar –>

<?php endif; ?>

Con questa funzione vedremo la nostra sidebar, nel punto in cui l’abbiamo inclusa nel nostro tema.

E se avessimo bisogno di più sidebar, nulla di più semplice, aggiungiamo un’altra sidebar nel file functions.php modificando il campo nome e gli altri se vogliamo, e richiamiamola nel punto più appropriato con il codice che abbiamo messo nel file sidebar.php, modificando il nome, nel nostro caso mainsidebar. E’ anche possibile mettere dei widget di default nel caso non ce ne siano, basta aggiungerli prima dell’endif in un’else, ma anche questo lo vedremo più avanti.

Per adesso vi lascio il lavoro effettuato fin qui.

2 thoughts on “Come creare un tema per WordPress 3.0 – sidebar.php

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *