WordPress : Comment conserver les modifications de mon thème personnalisé après la mise à jour du thème enfant Genesis
J’utilise un thème enfant Genesis sur lequel j’aimerais apporter des modifications personnalisées, mais j’aimerais pouvoir le mettre à jour lorsqu’une nouvelle version sort sans perdre mes modifications. Je connais bien la pratique parent-enfant, mais étant donné que mon thème est déjà un enfant de la genèse, quelle est la meilleure façon d’aborder cela ?
Tout d’abord, j’ai essayé de créer un thème parent-enfant-enfant, mais non seulement une partie du balisage est différente, mais j’ai également perdu toutes mes sections de widgets du thème parent-enfant.
-créé un nouveau répertoire avec un style.css et avoir ce code :
/*
Theme Name: parent-child-child
Template: genesis
*/
@import url("../parent-child/style.css");)
Ensuite, j’ai copié tous les fichiers (functions.php, Template files, other…Je n’ai gardé que le style.css de mon premier essai) de mon thème parent-enfant vers mon thème parent-enfant-enfant et cela a fonctionné, mais je Je crains que le code de functions.php ne soit chargé deux fois et ralentisse mon site Web ou même le décompose à un moment donné.
Quelle serait la bonne façon de traiter ce problème?
Merci
Radi
Solution n°1 trouvée
D’après ce que j’ai compris, il n’y a pas de thème petit enfant dans la version actuelle de WordPress. Il n’est pas pris en charge pour le moment, mais j’ai entendu dire que WordPress sera pris en charge dans la future version.
Ainsi, si vous modifiez directement le thème de votre enfant et le mettez à niveau, tous vos changements disparaîtront. Pour conserver vos modifications, vous pouvez faire comme ceci :
- dupliquer le thème chili. Dupliquez tout, pas seulement le fichier functions.php.
- changez le nouveau nom de thème enfant (et slug) en un autre. Cela fera que WordPress le verra comme un thème totalement différent.
- modifier le nouveau thème enfant
Chaque fois que votre thème enfant d’origine est mis à jour, vous devez consulter son journal des modifications et analyser les fichiers pour les modifications et les appliquer à votre nouveau thème enfant.
Solution n°2 trouvée
Genesis (et d’autres comme lui) a toujours eu un problème avec un manque de consensus sur la façon de faire face aux mises à jour de ses thèmes enfants. La réponse conventionnelle simple est que vous devriez rarement ou jamais les mettre à jour, car cela peut prendre beaucoup de temps pour éviter de casser des choses. StudioPress ne fait plus de mises à jour automatiques pour les thèmes enfants, vous devez donc faire tout votre possible pour suivre les mises à jour, les obtenir et fusionner les modifications dans votre thème enfant existant. Si vous le faites via un référentiel git, vous pouvez l’automatiser et le gérer assez simplement et bien. Mais même si vous faites cela, pourquoi rendre les choses plus difficiles que nécessaire ?
Mon conseil:
- N’essayez pas de créer un thème pour les petits-enfants. Personne ne recommande cela.
-
N’apportez PAS de modifications à un thème enfant Genesis. Moins il y a de changements, mieux c’est, de préférence zéro. Ensuite, vous pouvez exécuter des mises à jour sans souci.
-
FAITES toutes vos personnalisations en CSS supplémentaire en dehors du thème enfant. Ajoutez-le au Customizer si vous le souhaitez, sauvegardez-le soigneusement ou verrouillez les personnes que vous ne voulez pas toucher.
- FAIRE d’autres personnalisations dans les plugins ou extraits originaux.
- Utilisez les plugins Genesis comme Simple Hooks et Simple Edits.
Si vous basculez entre les thèmes parent/enfant, vos paramètres de widget et de personnalisation ne seront pas transférés entre eux. Vous devez utiliser des plugins d’importation/exportation pour cela.
Si vous fabriquez votre propre enfant Genesis :
- N’UTILISEZ PAS @import pour votre CSS.
-
UTILISEZ la méthode de mise en file d’attente pour inclure des styles. Couvert dans ce bon tutoriel sur le thème de base 2017.
-
NE copiez PAS les
functions.php
fichiers du thème parent ou du modèle. Si la même fonction est chargée deux fois, cela générera immédiatement une grosse erreur. - MODIFIEZ le thème parent
functions.php
avec du code supplémentaire dans votre enfantfunctions.php
. Ceci est expliqué dans lafunctions.php
section « Utilisation » à la fin de cet excellent article. C’est aussi une longue introduction exceptionnelle au codage d’un thème enfant aujourd’hui.
Solution n°3 trouvée
En théorie;
J’ai regardé ce problème aussi. Jusqu’à présent, je sais que vous pouvez créer un plugin, puis remplacer une certaine page dans le thème en la remplaçant, en utilisant le nom du modèle de thèmes, par une page personnalisée dans un plugin. Malheureusement, je ne trouve pas le moyen d’en ajouter un en utilisant le répertoire des plugins.
J’espère que ce peu aide.
0 commentaire