Oubli de création d’un thème enfant (Créer un compte)

  • WordPress :6.1
  • Statut : non résolu
12 sujets de 1 à 12 (sur un total de 12)
  • Auteur
    Messages
  • #2443262
    kingsdavid
    Participant
    Padawan WordPress
    53 contributions

    Bonjour,

    J’ai crée un site avec WP mais j’ai oublié de créer un thème enfant.
    Maintenant que le site est terminé, vais-je tout perdre si je crée le thème enfant ?

    Merci pour vos réponses.

    #2443266
    C_Lucien
    Modérateur
    Maître WordPress
    5115 contributions

    Bonjour,

    non, vous ne perdrez pas tout en créant le thème enfant. Il vous faudra « simplement » reporter vos personnalisations dans le thème enfant.

    Quand vous serez certain d’avoir tout remis, vous pourrez recharger le thème parent depuis la source (via FTP).

    Faites une sauvegarde de la base de données, qui contient les personnalisations.

    #2443272
    Li-An
    Participant
    Maître WordPress
    28710 contributions

    Bonjour, il existe des extensions pour migrer les personnalisations d’un thème parent vers un thème enfant https://fr.wordpress.org/plugins/customizer-export-import/

    #2443310
    kingsdavid
    Participant
    Padawan WordPress
    53 contributions

    Merci à vous deux.

    J’ai peur de faire des bêtises et perdre mes pages, et données. Avez-vous un lien à me donner où il est expliqué pas à pas la procédure ?

    La méthode de l’extension fait exactement la même chose qu’en manuel (créetion d’un dossier thème_child, et les fichiers css et php ?).
    L’extension peut-elle être désinstallée une fois le thème enfant crée ?

    • Cette réponse a été modifiée le il y a 1 année et 8 mois par kingsdavid.
    • Cette réponse a été modifiée le il y a 1 année et 8 mois par kingsdavid.
    #2443315
    ferman
    Modérateur
    Maître WordPress
    7119 contributions

    Il n’y a aucun risque. Vous ne touchez pas au thème parent en créant le thème enfant donc les données ne peuvent pas être perdues. Utilisez l’extension « child theme configurator« . C’est très simple et très rapide. Vous acceptez les réglages par défaut. On peut désinstaller l’extension une fois le thème créé .

    Vous pouvez ensuite activer votre thème enfant comme n’importe quel autre thème; vous verrez alors votre site sans aucune des personnalisations que vous avez pu faire sur le thème parent. Comme dit plus haut, il faudra transférer ces personnalisations et là encore, vous ne perdrez aucune donnée.

    #2443320
    kingsdavid
    Participant
    Padawan WordPress
    53 contributions

    merci, voilà c’est fait.

    Une dernière question : si je veux personnaliser les styles de mon thème enfant, je dois donc le faire sur la feuille style.css du thème enfant. Si j’ai bien compris, c’est elle qui va prendre le dessus par rapport à la feuille du thème parent. Mais pour un même item présent dans les deux feuilles, n’y aura t-il pas de conflits entre eux.

    Un exemple concret. Dans la feuille parent, la bordure de mes tableaux est noire, dans la feuille enfant je la mets jaune. Comment cela sera géré  à l’affichage du site ?

    #2443329
    ferman
    Modérateur
    Maître WordPress
    7119 contributions

    Si j’ai bien compris, c’est elle qui va prendre le dessus par rapport à la feuille du thème parent.

    Oui. Dans le cas où les CSS supplémentaires ont bien été mises dans la feuille de style du thème parent. Par contre, si elles ont été mises dans les « CSS additionnelles » du thème (personnaliser -> « css additionnelles »), ce sont ces dernières qui l’emporteront. La raison en est que les CSS créées dans la feuille de style sont stockées …dans la feuille de style et appartiennent en propre au thème parent alors que les « CSS additionnelles » » sont stockées dans la base de données et s’appliquent au thèmes parent et enfant. Le bon côté des choses est qu’il n’est pas nécessaire de recopier les personnalisations faites à l’aide de « CSS additioinelles »; elles s’appliqueront au thème enfant. Vous pouvez bien sûr les  mettre également dans  la feulle de style du thème enfant si vous voulez mais ça ne changera rien.

    Mais pour un même item présent dans les deux feuilles, n’y aura t-il pas de conflits entre eux.

    Non, voir ci-dessus. Si vous voulez absolument surmonter une règle CSS placée dans les « CSS additionnelles » du thème parent par une règle  CSS du thème enfant, il faut explicitement donner la priorité à cette dernière avec « !important ».

    par exemple: « CSS additionnelles » thème parent: element {color:blue} , feuille de style thème enfant : element {color:red} : couleur finale:bleu.

    « CSS additionnelles » thème parent: element {color:blue} , feuille de style thème enfant : element {color:red!important} : couleur finale:rouge.

    En pratique on n’a jamais besoin de faire ça et l’usage de !important n’est pas recommandé, sauf cas « d’urgence ».

    Edit: Je ‘avais pas vu votre dernière phrase : ce sera jaune.

     

    • Cette réponse a été modifiée le il y a 1 année et 8 mois par ferman.
    #2443402
    Flobogo
    Modérateur
    Maître WordPress
    20398 contributions

    Bonjour,

    Tout à fait d’accord avec @ferman, sauf sur un point, concernant les CSS additionnelles  :

    Le bon côté des choses est qu’il n’est pas nécessaire de recopier les personnalisations faites à l’aide de « CSS additionnelles »; (…)
    Vous pouvez bien sûr les mettre également dans la feuille de style du thème enfant si vous voulez mais ça ne changera rien.

    En termes de résultats à l’écran, effectivement, ça ne change rien.
    Mais il faut savoir que vos CSS additionnelles ne sont pas « touchées » par la minification des fichiers, si vous avez ce genre d’outil avec une extension, qui permet de réduire et mettre en cache les fichiers JS et CSS, dans le but d’accélérer l’affichage des pages. Donc, si la vitesse d’affichage de votre site (et son optimisation) vous préoccupe, il faut mettre toutes vos CSS perso dans le fichier style.css du thème-enfant.

    De plus, les CSS additionnelles s’affichent dans le code-source, et si on en met des kilomètres, ça ne fait pas très esthétique.

    Mais alors, me direz-vous, à quoi servent les CSS additionnelles ? Bonne question 😉
    Selon moi, elles ne devraient servir qu’à titre provisoire, pour effectuer des tests de modifications  : sinon, c’est compliqué de faire des tests si il faut télécharger et recharger 36 fois la feuille de style par FTP, pour faire une modif mineure (et si en plus, on a une extension de cache, il faut penser à la désactiver et vider le cache pendant les tests). Mais une fois que ça vous convient, je vous conseille de reporter la modif dans votre feuille de style du thème-parent.

    RECTIFICATIF → attention, petite coquille ci-dessus, il faut lire :

    je vous conseille de reporter la modif dans votre feuille de style du thèmeenfant

    • Cette réponse a été modifiée le il y a 1 année et 8 mois par Flobogo. Raison: Édit
    #2443415
    C_Lucien
    Modérateur
    Maître WordPress
    5115 contributions

    Bonjour,

    vos CSS additionnelles ne sont pas « touchées » par la minification des fichiers

    j’apprends quelque chose. Merci @flobogo !

    #2443460
    Li-An
    Participant
    Maître WordPress
    28710 contributions

    Ben moi aussi j’apprends quelque chose. Il y a des extensions qui proposent la même chose, je me demande si la minification est gérée.

    #2443461
    C_Lucien
    Modérateur
    Maître WordPress
    5115 contributions

    Bonjour,

    du coup, j’ai déplacé mes CSS additionnelles dans le fichier style.css du thème enfant. Top !

    #2443540
    Flobogo
    Modérateur
    Maître WordPress
    20398 contributions

    vos CSS additionnelles ne sont pas « touchées » par la minification des fichiers

    j’apprends quelque chose. Merci

    De rien. Mais c’est juste « logique » quand on y pense : comme l’a dit @ferman, les CSS additionnelles sont enregistrées en BDD, pas dans un fichier CSS. L’extension de minification est conçue pour intervenir sur les fichiers, pas sur la BDD.

12 sujets de 1 à 12 (sur un total de 12)
  • Vous devez être connecté pour répondre à ce sujet.