web-dev-qa-db-fra.com

Ajout d'icônes aux éléments de sous-menu d'arrière-plan

J'ai commencé à développer mon tout premier composant et à utiliser la classe JSubMenuHelper de Joomla pour ajouter un sous-menu permettant de définir les différentes vues, comme suit:

public static function addSubmenu($submenu) 
{
    JSubMenuHelper::addEntry(
        JText::_('COM_SHOUTBOX_SUBMENU_SHOUTS'),
        'index.php?option=com_shoutbox',
        $submenu == 'shouts'
    );
}

Cela fonctionne parfaitement et produit les éléments suivants:

enter image description here

Cependant, j'aimerais ajouter une icône avant la chaîne, comme l'a fait Kunena. (Voir l'image ci-dessous)

enter image description here

Kunena a construit manuellement son menu, ce que je pourrais, mais je préférerais m'en tenir à la méthode addEntry de Joomla.

Ma question est donc la suivante: comment puis-je ajouter une icône à chaque élément de menu?

5
Lodder

Vous pouvez utiliser le premier paramètre de addEntry () pour cela, par exemple:

public static function addSubmenu($submenu) 
{
    JSubMenuHelper::addEntry(
        '<i class="icon-home"></i>' . JText::_('COM_SHOUTBOX_SUBMENU_SHOUTS'),
        'index.php?option=com_shoutbox',
        $submenu == 'shouts'
    );
}

Cela ajouterait l'icône d'accueil à votre étiquette de menu. Vous pouvez voir une liste des icônes fournies avec. Un aperçu de toutes les icônes livrées avec le modèle Isis est disponible à l'adresse suivante: http://kyleledbetter.com/jui/icons/

documentation addEntry: https://api.joomla.org/cms-3/classes/JHtmlSidebar.html#method_addEntry

4
fruppel