- WordPress :4.6.1
- Statut : non résolu
- Ce sujet contient 11 réponses, 3 participants et a été mis à jour pour la dernière fois par
ced1870, le il y a 8 années et 2 mois.
-
AuteurMessages
-
10 décembre 2016 à 16 h 15 min #1608477
Bonjour,
Ma configuration WP actuelle
- Version de PHP/MySQL :je m’en souviens plus (5.5 ou 5.6)
- Thème utilisé : Symetrio (themeforest) – ma question est d’ordre générale
- Extensions en place : beaucoup, mais n’ont pas de lien avec ma question
- Nom de l’hébergeur : OVH
- Adresse du site : uniquement is c’est necessaire
Problème(s) rencontré(s) :
Mon thème force l’utilisation d’une couleur pour toutes les balises en ajoutant !important.
J’ai essayé d’autres modifications, mais à chaque fois , mon code disparaît.Même en apportant mon propre css à la page concernée par un style personnalisé hors celui du thème, celui-ci n’est pas pris en compte .
J’étais pourtant persuadé d’avoir lu que seul le dernier style css lu par le navigateur était pris en compteAinsi j’avais décidé de modifier à la source le style qui est donné à cette balise en supprimant « !important » à la couleur donnée, mais je constate que le thème dispose d’une fonction (fichier php) qui regénère le code CSS dans sa configuration initiale, ce qui fait que quelques minutes après ma modification, qui a bien fonctionné, cette dernière a disparu et re affiche « !important ».
Savez-vous comment on empêche cette régénération/réécriture du fichier CSS , ou alors s’il existe un moyen de court circuiter ce système à partir d’un code php ?
voici le code du thème :
.wtrPageContent table a:not(.wtrShtTimeTableEntryName):not(.remove):not(.wtrShtTimeTableEntryTrainer):not(.wtrShtTimeTableEntryRoom):not(.ptp-button):not(.view):not(.woocommerce-Button), .wtrPageContent dl a, .wtrCommentList .trackback a, .wtrCommentList .pingback a, #wtrBbp-topic-tag a:hover {color:#1fce6d;}
voici le code css de la page :
.wtrPageContent table a:not(.wtrShtTimeTableEntryName):not(.remove):not(.wtrShtTimeTableEntryTrainer):not(.wtrShtTimeTableEntryRoom):not(.ptp-button):not(.view):not(.woocommerce-Button):not(.link_style_class_white){
color: #1fce6d !important;
}
.wtrPageContent table a.link_style_class_white{font-weight:bold !important; color: white !important;}
.wtrPageContent table a.link_style_class_black{font-weight:bold !important; color: black !important;}
.wtrPageContent table a.link_style_class_yellow{font-weight:bold !important; color: yellow !important;}
.wtrPageContent table a.link_style_class_red{font-weight:bold !important; color: red !important;}Par avance je remercie les personnes qui pourront m’aider
11 décembre 2016 à 13 h 01 min #1608613Salut, une feuille CSS traitée en PHP indique une curstomiseur quelque part, c’est à dire une interface (réglages du thème) où tu définis un certain nombre de paramètres. Tu dois avoir ce réglage de couleur quelque part et c’est lui qui prend la main.
Sans le thème ni le site ou la page concernée difficile de t’aider.
11 décembre 2016 à 16 h 17 min #1608641salut,
merci pour cette réponse.
le thème est : Symetrio (Wonster theme) via themeforest.
Selon toi, cette fonction automatique de régénération du fichier css provient de function.php ?
Au fait, quel fonction php (code php) permettrai de régénérer ce fichier ?
existe t-il un moyen contourné de passer outre le « !important » du style de cette balise en utilisant les sélecteurs ou pseudo element ?
effectivement, j’ai beau ajouter !important à mon propre style « color », celui du thème prend le dessus !
voici la page concernée : tous les liens surlignés et de couleur verte sont concernés par mon problème.
11 décembre 2016 à 18 h 23 min #16086481 – Tu as un accès au support depuis le sommaire WP
2 – Tu dois mettre « custom » dans Theme skin dans les réglages du thème lui-même
3 – A partir de là tu vas dans personnalisation (Customizer) et tu as des réglages de couleurs pour les différentes zones du thème (Pièce jointe).
4 – Il y a une documentation avec le thème…
Fichiers joints :
Vous devez être connecté pour voir les fichiers joints.11 décembre 2016 à 21 h 53 min #1608657Merci,
mais cette option a déjà été utilisée.
Le problème c’est qu’il ne fait que remplacer la couleur par défaut des balises sans pouvoir supprimer le « !important »
je vais tenter de trouver le fichier php de cette interface.
11 décembre 2016 à 22 h 14 min #1608658sais tu quelle fichier php à partir de l’arborescence principale de WordPress pourrait contenir le code de l’interface et qui imposerait « !important » au style des couleurs.
Il y en a tellement que ça m’aiderait d’avoir une piste
12 décembre 2016 à 0 h 01 min #1608663Bon j’aurai mis 3heures pour de la rétro ingénierie
J’ai trouvé le fichier php qui stylise toutes les polices du thème et ai pu remplacé true par false pour l’option !important.
Ainsi mes styles perso en « !important » remplace la couleur par défaut
Momofre je te remercie de m’avoir guider dans cette recherche. C’était la première fois que j’allais aussi profond dans le code d’un thème.
C’est surtout le terme « Customizer » qui m’a beaucoup aidé.
Comment fait-on pour mettre en « résolu » ??
12 décembre 2016 à 8 h 44 min #1608692salut
petite info CSS au passage, on peut overrider un !important
par exemple
div.maclasse { color : red !important; }
sera plus fort que
.maclasse { color : red !important; }
donc dans ton code tu aurais pu aussi ajouter des tags dans la règle CSS pour la rendre plus importante
CEd
12 décembre 2016 à 12 h 02 min #1608713merci pour ce bon conseil Ced1870,
<div>Mais maintenant je me demande si il y a une hiérarchie de priorité dans les balises principales : a, table, h1, div, etc ?
<div>par exemple est ce que « table » n’a pas plus de priorité qu’une « div » !</div>
</div>
<div>Ainsi si le thème cible déjà tous les « table » est-ce que le fait de mettre ta proposition « div.maclasse { color : red !important; } » ne vas pas avoir aucun effet ?</div>
<div>Ce conseil étant très interressant, aurais tu une source officielle (ex :w3school) de ce que tu m’indiques ?</div>
<div></div>12 décembre 2016 à 12 h 36 min #1608715Ce conseil étant très interressant, aurais tu une source officielle (ex :w3school) de ce que tu m’indiques ?
si tu cherches de la documentation, je te conseille les livres de Raphael Goetter qui est la référence en la matière HTML/CSS
Ainsi si le thème cible déjà tous les « table » est-ce que le fait de mettre ta proposition « div.maclasse { color : red !important; } » ne vas pas avoir aucun effet ?
ici la div.maclasse est un exemple à adapter à ton code, c’était juste pour illustrer l’idée. Dans ton exemple il faut reprendre ta structure, soit un truc du genre
.wtrPageContent table td a.link_style_class_white{font-weight:bold !important; color: white !important;}
mais je crois que tu es déjà parvenu à tes fins, je me trompe ?
12 décembre 2016 à 12 h 45 min #1608716Je connais effectivement le site de Raphael Goetter.
Et ou j’ai déjà résolu mon problème.
Mais le fait de pouvoir overrider un « !important » pourrait m’être très utile dans d’autres thèmes, cela me ferrai gagner beaucoup de temps.
Je vais donc prendre le temps de lire les livres de Raphael G .
sauf que l’exemple que tu cites n’a pas overrider le style du thème.
Ainsi je me demande si ma syntaxe utilisé n’était pas mauvaise, car j’ai remarqué plusieurs fois que selon comme on place une balise avant une classe ou d’utiliser un sélecteur pouvait influencer le code de manière inattendue.
12 décembre 2016 à 13 h 07 min #1608729oui l’ordre des éléments dans la feuille compte ainsi que l’ordre des feuilles appelées dans la page
A poids égal, le dernier appelé est pris en compte
A poids supérieur, peu importe l’ordre
Plus tu ajoutes de tags dans ta règle, plus elle aura de poids, les pseudo classes :first-child, :hover et autres comptent aussi dans le poids
sauf que l’exemple que tu cites n’a pas overrider le style du thème.
Mon exemple n’est peut etre pas bon en effet (pas sur du code à overrider dans ton premier post), l’essentiel est que tu comprennes le principe
-
AuteurMessages
- Vous devez être connecté pour répondre à ce sujet.