Vi è mai capitato di voler abbellire il menu associando ai singoli collegamenti un immagine come nell'esempio sotto?
Per nostra sfortuna Drupal di base non consente questa personalizzazione del menu, ma, ricorrendo ad un piccolo hack si riuscirà a mostrare le immagini.
Vediamo come fare:
Andate nella directory del vostro tema ed aprite in modifica il file template.php ( se non esiste createlo ) ed inserite la seguente funzione
function $NOMEVOSTROTEMA_menu_link($variables) {
$element = &$variables['element'];
if ( strpos($element['#title'], "|" ) ) {
$ls_title = explode("|", $element['#title']);
$element['#title'] = str_replace($ls_title[0],'',$element['#title'])
$element['#title'] = str_replace($ls_title[1],'' . $ls_title[1] . '',$element['#title']);
$element['#title'] = str_replace(“|”, ” “, $element['#title']);
$element['#localized_options']['html'] = TRUE;
}
return theme_menu_link($variables);
}
Salvate le modifiche al file, collegatevi all'interfaccia di amministrazione del vostro sito e dal menu "Configurazione => Prestazioni" cancellate la cache, in questo modo abiliterete drupal alla funzione appena inserita.
Ora non resta che modificare ad hoc i collegamenti del menu. Dalla interfaccia di amministrazione di Drupal andate in "Struttura => Menu => List Link, premete sul pulsante "edit" riferito al link del menu al quale volete associare un immagine e modificatelo nel seguente modo:
Titolo = $path_immagine|$testo_da_associare
Descrizione = Il testo che volete che compaia quando posizionate il mouse sopra al link
Salvate e ricaricate la pagina, a questo punto dovreste vedere la vostra immagine a fianco della voce del menu.
N.B. Lo spunto per questo hack lo ho ricevuto leggendo questo post [ link post ]
Spero di essere stato di aiuto
Enjoy!
