Continuando il discorso sui CMS, in particolare su WordPress ed il tema Thematic, in questo articolo andrò ad illustrare come fare ad aggiungere una nuova widget area a quelle già esistenti. Questa operazione risulta particolarmente utile quando si desidera aggiungere un qualsiasi tipo di contenuto in un area “jolly” che non sia già circoscritta all’interno di un altro widget e che sia personalizzabile a piacere.
Come per l’aggiunta del bottone “home” di cui ho parlato in un precedente articolo, per aggiungere questa nuova area è semplicemente necessario aprire il file “functions.php” nella cartella principale di thematic ed aggiungere le seguenti righe prima della riga contenente “?>” :
// questo crea la widget area
function my_widgets_init() {
register_sidebar(array(
'name' => 'Header Aside',
'id' => 'header-aside',
'before_widget' => '<li id="%1$s">',
'after_widget' => "",
'before_title' => "<h3 class=\"widgettitle\">",
'after_title' => "</h3>\n",
));
}
add_action( 'init', 'my_widgets_init' );
// questo comando aggiunge l'area creata al tema
function my_header_widgets() {
if ( function_exists('dynamic_sidebar') && is_sidebar_active('header-aside') ) {
echo '<div id="header-aside">'. "\n" . '<ul>' . "\n";
dynamic_sidebar('header-aside');
echo '' . "\n" . '</div><!-- #header-aside .aside -->'. "\n";
}
}
add_action('thematic_header', 'my_header_widgets', 9);
Come sempre basta ricaricare online il file appena modificato e la nuova widget area, che in questo caso avrà il nome di “Header-Aside” apparirà all’interno del menu “widget” situato sotto “aspetto“.
Nell’ultima riga del codice che ho riportato è presente un numero, in questo caso un “9“, situato appena prima della dicitura “);”
Questo numero indica la posizione della widget area all’interno del codice php della pagina. Modificandolo con il numero “8” la widget area da noi creata verrà automaticamente posizionata prima del menù di navigazione principale del nostro sito.
N.B.: questa modifica funziona correttamente con la versione 2.9.1 di WordPress e con la versione 0.9.5.1 di Thematic.
Un Commento
nice post. thanks.
Un Trackback
[...] Per comodità pratica, mettiamo dunque che per esempio stiate utilizzando uno dei temi più in voga nell’universo WordPress, ovvero Thematic. Trattasi di un tema veramente ottimale e malleabile per le operazioni di personalizzazione. A volte però le sue funzionalità non sono comunque abbastanza per soddisfare tutte le nostre esigenze, e capita pertanto di dover intervenire su files come function.php (vedi aggiungere widget area in thematic) [...]