Forum->Flatnux->suggerimento: custom section icons
  
Welcome Unknown Register Help383 Users

User Message


johndorazio

0 Level 0 10

levellevellevellevellevellevellevellevellevellevel
profile mail home
Monday 15 March 2010 - 04:42

suggerimento: custom section icons:
Vorrei avanzare un altro suggerimento per flatnux che a mio parere gli darebbe ancora più possibilità di buona presentazione grafica: aggiungere la possibilità di avere icone "customizzate" per ogni sezione.

Io ho aggiunto questo codice alla funzione list_sections_translated() in functions.php:

if(file_exists("$path/$mod/section.png")){
$coppia ['image'] = "/$path/$mod/section.png";
}


Adesso devo soltanto aggiungere l'icona che voglio in ogni sezione e che rappresenti quella sezione, e ora la posso chiamare nel theme.php per esempio quando costruisco i menu. Anziché usare una sola icona "section.png" definita nel tema, posso averne una per ogni sezione. In questo modo posso anche costruire dei menu che siano solo grafici. Per esempio ho riposizionato il menu orizzontale sopra alla colonna centrale anziché sopra tutta la pagina e ho ridefinito così la funzione "create_h_menu()":

	function create_h_menu($separator="|")
{
/* global $theme, $home_section;
$modlist = $modlist = list_sections();
natsort($modlist);
*/
global $theme, $home_section,$_FN;
$modlist = list_sections_translated("sections"); // return array width title - link
$i=count($modlist);
foreach ($modlist as $modl)
{
$link = $modl['link'];
$title = $modl['title'];
$mysection = $modl['mysection'];
$span_id = preg_replace("/ /", "_", $title);
if($mysection==$_FN['vmod']){
$style = 'background:#E1EAEF;border-left:1px solid #999977;border-top:1px solid #999977;border-right:1px solid #999977;cursor:normal;';
$onmouseover = '';
$onmouseout = '';
}
else {
$style='cursor:pointer;border-left:1px inset #E1EAEF;';
$onmouseover = "$(\"span#$span_id\").show();";
$onmouseout = "$(\"span#$span_id\").hide();";
}
$accesskey = $modl['accesskey'];
if(array_key_exists('image', $modl)){
$title = "<img alt='$title' style='width:64px;vertical-align:middle;' src='{$modl['image']}' onMouseOver='$onmouseover' onMouseOut='$onmouseout' /><br /><span id='$span_id' style='display:none;'>".$title."</span>";
$widthstyle = "width:66px;height:80px;";
}
if ($accesskey != "")
$accesskey = "accesskey='$accesskey'";
if (--$i== 0)
$separator="";
if ($_FN['enable_mod_rewrite']==1)
echo "<div style='float:left;$style$widthstyle' onClick='location.href=\"$link.html\"'><span $accesskey>$title</span></div>$separator\n";
else
echo "<div style='float:left;$style$widthstyle' onClick='location.href=\"index.php?mod=$link\"'><span $accesskey>$title</span></div>$separator\n";
}
}


Potete vedere che cosa ne è venuto qui:
http://consultapg33.altervista.org

Certamente c'è ancora da migliorare molto ma almeno l'idea funziona...



johndorazio

0 Level 0 10

levellevellevellevellevellevellevellevellevellevel
profile mail home
Monday 15 March 2010 - 05:10

Re: suggerimento: custom section icons:
Ho aggiunto a list_sections_translated() anche un riferimento alla sezione, ossia:
coppia['mysection'] = basename($mod)


Ora ho implementato questo menu anche nel sito http://www.parrocchiasanlino.org/ .

 [1]