CSS override : oui cela est possible avec un peut de modification dans le code.

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

  • [Astuce] CSS override : oui cela est possible avec un peut de modification dans le code.

    Bonjour,

    Si vous en avez marre comme moi de ne pas pouvoir modifier facilement les CSS de la même façon que le "template override" et bien cette astuce est pour vous.

    Je ne comprend pas pourquoi cette astuce n'a pas été intégrer à joomla.

    Voici comment faire du "CSS override" :

    1) On vas prendre comme exemple un module joomla coder en MVC.
    Le fichier à trouver est le fichier qui demande à joomla de charger le CSS du module, on doit chercher un code du genre:
    Code PHP:
    JHTML::stylesheet('modules/'.$module->module.'/assets/style.css'); 
    une fois cette ligne trouver editer ce code pour le transformer de cette façon :
    Code PHP:
    if (is_file(JPATH_SITE.DS.'templates'.DS.$app->getTemplate().DS.'css'.DS.$module->module.".css")) {
            
    JHTML::stylesheet('templates/'.$app->getTemplate().'/css/'.$module->module.'.css');
            } else {
        
    JHTML::stylesheet('modules/'.$module->module.'/assets/style.css');    
        } 
    Avec ce code on demande à joomla de voir s'il existe dans le dossier CSS de votre TEMPLATE actif un fichier qui se nomme : nondumodule.css
    si la condition est vrais alors nondumodule.css seras charger à la place du fichier style.css original de votre module.

    Personnellement, j'ai respecter cette logique :

    template/html/nondumodule/default.php
    => De cette façon on peut personnaliser la mise en forme du module. Autoriser par joomla.
    template/css/nondumodule.css
    => De cette façon on peut personnaliser le CSS. Faisable grâce à mon astuce.
    template/images/nondumodule/
    => Les images associer à votre fichier CSS s'il y en a.

    Et voila une fois votre module modifier de cette façon, vous faite du TEMPLATE override, CSS override et IMAGES override (lier au fichier css)

    Dans le fichier CSS modifier les appeles aux images de cette façon :
    Code:
    ../images/nondumodule/votreimage.png
    Cordialement,
    Theking83
    Webmaster
    www.ltdw.net
    Pas de support par MP je réponds aux questions exclusivement posées sur le forum.

  • #2
    Re : CSS override : oui cela est possible avec un peut de modification dans le code.

    salut ça a l'air intéressant mais comme on modifie la source ça change rien aux problèmes de supdates, non ?

    Commentaire


    • #3
      Re : CSS override : oui cela est possible avec un peut de modification dans le code.

      Ben non puisque les update modifie le corps de Joomla, pas le template. Et dans cette astuce c'est uniquement au niveau du dossier du template que l'on fait la modification

      Attention : Si vous utilisez un template fourni d'origine par la version de joomla, le soucis de l'update peux poser problème. Renommez votre template et le tour est joué .
      Merci pour cette astuce qui va en aider plus d'un.

      Commentaire


      • #4
        Re : CSS override : oui cela est possible avec un peut de modification dans le code.

        Joomla pas de soucis, mais ce sont les updates de modules qu'il faut surveiller!
        Il est vrai que la multiplicité des feuilles de style, une par composant et par module souvent, ainsi que leur dissémination ne simplifie pas la gestion d'un site !!!
        Et ne va pas dans le sens de l'optimisation non plus.
        Ce serait bien d'avoir une gestion basée sur le principe de celles des langues, toutes les feuilles de style installées dans un repertoir unique.
        Et la possibilité de ne pas charger la css pour chaque module!
        2.0???
        I love overrides
        -------
        UX/UI Designer - Grenoble - greendog.fr

        Commentaire

        Annonce

        Réduire
        Aucune annonce pour le moment.

        Partenaire de l'association

        Réduire

        Hébergeur Web PlanetHoster
        Travaille ...
        X