2016-04-25 1 views

Répondre

1

Vous pouvez le faire en donnant aux pages classes CSS spécifiques dans leurs paramètres. Cette classe CSS sera également utilisée dans les modules de navigation habituels. De cette façon, vous pouvez définir l'icône de la page dans vos propres feuilles de style.

1

Cela dépend en fait de ce que vous voulez faire .. la manière facile: définir des classes ... Mais ce n'est pas le plus flexible.

Disons que vous avez une police d'icône personnalisée. Ou peut-être juste FontAwesome. Et vous voulez utiliser ces icônes pour être montré. Dans ce cas, j'installer le module IconPicker par Rocksolid et écrire un module personnalisé:

/system/modules/z-customs/dca/tl_page.php

$GLOBALS['TL_LANG']['tl_page']['icon']=array('Pageicon', 'Set an Icon for the Page'); 
$GLOBALS['TL_DCA']['tl_page']['fields']['icon'] = array(
    'label'     => &$GLOBALS['TL_LANG']['tl_page']['icon'], 
    'exclude'     => true, 
    'inputType'    => 'rocksolid_icon_picker', 
    'eval'     => array(
     'fieldType'=>'radio', 
     'tl_class'=>'w100 clr', 
     'iconFont' => 'files/fonts/fontawesome-webfont.svg', 
     ), 
    'sql'      => "varchar(100) NOT NULL default ''", 
); 

/templates/nav_default.html5

<?php if($item['icon']): ?>data-icon="&#x<?= $item['icon']; ?>"<?php endif; ?> 

Cette partie peut être ajouté à la <li> ou <strong> ou a. Vous pouvez également ajouter une classe à l'élément, pour vous assurer que seuls les éléments qui ont une icône obtiennent le style approprié.

Pour obtenir l'icône dans le CSS serait tout simplement faire quelque chose comme ceci:

a:before { 
    content: attr(data-icon); 
    font-family: "FontAwesome"; 
} 
+1

Merci pour l'aide et donner idée. De la même manière fonctionne aussi pour contao 4.4.x? –