![]() | Dziś chciałbym opisać jak zrobić graficzne przyciski menu. Gotowy przykład działa na naszej stronie TideSoftware.pl (to są te przyciski pod głównym menu). Właściwie jest to bardziej przykład zastosowania HTML i CSS, jednak osadzone jest w Joomla! (w naszym przypadku wersja 1.5). Co więcej na końcu znajduje się kawałek kodu PHP ułatwiającego stworzenie własnego modułu Joomla!. A zatem do dzieła (cały przykład oparty jest na kodzie naszego portalu, jednak przytoczony przykład możesz swobodnie zastosować u siebie). |
Musimy utworzyć następujące pliki:
W części dotyczącej PHP i modułu do budowy menu wykorzystałem dostępny na http://extensions.jomla.org/ moduł Ninja Simle Icom. Świetnie się nadawał do przeróbki.
Interesuje nas głównie blok <body></body>.
I to w zasadzie najważniejsze z kodu HTML. Cała „magia” jest w szablonie CSS. Poniżej pełny kod.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"><HTML>
<HEAD>
<link rel="stylesheet" href="/template.css" mce_href="/template.css" type="text/css" />
</HEAD>
<BODY>
<div id="menu">
<ul>
<li>
<div id="przycisk">
<a href="/http://www.tidesoftware.pl/index.php/lang-pl/oferta/korzyci-biznesowe"><img src="/http://tidesoftware.pl//modules/mod_nj_simple_icon/mod_nj_simple_icon/images/0098.png" alt="Korzyści biznesowe" height="32px" width="32px" /><br/>Korzyści<br/>biznesowe</a>
</div>
</li>
<li>
<div id="przycisk">
<a href="/http://www.tidesoftware.pl/index.php/lang-pl/oferta/branze"><img src="/http://tidesoftware.pl//modules/mod_nj_simple_icon/mod_nj_simple_icon/images/0225.png" alt="Branże" height="32px" width="32px" /><br/>Branże</a>
</div>
</li>
<li>
<div id="przycisk">
<a href="/http://www.tidesoftware.pl/index.php/lang-pl/oferta/rodzaj-dziaalnosci"><img src="/http://tidesoftware.pl//modules/mod_nj_simple_icon/mod_nj_simple_icon/images/0076.png" alt="Rodzaj działalności" height="32px" width="32px" /><br/>Rodzaj<br/>działalności</a>
</div>
</li>
<li>
<div id="przycisk">
<a href="/http://www.tidesoftware.pl/index.php/lang-pl/oferta/procesy-biznesowe"><img src="/http://tidesoftware.pl//modules/mod_nj_simple_icon/mod_nj_simple_icon/images/0022.png" alt="Procesy biznesowe" height="32px" width="32px" /><br/>Procesy<br/>biznesowe</a>
</div>
</li>
<li>
<div id="przycisk">
<a href="/http://www.tidesoftware.pl/index.php/lang-pl/oferta/platforma-i-technologia"><img src="/http://tidesoftware.pl//modules/mod_nj_simple_icon/mod_nj_simple_icon/images/0044.png" alt="Platforma i technologia" height="32px" width="32px" /><br/>Platforma<br/>i technologia</a>
</div>
</li>
<li>
<div id="przycisk">
<a href="/http://www.tidesoftware.pl/index.php/lang-pl/oferta/cennik-i-licencjonowanie"><img src="/http://tidesoftware.pl//modules/mod_nj_simple_icon/mod_nj_simple_icon/images/0013.png" alt="CCennik i licencjonowanie" height="32px" width="32px" /><br/>Cennik<br/>i licencjonowanie</a>
</div>
</li>
</ul>
</div>
</BODY>
</HTML>
I to już wszystko. Mamy gotowe menu. Poniżej pełny kod, a dalej pokazałem jeszcze prostą pętlę PHP do utworzenia własnego menu.
body {font-family: Verdana,Arial; line-height: 1.3em; margin: 0px 0px 0px 0px; font-size: 11px; color: #000000;}
img {border-width: 0px; border-style: none;}
#menu ul{
padding: 0px;
margin: 0px;
}
#menu li{
list-style-type: none;
marker-offset: 0px;
float: left;
padding: 0px;
margin: 0px;
}
#przycisk a{
display: block;
width: 130px;
height: 70px;
padding: 0px;
margin: 0;
background: url(http://tidesoftware.pl//templates/tidesoftware/images/PrzyciskG.png) no-repeat;
padding-top: 4px;
text-align: center;
float: left;
text-decoration: none;
font-weight: normal;
color: #215868;
}
#przycisk a:hover {
background : url(http://tidesoftware.pl//templates/tidesoftware/images/PrzyciskD.png) no-repeat;
color: #215868;
text-decoration: none;
font-weight: normal;
color: #E36C0A;
}
Prosta pętla w PHP łącząca kod HTML i PHP (także generujący kod PHP). Poniższy przykład wkleiłem wprost do definicji modułu Ninja Simple Icon, dzięki czemu nie musiałem definiować wszystkich parametrów itp. Zachęcam do napisania własnego modułu .
<div id="menu">
<ul>
<?php for ($i=0; $i<10; $i++){
if ($iconParams[$i][0] == 1) {?>
<li>
<div id="przycisk">
<a href="/<?php echo $iconParams[$i][3]; ?>"><img src="/<?php echo JURI::Base(); ?>/modules/mod_nj_simple_icon/mod_nj_simple_icon/images/<?php echo $iconParams[$i][1]; ?>" alt="<?php echo $iconParams[$i][4]; ?>" height="<?php echo $icon_height; ?>" width="<?php echo $icon_width; ?>" /><br/><?php echo $iconParams[$i][2]; ?></a>
</div>
</li>
<?php }
}?>
</ul>
</div>