Creare Sidebar multiple per i Widget di WordPress

A partire dalla versione 2.2, i Widget di WordPress permettono di gestire la visibilità e l’ordinamento di vari elementi all’interno della barra laterale del blog. Ad esempio la lista delle Categorie, dell’Archivio mensile, i Post più letti etc…
Per poter utilizzare questa funzionalità bisogna installare anche un tema che supporti i Widget. La maggior parte dei temi lo è, ma nel caso in cui il tema scelto non fosse compatibile o che l’utente voglia crearsene uno da zero, bisogna effettuare delle modifiche. Ecco quali:

Passo 1: Creare (o modificare) il file functions.php

Se nella cartella del proprio tema il file functions.php non esiste, va creato e al suo interno va inserito questo codice:

if ( function_exists('register_sidebar') ) {
	register_sidebar(array(
		'before_widget' => '
  • ', 'after_widget' => '
  • ', 'before_title' => '

    ', 'after_title' => '

    ', )); }

    Passo 2: Aggiungere una Sidebar dinamica al Tema

    Per mostrare i Widget, è necessario modificare il file sidebar.php inserendo questa riga:

    if ( !function_exists('dynamic_sidebar') || ! dynamic_sidebar() ) :
    // codice html da mostrare se i Widget non sono supportati
    endif;
    

    Passo 3: modificare il file functions.php per aggiungere Sidebar multiple

    Per aggiungere altre sidebar, modifichiamo il file functions.php in questo modo:

    // sidebar 1
    if ( function_exists('register_sidebar') ) {
    	register_sidebar(array(
    		'name'=>'sidebar1',
    		'before_widget' => '
  • ', 'after_widget' => '
  • ', 'before_title' => '

    ', 'after_title' => '

    ', )); } // sidebar 2 if ( function_exists('register_sidebar') ) { register_sidebar(array( 'name'=>'sidebar2', 'before_widget' => '
  • ', 'after_widget' => '
  • ', 'before_title' => '

    ', 'after_title' => '

    ', )); }

    Passo 4: Aggiungere le Sidebar multiple al Tema

    Per aggiungere le due nuove Sidebar dinamiche appena create, al nostro tema, è sufficiente modificare il file sidebar.php in questo modo

    // sidebar 1
    if ( !function_exists('dynamic_sidebar') || ! dynamic_sidebar('sidebar1') ) :
    // codice html da mostrare se i Widget non sono supportati
    endif;
    // sidebar 2
    if ( !function_exists('dynamic_sidebar') || ! dynamic_sidebar('sidebar2') ) :
    // codice html da mostrare se i Widget non sono supportati
    endif;
    

    Passo 5: Aggiungere una descrizione alle Sidebar (solo per WP .2.9)

    A partire dalla versione 2.9, WordPress supporta anche le descrizioni delle varie Sidebar: basta aggiungere all’array passato alla funzione register_sidebar l’elemento description:

    if ( function_exists('register_sidebar') ) {
    	register_sidebar(array(
    		'name'=>'sidebar1',
    		'description' => 'Sidebar Numero 1',
    		'before_widget' => '
  • ', 'after_widget' => '
  • ', 'before_title' => '

    ', 'after_title' => '

    ', )); }