J'utilise une extension et j'aimerais apporter quelques modifications CSS, mais je ne veux pas que ces modifications soient perdues lorsque je mets à jour l'extension.
Comment pourrais-je procéder pour effectuer une substitution CSS?
Vous devez d’abord vous assurer que le développeur a utilisé la bonne approche pour importer le fichier CSS, en utilisant JHtml
, comme suit:
JHtml::_('stylesheet', 'mod_module/style.css', ['relative' => true]);
La clé de ceci est l'argument true
. Si ceci n'est pas défini ou est false
, alors le remplacement n'est pas possible.
L'argument true
signifie que le chemin est relatif au /media
et lors de l’importation du fichier, il vérifie d’abord le répertoire CSS du modèle pour voir s’il existe une substitution.
Prenons donc mod_login à titre d'exemple. Pour effectuer le remplacement, vous devez créer un dossier appelé mod_login dans le répertoire suivant:
templates/YOUR_TEMPLATE/css /
le résultat sera donc:
templates/YOUR_TEMPLATE/css/mod_login /
Une fois terminé, copiez le fichier CSS des extensions à partir du fichier media/
dossier dans votre répertoire nouvellement créé, vous obtiendrez donc:
templates/YOUR_TEMPLATE/css/mod_login/style.css
Vous pouvez alors commencer à éditer ce fichier comme vous le souhaitez.
La réponse de Lodder est excellente et présente les possibilités disponibles dans Joomla pour les remplacements css des extensions. Mais comme il l’a mentionné dans sa question, toutes les extensions ne prennent pas en charge cette méthode pour les substitutions css.
Un autre moyen pratique d'appliquer vos propres styles pour les extensions consiste à placer tous vos styles personnalisés dans un fichier de substitution custom.css de votre modèle.
Généralement, la plupart des modèles commerciaux offrent un moyen facile d’ajouter vos propres substitutions css. Une pratique très courante consiste à créer un fichier custom.css dans le dossier css du modèle.
Ce Q/A ici: Comment puis-je remplacer les styles CSS dans mon modèle? montre comment procéder. et a des références pour les cadres de modèles les plus populaires.
Si vous construisez votre propre modèle personnalisé, vous pouvez simplement ajouter votre css supplémentaire dans le fichier css de votre modèle ou lier un fichier css supplémentaire pour vos remplacements d'extensions.