Artisteer come inserire due menù in WordPress
Ci siamo da poco imbattuti in un problema che sembrava apparentemente ostico. Ci è stato commissionato un intervento, cioè quello di creare due menù in wordpress. Naturalmente il requisito fondamentale è che il secondo menù di nostra creazione doveva essere perfettamente incorporato nel thema e quinidi gestibile in maniera dinamica dall’apposito sotto menù Menu che si trova in Aspetto della nostra bakeka.
Avuto il template, abbiamo notato che il template stesso era stato costruito con Artisteer, un programma che in maniera semplice riesce a creare dei template per vari cms tra cui il nostro wordpress. Dopo un’analisi, abbiamo capito che Artisteer produce themi per wordpress con un solo menù, a noi invece serviva anche un secondo menù, come potete vedere nella figura in alto, dovevamo avere un menù su sfondo azzurro e un menù su sfondo grigio.
In ogni caso, questa piccola guida è utile sia se il template è stato creato con Artisteer che non, basta che sia compatibile con WordPress3.
La prima cosa da fare è andare nel file functions.php che si trova nel vostro thema e trovare la seguente funzione (o qualcosa di simile perchè alcune stringhe potrebbero variare dal thema)
if (function_exists('register_nav_menus')) {
register_nav_menus(array('primary-menu' => __( 'Primary Navigation', THEME_NS)));
come notiamo, stiamo abbiamo trovato la funzione riguardante il menù principale che già abbiamo, ora seguendo la stessa sintassi, aggiungiamo il secondo menù, in questo modo:
if (function_exists('register_nav_menus')) {
register_nav_menus(array('primary-menu' => __( 'Primary Navigation', THEME_NS)));
register_nav_menus(array('secondary-menu' => __( 'Secondary Navigation', THEME_NS)));
}
Bene, non abbiamo fatto altro che dire alla funzione di cercare anche l’esistenza di un secondo menù.
Adesso, dobbiamo far mostrare nel template wordpress il secondo menù, quindi dobbiamo aprire il file header.php, cercare la funzione che visualizza il nostro menù primario, quindi qualcosa di simile:
<div class="art-nav">
<div class="art-nav-l"></div>
<div class="art-nav-r"></div>
<div class="art-nav-outer">
<?php
echo theme_get_menu(array(
'source' => theme_get_option('theme_menu_source'),
'depth' => theme_get_option('theme_menu_depth'),
'menu' => 'primary-menu',
'class' => 'art-hmenu'
)
);
?>
</div>
</div>
Una volta trovato, possiamo vedere che c’è una funzione php che mostra il primo meù, preceduta da una serie di div che ne indicano lo stile. Bene, non ci resta che copiare il codice, cambiare qualche div per dargli un colore diverso e nella funzione che scrive il menù, inserie il paramentro del secondo menù e il gioco è fatto:
<div class="cleared reset-box"></div>
<div class="art-nav">
<div class="art-nav-l"></div>
<div class="art-nav-r"></div>
<div class="art-nav-outer">
<?php
echo theme_get_menu(array(
'source' => theme_get_option('theme_menu_source'),
'depth' => theme_get_option('theme_menu_depth'),
'menu' => 'primary-menu',
'class' => 'art-hmenu'
)
);
?>
</div>
</div>
<div class="cleared reset-box"></div>
<div class="art-nav">
<div class="art-nav-s"></div>
<div class="art-nav-q"></div>
<div class="art-nav-outer">
<?php
echo theme_get_menu(array(
'source' => theme_get_option('theme_menu_source'),
'depth' => theme_get_option('theme_menu_depth'),
'menu' => 'secondary-menu',
'class' => 'art-hmenu'
)
);
?>
</div>
</div>
Il risultato è che abbiamo due perfetti menù funzionanti e settabili nel nostro WordPress 3.
Speriamo che questa guida su come creare due menù in wordpress sia stata utile






12 comments on “Artisteer creare due menù in WordPress”
Cecilia
24 Maggio, 2012 at 16:15Ciao!ho trovato questa guida perchè mi serve capire come creare appunto un menu in wordpress su due righe (a colori differenti), su un tema prodotto con Artisteer. ho seguito le indicazioni, ma non riesco a trovare, in function.php la prima stringa che citi, quella che indica il Primary Menu.
hai qualche dritta o qualche consiglio da suggerirmi??
ti ringrazio già da ora!!
Cecilia
Siti Web
24 Maggio, 2012 at 16:30Ho controllato l’ultima versione di Artisteer per essere sicuro che la riga esista ancora, se non la trovi facilmente e troverai register_nav_menus, a quel punto riconoscerai il codice che ho scritto…
Cecilia
24 Maggio, 2012 at 16:40Intanto grazie mille per la risposta velocissima!
il problema è che non trovo proprio una stringa con register_nav_menu…. 🙁
Siti Web
24 Maggio, 2012 at 16:50Scusa la domanda Cecilia…stai aprendo il file che si trova nel template vero? Non è che stai aprendo quello della cartella madre di wordpress?
Cecilia
24 Maggio, 2012 at 16:56si sto aprendo il file direttamente dalla cartella del tema specifico (wordpress>>wp-content>>theme>>thema specifico), oltre ad averlo aperto nella sezione “Theme functions.php” relative al tema selezionato, dall’admin wordpress..
Siti Web
24 Maggio, 2012 at 17:03Che dirti…. mi sembra strano, sei sicura che il template è generato da Artisteer?….se me lo mandi provo a darci un’occhiata madonna.mauro@gmail.com
Siti Web
25 Maggio, 2012 at 08:21Ciao Cecilia, ho visto il template che mi hai inviato….il problema è che il template è stato generato (come tu hai ben scritto) con una versione molto vecchia di Artesteer che non gestisce il menù in maniera dinamica, ecco perchè non trovi la stringa, perchè non genera la funzione menù ed quindi incompatibile con WordPress 3.0 che invece di default gestisce i menu dinamicamente…Ti dò un consiglio….prendi un template compatibile con WordPress 3.0
Cecilia
25 Maggio, 2012 at 09:19grazie 1000 Mauro per la tua disponibilità e per il tuo consiglio!!
Siti Web
25 Maggio, 2012 at 09:36Prego…è stato un piacere
Antonella
22 Gennaio, 2013 at 09:38Ciao i vostri consigli/tutorial sono davvero validi non è possibile iscriversi alla newsletter?
Antonella
Andrea
28 Luglio, 2015 at 04:22A distanza di anni, un grazie per avermi indicato la strada (di programmazione non ne capisco niente?). La cosa si è resa necessaria per una inspiegabile limitazione numerica di voci per menu presente su wordpress che obbliga a questo passo, e per un altrettanto inspiegabile assenza di aggiunta menu su artisteer! Meno male vi ho trovato!
mauro madonna
28 Luglio, 2015 at 07:09Figurati Andrea! E’ stato un piacere darti questi piccolo aiuto, avevamo questo stesso problema e non essendoci guide abbiamo pensato di farla noi…