Afficher l'icone modifier au lieu du texte

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [RÉGLÉ] Afficher l'icone modifier au lieu du texte

    Bonjour à vous,

    J'ai réalisé mon propre template (rien de difficile : 3 div qui se suivent : 1 pour la bannière, 1 pour le menu et une pour la liste des articles ou l'affichage d'un article selon la page).

    Mon problème est au niveau de l'affichage d'un article : je voulais surcharger le css pour faire ce que je veux, mais j'ai un petit problème au niveau de l'icone "modifier" qui s 'affiche pour les admins/rédacteurs : elle ne s'affiche pas, c'est du texte à la place.

    Sur le net, j'ai pu trouver que cela peut provenir d'un conflit entre les règles d'affichage entre les paramètres du menu et des articles : mais j'ai tout vérifié et c'est ok.

    J'ai aussi trouvé une autre piste qui dit "le template ne le permet pas" : mais là je ne voit pas de quoi ça parle : il faut prévoir quelque chose dans mon template pour cela? Si oui, auriez vous une piste?

    Je vous remercie d'avance.

    @++
    Dernière édition par ndsaerith à 21/09/2014, 20h07
    Merci de mettre à jour le titre de votre sujet quand il est réglé

    -- CV : http://annebc.0fees.net/ - Fiche Extensions Joomla Fr :
    http://extensions.joomla.fr/rechercher-par-contributeur/anne-brunas-dp1
    --

  • #2
    Re : Afficher l'icone modifier au lieu du texte

    Bonsoir ndsaerith,

    j'ai un petit problème au niveau de l'icone "modifier" qui s 'affiche pour les admins/rédacteurs : elle ne s'affiche pas, c'est du texte à la place.
    J'imagine que le texte qui reste affiché à la place est "Modifier", dans ce cas, le problème me semble effectivement venir du template.

    L'affichage de l'icône Modifier est gérée par les lignes 118-205 (fonction edit) du fichier components/com_content/helpers/icon.php. Le dernier paramètre de cette fonction permet d'indiquer si l'icône Modifier doit utiliser l'ancienne image (media/system/images/edit.png) ou l'icône de la police IcoMoon suivie du texte "Modifier.
    Par défaut, c'est la deuxième possibilité càd l'icône IcoMoon suivie du texte "Modifier". Il semble ici que le template ne charge pas la police IcoMoon et donc il ne reste que le texte "Modifier".

    Il y a deux possibilités pour corriger le template (utiliser soit l'une soit l'autre) :

    1) Faire une surcharge dans le template pour utiliser l'ancienne image

    Les vues article, blog d'une catégorie et articles en vedette utilisent un layout pour afficher l'icône Modifier. Il s'agit de faire une surcharge de ce layout en y ajoutant le paramètre ad hoc pour utiliser l'ancienne image. C'est la méthode utilisée par un template comme Beez3 en surchargeant les vues des articles.

    Pour la surcharge de ce layout, il faut créer les répertoires templates/mon_template/html/layouts/joomla/content/ et y copier le fichier icons.php depuis layouts/joomla/content/
    Puis modifier la ligne 31 (ajout en rouge) :
    Code:
    de :
    <li class="edit-icon"> <?php echo JHtml::_('icon.edit', $displayData['item'], $displayData['params']); ?> </li>
    en :
    <li class="edit-icon"> <?php echo JHtml::_('icon.edit', $displayData['item'], $displayData['params'][COLOR=#ff0000], array(), true[/COLOR]); ?> </li>
    Avantage :
    - l'image remplace le texte "Modifier"
    Inconvénients :
    - l'image est une image "ancienne" (mais modifiable)
    - pour les vues n'utilisant pas le layout (ex: liste d'une catégorie) il faudra faire une autre surcharge

    2) Charger la police IcoMoon dans le template

    C'est ce que fait par exemple le template Protostar directement dans son CSS. On peut intégrer la police IcoMoon au template en ajoutant un appel à media/jui/css/icomoon.css dans templates/mon_template/index.php
    Selon ce qui est déjà utilisé pour l'intégration du CSS du template cela peut se faire :

    soit en PHP avant le <head> :
    Code PHP:
    $doc->addStyleSheet(JUri::base() . 'media/jui/css/icomoon.css'$type 'text/css'$media 'screen,projection'); 
    soit en HTML entre le <head> et le </head> :
    Code HTML:
    <link href="<?php echo $this->baseurl; ?>/media/jui/css/icomoon.css" rel="stylesheet" type="text/css" />
    Avantage :
    - simple, une seule ligne de code à ajouter (pour charger le CSS)
    - les icônes IcoMoon font partie de Joomla! et sont utilisées à d'autres endroits, elles peuvent être utilisées aussi dans les articles
    Inconvénient :
    - le texte "Modifier" reste affiché à côté de l'icône (pour le changer il faudrait modifier un fichier "core" ce qui n'est jamais recommandé)

    Amicalement,
    Rajoz

    Commentaire


    • #3
      Re : Afficher l'icone modifier au lieu du texte

      Wow merci beaucoup pour cette réponse détaillée !

      Alors j'ai choisi la solution simple La 2ème.

      Et ça fonctionne super !

      Merci beaucoup !!!!
      Merci de mettre à jour le titre de votre sujet quand il est réglé

      -- CV : http://annebc.0fees.net/ - Fiche Extensions Joomla Fr :
      http://extensions.joomla.fr/rechercher-par-contributeur/anne-brunas-dp1
      --

      Commentaire

      Annonce

      Réduire
      Aucune annonce pour le moment.

      Partenaire de l'association

      Réduire

      Hébergeur Web PlanetHoster
      Travaille ...
      X