Back to top

Autore Topic: mod_mainmenu: proposta di modifica per menu "grafici"  (Letto 1955 volte)

Offline lbo

  • Esploratore
  • **
  • Post: 192
    • Mostra profilo
salve.

dovrò usare con joomla un menu le cui voci dovranno essere dei bitmap e non dei testi (cioè dei gif o jpg con su scritto "Home page" ecc.).

ovviamente è richiesto che facciano qualcosa al passaggio del mouse e che siano evidenziati quando la voce di menu è selezionata.

per ottenere ciò ho fatto una modifica al volo al modulo mod_mainmenu che potrebbe interessare anche ad altri.

in pratica ho fatto in modo che i <li>...</li> che vengono creati quando mod_mainmenu è usato come flat list abbiano un #id progressivo, per cui il menu generato è qualcosa del tipo:

Codice: [Seleziona]
<ul id="mainlevel">

  <li id="menu_li_number_0"><!-- Home page -->
    <a href="..." class="mainlevel" id="active_menu"></a>
  </li>

  <li id="menu_li_number_1"><!-- Cerca -->
    <a href="..." class="mainlevel"></a>
  </li>

  <li id="menu_li_number_2"><!-- News -->
    <a href="..." class="mainlevel"></a>
  </li>

  <!-- ecc. ecc. -->

</ul>

in questo modo ogni li ha un id differente che lo caratterizza univocamente e quindi è possibile "assegnargli" l'apposito bitmap di sfondo tramite css, nonché tutti i soliti giocherelli col posizionamento dello sfondo per l'effetto rollover.

(a dire il vero per essere sicuri che l'id sia proprio univoco bisognerebbe assegnare anche un id univoco all'<ul> o cose del genere).

per fare ciò sono intervenuto su mod_mainmenu.php in questo modo:

(dalle parti della riga 343, frose ho fatto altre modifiche, non ricordo):

Codice: [Seleziona]
$menuclass = 'mainlevel'. $params->get( 'class_sfx' );
  if (count( $links )) {
    switch ($style) {
      case 1:
        echo '<ul id="'. $menuclass .'">';
// codice originale:
        // foreach ($links as $link) {
        //   echo '<li>' . $link . '</li>';
        foreach ($links as $key => $link) {
          echo '<li id="menu_li_number_' . $key . '">' . $link . '</li>';
        }

probabilmente per ovviare al problema di cui sopra (id univoco per il <li> oltre a dare un id univoco all'<ul> si potrebbe scrivere qualcosa tipo:

Codice: [Seleziona]
          echo '<li id="' . $menuclass . '_menu_li_number_' . $key . '">' . $link . '</li>';
        }

se per l'id del <li> nel css non viene specificato niente, la modifica è "innocua".

mi piacerebbe proporre "ufficialmente" questa modifica o magari farne un modulo da installare a parte, però non sono pratico della procedura di installazione delle extensions di joomla.  qualcuno mi può indicare informazioni al riguardo?  cioè su come si crea un pacchetto che sia possibile poi installare su j?

magari qualcuno sa se una cosa del genere (che immagino possa essere di interesse assai generale) sia stata applicata sulla 1.5?

altri commenti/idee/suggerimenti?

grazie.

appena la metto on line ve lo dico così gli potete dare un'occhiata dal vivo.

Offline ste

  • Instancabile
  • ******
  • Post: 8774
  • Sesso: Femmina
    • Mostra profilo
Re: mod_mainmenu: proposta di modifica per menu "grafici"
« Risposta #1 il: 24 Lug 2007, 11:23:54 »
Ciao lbo,
per la creazione di un modulo, ti consiglio di consultare i manuali disponibili su joomla.org http://help.joomla.org/content/section/12/125/
e un manuale per lo sviluppo scritto in italiano
http://www.allone.it/joomla-1.0-manuale-dello-sviluppatore.html
TTI - Team Traduzione Italiano di Joomla.it - Guide su Joomla

 



Web Design Bolzano Kreatif