{"id":1241,"date":"2017-01-16T00:59:45","date_gmt":"2017-01-15T23:59:45","guid":{"rendered":"https:\/\/widemann.net\/wp-fr\/?p=1241"},"modified":"2017-05-23T13:20:11","modified_gmt":"2017-05-23T12:20:11","slug":"wordpress-theme-enfant","status":"publish","type":"post","link":"https:\/\/widemann.net\/wp-fr\/wordpress-theme-enfant\/","title":{"rendered":"WordPress : cr\u00e9ation d&#8217;un th\u00e8me-enfant"},"content":{"rendered":"<p>Il est\u00a0tentant de modifier un th\u00e8me \u201cpresque parfait\u201d pour le forcer exactement \u00e0 sa main, lui donner un caract\u00e8re plus personnel tout en conservant les atouts du th\u00e8me. Mais cette modification rend ensuite le th\u00e8me impropre \u00e0 la mise \u00e0 jour, puisque WordPress ne reconna\u00eetra plus les fichiers modifi\u00e9s et ne pourra plus appliquer automatiquement les changements de version. T\u00f4t ou tard, le th\u00e8me modifi\u00e9 prendra tellement de retard par rapport aux mises \u00e0 jour de WordPress qu&#8217;il finira par en devenir incompatible.<!--more--><\/p>\n<p>On peut, bien s\u00fbr, appliquer chaque mise \u00e0 jour \u00e0 la main. Au lieu de modifier le th\u00e8me original, on le duplique en renommant la copie et c&#8217;est cette copie que l&#8217;on modifie, en annotant soigneusement chaque modification par un commentaire facile \u00e0 retrouver avec une recherche (genre \u201cmodifi\u00e9 par Xxx\u201d). On laisse l&#8217;original se mettre \u00e0 jour, puis on utilise une comparaison de fichiers avec un \u00e9diteur de texte (tel que <a href=\"http:\/\/www.barebones.com\/products\/textwrangler\/\">TextWrangler<\/a> sur Mac) pour examiner toutes les modifications apport\u00e9es par la mise \u00e0 jour, en les reportant une \u00e0 une dans la version modifi\u00e9e et en prenant garde de ne pas casser les modifications.<\/p>\n<p>Bien \u00e9videmment, c&#8217;est abominablement laborieux, potentiellement source d&#8217;erreurs et fort p\u00e9nible. On a \u00e9t\u00e9 longtemps condamn\u00e9 \u00e0 cette punition r\u00e9guli\u00e8re, puis les mises \u00e0 jour de WP sont devenues si fr\u00e9quentes qu&#8217;il a bien fallu que quelqu&#8217;un trouve une meilleure solution\u2026 le <strong>th\u00e8me-enfant<\/strong>.<\/p>\n<p><em>Nota : l&#8217;auteur a choisi des solutions\u00a0simples \u00e0 mettre en \u0153uvre. L&#8217;article est destin\u00e9 \u00e0 ceux\u00a0dont l&#8217;int\u00e9r\u00eat pour la technique n&#8217;est pas la priorit\u00e9, mais qui souhaitent n\u00e9anmoins avoir la ma\u00eetrise de leur site WordPress. Le texte n&#8217;\u00e9voque pas SSH ni sFTP qui seraient hors-sujet, et les explications sur les CSS sont minimales. Le lecteur int\u00e9ress\u00e9 trouvera beaucoup de ressources sur ces points disponibles sur internet. Les \u00e9l\u00e9ments relatifs \u00e0 l&#8217;h\u00e9bergement ont \u00e9t\u00e9 r\u00e9alis\u00e9s sur Infomaniak, mais pourraient \u00eatre transpos\u00e9s facilement ailleurs.<\/em><\/p>\n<h2>Le\u00a0th\u00e8me-enfant<\/h2>\n<p>Un th\u00e8me-enfant est une coquille o\u00f9 l&#8217;on trouve trois\u00a0\u00e9l\u00e9ments obligatoires :<\/p>\n<p>\u2014 Un fichier de feuilles de style nomm\u00e9 \u201c<strong>style.css<\/strong>\u201d. Ce fichier, par convention, doit contenir un en-t\u00eate (d\u00e9taill\u00e9 plus loin) qui d\u00e9crit la relation entre le th\u00e8me-enfant et son \u201cparent\u201d, c&#8217;est cette convention qui le rend obligatoire. En-dehors de cela, il peut ne contenir aucun style particulier, tout le reste est facultatif.<\/p>\n<p>\u2014 Un fichier \u201c<strong>screenshot.png<\/strong>\u201d d&#8217;une taille standardis\u00e9e \u00e0 1200 x 900 pixels (toujours en 72 dpi). Cette image repr\u00e9sentera le th\u00e8me dans la galerie des th\u00e8mes vue depuis WP. Elle n&#8217;est pas obligatoire, mais la galerie sera assez inesth\u00e9tique\u00a0si elle est manquante. L&#8217;image peut repr\u00e9senter absolument n&#8217;importe quoi, m\u00eame si par convention elle est cens\u00e9e pr\u00e9senter le th\u00e8me (personnellement j&#8217;ai choisi une t\u00eate de girafe, la premi\u00e8re image qui me soit\u00a0tomb\u00e9e sous la main).<\/p>\n<p>\u2014 Enfin, pour que le th\u00e8me-enfant puisse injecter ses styles modifi\u00e9s dans le th\u00e8me parent, il faut que WP ex\u00e9cute une fonction en langage PHP qui aura pour effet d&#8217;ajouter notre fichier \u201cstyle.css\u201d dans la liste des styles mis en service. Cette fonction PHP est plac\u00e9e dans un fichier \u201c<strong>functions.php<\/strong>\u201d qui est d\u00e9crit plus loin.<\/p>\n<p>L&#8217;ensemble de ces trois \u00e9l\u00e9ments est group\u00e9 dans un r\u00e9pertoire (un dossier) dont le nom est, par convention, identique \u00e0 celui du th\u00e8me parent avec le suffixe \u201c-child\u201d, par exemple \u201ctwentysixteen-child\u201d si le th\u00e8me parent est \u201ctwentysixteen\u201d (le nom technique du th\u00e8me, en minuscules et sans espaces, est plus condens\u00e9 que le nom d&#8217;affichage \u201cTwenty Sixteen\u201d).<\/p>\n<p>Ce r\u00e9pertoire doit \u00eatre cr\u00e9\u00e9 manuellement, au m\u00eame endroit que les th\u00e8mes existants sur l&#8217;espace d&#8217;h\u00e9bergement. Pour y acc\u00e9der et manipuler directement les fichiers, il faut utiliser un client <strong>FTP<\/strong> (file transfer protocol). Nous verrons cela un peu plus loin, nous allons d&#8217;abord pr\u00e9parer les \u00e9l\u00e9ments \u00e0 installer.<\/p>\n<h2>Pr\u00e9paration des fichiers<\/h2>\n<p>Voici une <a href=\"https:\/\/widemann.net\/www2\/twentysixteen-child.zip\">archive .zip<\/a> que vous pouvez t\u00e9l\u00e9charger pour gagner du temps. Mais elle ne vous dispensera pas de lire ce qui suit, car <strong>vous devrez modifier les fichiers<\/strong> qu&#8217;elle contient pour les adapter \u00e0 votre domaine.<\/p>\n<p>Nous allons utiliser un \u00e9diteur de texte. Sur Mac, TextEdit fera l&#8217;affaire (ou TextWrangler si vous l&#8217;avez, mais ce n&#8217;est pas indispensable). Avec Windows, le plus simple sera d&#8217;utiliser Word.<\/p>\n<h3>Style.css<\/h3>\n<p>Le fichier de style ne contiendra, pour l&#8217;instant, que son en-t\u00eate, que vous pouvez copier ci-dessous :<\/p>\n<pre>\/*\r\n Theme Name: Twenty Sixteen Child\r\n Theme URI: http:\/\/domaine.fr\/wp-content\/themes\/twentysixteen-child\/\r\n Description: Twenty Sixteen Child Theme\r\n Author: Simone Envoiture\r\n Author URI: http:\/\/domaine.fr\/\r\n Template: twentysixteen\r\n Version: 1.3\r\n License: GNU General Public License v2 or later\r\n License URI: http:\/\/www.gnu.org\/licenses\/gpl-2.0.html\r\n Tags: light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready\r\n Text Domain: twentysixteen-child\r\n*\/<\/pre>\n<p>La premi\u00e8re et la derni\u00e8re ligne indiquent que l&#8217;ensemble est un \u201ccommentaire\u201d et ne doit pas \u00eatre interpr\u00e9t\u00e9 comme une feuille de style. \u201c\/*\u201d signifie \u201cd\u00e9but de commentaire\u201d, \u201c*\/\u201d le termine.<\/p>\n<p>Certains des champs doivent \u00eatre adapt\u00e9s \u00e0 votre situation personnelle. La seconde ligne \u201cTheme URI\u201d contient l&#8217;adresse du th\u00e8me-enfant. Vous devez remplacer la partie \u201cdomaine.fr\u201d par <strong>votre nom de domaine<\/strong>, et si vous cr\u00e9ez un th\u00e8me-enfant pour un autre th\u00e8me que \u201ctwentysixteen\u201d, corriger la fin en cons\u00e9quence. Idem pour la description et pour la derni\u00e8re ligne \u201cText Domain\u201d qui doit contenir le <strong>nom du th\u00e8me parent<\/strong> suivi de \u201c<strong>-child<\/strong>\u201d.<\/p>\n<p>Le champ Author doit contenir <strong>votre pr\u00e9nom et votre nom<\/strong>. Le champ Author URI doit contenir <strong>l&#8217;adresse de votre site WordPress.<\/strong><\/p>\n<p>Le champ Template doit contenir <strong>le nom du th\u00e8me parent<\/strong>, et le champ Version, sa <strong>version<\/strong>. Si vous cr\u00e9ez un th\u00e8me-enfant pour un autre th\u00e8me que \u201ctwentysixteen\u201d, vous devrez <strong>v\u00e9rifier la version<\/strong> de votre th\u00e8me parent et la reporter correctement ici.<\/p>\n<p>Le champ Tags n&#8217;est utilis\u00e9 que dans le contexte de la recherche de th\u00e8mes, inutile de vous en pr\u00e9occuper. Les champs relatifs \u00e0 la licence, en revanche, ne doivent pas \u00eatre modifi\u00e9s.<\/p>\n<p>Une fois le texte saisi, vous devez vous assurer de l&#8217;enregistrer dans le format appropri\u00e9. Dans TextEdit sur Mac, d\u00e9roulez le menu Format et s\u00e9lectionnez \u201cConvertir au format Texte\u201d, puis enregistrez-le sous le nom de \u201cstyle.css\u201d. Si vous \u00eates sous Word, enregistrez imp\u00e9rativement au format \u201cText brut\u201d et v\u00e9rifiez bien l&#8217;encodage, qui doit \u00eatre \u201cUTF-8\u201d, et les fins de lignes, qui doivent utiliser \u201cLF\u201d seulement (et non \u201cCR\u201d ou \u201cCR\/LF\u201d). Dans tous les cas, \u00e0 l&#8217;arriv\u00e9e, le document doit s&#8217;appeler \u201c<strong>style.css<\/strong>\u201d.<\/p>\n<h3>screenshot.png<\/h3>\n<p>L&#8217;image du th\u00e8me-enfant est optionnelle mais d\u00e9corera plus joliment votre liste de th\u00e8mes. Utilisez n&#8217;importe quelle image, en 72 dpi, avec une dimension de 1200 pixels de large et 900 de haut. Enregistrez l&#8217;image au format PNG sous le nom de \u201c<strong>screenshot.png<\/strong>\u201d. Et si vous \u00eates \u00e0 cours d&#8217;id\u00e9e, vous pouvez utilisez la <a href=\"https:\/\/widemann.net\/wp-fr\/wp-content\/themes\/twentysixteen-child\/screenshot.png\" target=\"_blank\" rel=\"noopener noreferrer\">girafe<\/a>.<\/p>\n<h3>functions.php<\/h3>\n<p>Rien \u00e0 modifier par rapport au fichier fourni dans l&#8217;archive .zip. Si vous pr\u00e9f\u00e9rez le cr\u00e9er vous-m\u00eame, proc\u00e9dez exactement comme pour le fichier de style, avec un \u00e9diteur de texte en mode \u201ctexte brut\u201d. Copiez le texte ci-dessous sans rien y changer, puis enregistrez-le sous le nom de \u201c<strong>functions.php<\/strong>\u201d.<\/p>\n<pre>&lt;?php\r\nfunction my_theme_enqueue_styles() {\r\n $parent_style = 'parent-style';\r\n wp_enqueue_style( $parent_style, get_template_directory_uri() . '\/style.css' );\r\n wp_enqueue_style( 'child-style',\r\n get_stylesheet_directory_uri() . '\/style.css',\r\n array( $parent_style ),\r\n wp_get_theme()-&gt;get('Version')\r\n );\r\n}\r\nadd_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles' );\r\n?&gt;<\/pre>\n<p>Nos trois fichiers sont maintenant pr\u00eats \u00e0 \u00eatre install\u00e9s sur l&#8217;espace d&#8217;h\u00e9bergement.<\/p>\n<h2>Acc\u00e8s FTP \u00e0 l&#8217;h\u00e9bergement<\/h2>\n<p>Avant de pouvoir acc\u00e9der \u00e0 votre h\u00e9bergement en FTP, vous devez cr\u00e9er un <strong>utilisateur FTP<\/strong>\u00a0pour vous-m\u00eame, et lui attribuer un mot de passe.<\/p>\n<p>Allez\u00a0sur <a href=\"https:\/\/login.infomaniak.com\/login?lang=fr\">Infomaniak<\/a> et connectez-vous sur votre console d&#8217;administration.<\/p>\n<p>S\u00e9lectionnez votre <strong>h\u00e9bergement web :<\/strong><\/p>\n<p><strong><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-1206 size-full aligncenter\" src=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-12.56.03.png\" width=\"168\" height=\"146\" \/><\/strong>Cliquez sur votre nom de domaine pour afficher les d\u00e9tails.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1208 size-full\" src=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-12.57.01-1.png\" width=\"227\" height=\"176\" \/>Dans l&#8217;\u00e9cran suivant, dans la marge gauche, s\u00e9lectionnez l&#8217;\u00e9cran <strong>FTP \/ SSH<\/strong>\u00a0pour afficher les comptes FTP existants.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1209 size-full\" src=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-13.02.36.png\" width=\"225\" height=\"199\" \/><\/p>\n<p>Cliquez sur le bouton\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1204\" src=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-12.49.00.png\" alt=\"\" width=\"103\" height=\"52\" \/>\u00a0pour cr\u00e9er un nouveau compte, ce qui fait appara\u00eetre le dialogue suivant :<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-1205 aligncenter\" src=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-12.52.14.png\" alt=\"\" width=\"748\" height=\"604\" srcset=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-12.52.14.png 748w, https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-12.52.14-300x242.png 300w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px\" \/>Si le dialogue a une apparence diff\u00e9rente, v\u00e9rifiez qu&#8217;il est en mode <strong>FTP<\/strong> et non FTP+SSH.<\/p>\n<p>S\u00e9lectionnez le r\u00e9pertoire <strong>web<\/strong> dans la liste s&#8217;il n&#8217;est pas d\u00e9j\u00e0 s\u00e9lectionn\u00e9.<\/p>\n<p>Votre serveur aura un autre intitul\u00e9 que le\u00a0\u201cmtez\u201d qui appara\u00eet ici (c&#8217;est le mien), chacun aura un groupe de quatre lettres distinct que vous devez noter car il pr\u00e9fixe votre nom de compte (par exemple ici mon nom de compte est \u201cmtez_benoit\u201d avec un caract\u00e8re \u201csoulign\u00e9\u201d entre les deux), ainsi que votre nom de serveur FTP.<\/p>\n<p>Indiquez dans le dialogue le nom de compte souhait\u00e9, en minuscules sans accents ni c\u00e9dilles ni espaces ni ponctuations. Choisissez un mot de passe diff\u00e9rent des autres par s\u00e9curit\u00e9 et notez toutes ces informations en lieu s\u00fbr. Enregistrez le nouveau compte.<\/p>\n<p>\u00c0 ce stade, si vous \u00eates d\u00e9j\u00e0 familier du FTP et que vous disposez d&#8217;une application cliente (Transmit, CyberDuck, FileZilla\u2026 il y en a plein), vous pouvez la param\u00e9trer en utilisant le nom de serveur indiqu\u00e9 (votre pr\u00e9fixe suivi de \u201c.vps.infomaniak.com\u201d, par exemple pour moi \u201cmtez.vps.infomaniak.com\u201d), votre nom de compte\u00a0(votre pr\u00e9fixe suivi d&#8217;un \u201csoulign\u00e9\u201d puis votre nom d&#8217;utilisateur tel que vous l&#8217;avez saisi dans le dialogue ci-dessus, par exemple pour moi \u201cmtez_benoit\u201d), et votre mot de passe. Ces trois param\u00e8tres (serveur, login et mot de passe) suffisent pour se connecter en FTP.<\/p>\n<p>Si au contraire vous ne disposez pas d&#8217;une application cliente, vous pouvez la remplacer par la connexion web propos\u00e9e par Infomaniak. Pour cela, allez sur la <a href=\"https:\/\/infomaniak.com\">page d&#8217;accueil d&#8217;Infomaniak<\/a>\u00a0et connectez-vous directement sur l&#8217;acc\u00e8s FTP :<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-1211 aligncenter\" src=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-14.55.36.png\" alt=\"\" width=\"579\" height=\"204\" srcset=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-14.55.36.png 579w, https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-14.55.36-300x106.png 300w\" sizes=\"auto, (max-width: 579px) 85vw, 579px\" \/><\/p>\n<p>Sur la page qui appara\u00eet, saisissez votre nom de domaine (pour moi \u201cwidemann.net\u201d), votre nom de compte (pour moi \u201cmtez_benoit\u201d) et votre mot de passe FTP tel que vous l&#8217;avez d\u00e9fini ci-dessus. <em>(Le caract\u00e8re \u201csoulign\u00e9\u201d s&#8217;obtient sur Mac avec la combinaison [majuscule trait d&#8217;union], sur PC avec la touche \u201c8\u201d du clavier principal.)<\/em><\/p>\n<p>Une fois la connexion FTP \u00e9tablie, vous devriez voir appara\u00eetre les fichiers constituant\u00a0votre site WordPress. <strong><span style=\"color: #ff0000;\">ATTENTION,<\/span><\/strong> \u00e0 partir de l\u00e0, soyez vigilant car <strong>vous avez tous les pouvoirs sur votre h\u00e9bergement<\/strong>. Rien n&#8217;est jamais irr\u00e9m\u00e9diable, (Infomaniak fait des sauvegardes pour vous tous les jours) mais une erreur peut rendre le site non fonctionnel et n\u00e9cessiter ensuite une maintenance que vous ne serez peut-\u00eatre pas capable d&#8217;op\u00e9rer vous-m\u00eame&#8230; autant l&#8217;\u00e9viter et faire attention.<\/p>\n<p>S\u00e9lectionnez le r\u00e9pertoire\u00a0\u201cweb\u201d s&#8217;il n&#8217;est pas d\u00e9j\u00e0 s\u00e9lectionn\u00e9.\u00a0 (Il est possible qu&#8217;il n&#8217;apparaisse pas, si votre point d&#8217;entr\u00e9e sur le serveur est d\u00e9j\u00e0 ce m\u00eame r\u00e9pertoire web, auquel cas vous n&#8217;avez rien \u00e0 faire.)<\/p>\n<p>S\u00e9lectionnez le r\u00e9pertoire \u201cwp-content\u201d, puis \u201cthemes\u201d. La liste des th\u00e8mes install\u00e9s doit appara\u00eetre dans la partie droite de la fen\u00eatre.<\/p>\n<p>Cliquez sur le bouton\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1212\" src=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-15.14.35.png\" alt=\"\" width=\"42\" height=\"31\" \/>\u00a0au-dessus du champ de recherche, pour cr\u00e9er un nouveau r\u00e9pertoire. Le r\u00e9pertoire appara\u00eet dans la sidebar \u00e0 gauche, nommez-le exactement comme le r\u00e9pertoire du th\u00e8me parent en ajoutant \u201c-child\u201d, par exemple \u201ctwentysixteen-child\u201d. Respectez bien la saisie tout en minuscules et sans espaces car toute erreur\u00a0de frappe emp\u00eachera le fonctionnement.<\/p>\n<p>Validez votre saisie avec \u201centr\u00e9e\u201d ou \u201cretour\u201d (la touche de retour \u00e0 la ligne). Le nouveau r\u00e9pertoire doit appara\u00eetre dans la partie droite de la fen\u00eatre.<\/p>\n<p>Cliquez sur son nom pour le s\u00e9lectionner. La liste des fichiers, \u00e0 droite, doit \u00eatre vide puisque le r\u00e9pertoire ne contient encore rien. Il y a juste un pseudo-\u00e9l\u00e9ment repr\u00e9sent\u00e9 par une fl\u00e8che verte, qui sert \u00e0 remonter vers le r\u00e9pertoire parent, vous pouvez l&#8217;ignorer.<\/p>\n<p>Cliquez sur \u201cEnvoyer des fichiers\u201d et envoyez les trois \u00e9l\u00e9ments pr\u00e9par\u00e9s au chapitre pr\u00e9c\u00e9dent : \u201c<strong>functions.php<\/strong>\u201d, \u201c<strong>screenshot.png<\/strong>\u201d et \u201c<strong>style.css<\/strong>\u201d. Vous pouvez alternativement utiliser la zone en bas de la fen\u00eatre qui accepte un glisser-d\u00e9poser des fichiers.<\/p>\n<p>Voil\u00e0, votre th\u00e8me-enfant est install\u00e9, mais il n&#8217;est pas encore actif. Tout le reste se fera dans WordPress, vous pouvez refermer la fen\u00eatre sur Infomaniak et vous connecter sur le back-office de votre site WordPress.<\/p>\n<h2>Mise en service\u00a0du th\u00e8me-enfant<\/h2>\n<p>S\u00e9lectionnez \u201cApparence\u201d puis \u201c<strong>Th\u00e8mes<\/strong>\u201d. Vous devriez voir votre th\u00e8me-enfant dans la liste des th\u00e8mes install\u00e9s.<\/p>\n<p>En survolant son image, vous verrez appara\u00eetre un bouton \u201c<strong>Activer<\/strong>\u201d que vous devez cliquer pour mettre en service votre th\u00e8me-enfant.<\/p>\n<p>Revenez sur le site public : rien n&#8217;a chang\u00e9, ce qui est normal puisque le th\u00e8me-enfant h\u00e9rite de toutes les caract\u00e9ristiques de son parent, et qu&#8217;on n&#8217;y a encore rien fait.<\/p>\n<h2>Acc\u00e8s aux fichiers depuis WordPress<\/h2>\n<p>S\u00e9lectionnez \u201cApparence\u201d puis \u201c<strong>\u00c9diteur<\/strong>\u201d. Vous devriez voir le fichier \u201cstyle.css\u201d dans un \u00e9diteur de texte qui vous permet de le modifier.<\/p>\n<h3>V\u00e9rification des droits d&#8217;acc\u00e8s<\/h3>\n<p>La premi\u00e8re fois, v\u00e9rifiez la pr\u00e9sence du bouton\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1220\" src=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-17.09.40.png\" alt=\"\" width=\"156\" height=\"30\" srcset=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-17.09.40.png 156w, https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-17.09.40-150x30.png 150w\" sizes=\"auto, (max-width: 156px) 85vw, 156px\" \/>\u00a0sous l&#8217;\u00e9diteur de texte. S&#8217;il n&#8217;est pas pr\u00e9sent, cela signifie que les attributs du fichier doivent \u00eatre corrig\u00e9s pour que WordPress puisse y acc\u00e9der en lecture et en \u00e9criture. En l&#8217;\u00e9tat, WordPress peut lire le fichier, mais n&#8217;a pas le droit d&#8217;y \u00e9crire, ce qui vous interdira d&#8217;enregistrer vos modifications.<\/p>\n<p>Si c&#8217;est n\u00e9cessaire, donc, ouvrez une autre fen\u00eatre de navigation et reconnectez-vous en FTP. Allez jusqu&#8217;au th\u00e8me-enfant. Sur la ligne du fichier \u201cstyle.css\u201d, cliquez sur l&#8217;ic\u00f4ne de roue dent\u00e9e\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1222\" src=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-17.17.13.png\" alt=\"\" width=\"109\" height=\"24\" \/>\u00a0pour acc\u00e9der aux <strong>propri\u00e9t\u00e9s\u00a0du fichier<\/strong>.<\/p>\n<p>Dans le dialogue des propri\u00e9t\u00e9s, <strong>cochez toutes les cases \u201c\u00e9crire\u201d<\/strong>, puis cliquez sur \u201cValider\u201d.\u00a0Revenez ensuite sur l&#8217;\u00e9diteur dans WordPress et rechargez la page : le bouton\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1220\" src=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-17.09.40.png\" alt=\"\" width=\"156\" height=\"30\" srcset=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-17.09.40.png 156w, https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-17.09.40-150x30.png 150w\" sizes=\"auto, (max-width: 156px) 85vw, 156px\" \/>\u00a0doit appara\u00eetre.<\/p>\n<p>Notez que, selon la configuration, il est possible que le bouton apparaisse alors que\u00a0seul le \u201cpropri\u00e9taire\u201d du fichier dispose du droit d&#8217;\u00e9crire. C&#8217;est le cas si WordPress est param\u00e9tr\u00e9 pour utiliser le m\u00eame nom d&#8217;utilisateur que vous sur le serveur. Dans ce cas, aucune correction n&#8217;est n\u00e9cessaire.<\/p>\n<h3>Mais qu&#8217;est-ce qu&#8217;on peut y \u00e9crire ?<\/h3>\n<p>Le th\u00e8me enfant fonctionne sur le principe de la <strong>surcharge<\/strong>. C&#8217;est un terme de programmation qui signifie que l&#8217;on injecte un \u00e9l\u00e9ment qui vient remplacer, ou compl\u00e9ter, ou s&#8217;ajouter aux \u00e9l\u00e9ments existants.<\/p>\n<p>Par exemple, imaginons que le texte d&#8217;un article est en Helvetica 12 points, avec une couleur gris fonc\u00e9. Le th\u00e8me parent contient un style qui ressemble \u00e0 ceci :<\/p>\n<pre>p {\r\n    font-family: Helvetica, sans-serif;\r\n    font-size: 12px;\r\n    color: darkgray;\r\n}<\/pre>\n<p>\u201cp\u201d est un raccourci pour \u201cparagraphe\u201d et d\u00e9signe le contexte s\u00e9mantique o\u00f9 cette feuille de style doit s&#8217;appliquer. Les accolades marquent le d\u00e9but et la fin de la feuille de style, et sont souvent plac\u00e9es de cette fa\u00e7on pour bien faire ressortir leur contenu, o\u00f9 l&#8217;on trouve une propri\u00e9t\u00e9 par ligne.<\/p>\n<p>La propri\u00e9t\u00e9 \u201cfont-family\u201d contient presque toujours une liste de polices par ordre de pr\u00e9f\u00e9rence d\u00e9croissante et se terminant par une indication g\u00e9n\u00e9rique \u201cserif\u201d ou \u201csans-serif\u201d, autrement dit \u201cpolice avec s\u00e9rifs\u201d (par exemple Times) ou \u201cpolice b\u00e2ton\u201d (par exemple Helvetica), sur laquelle le navigateur se rabattra si aucune des polices demand\u00e9es n&#8217;est pr\u00e9sente.<\/p>\n<p>Dans le th\u00e8me enfant, vous pouvez changer la couleur du texte sans alt\u00e9rer le reste en ins\u00e9rant cette feuille de style :<\/p>\n<pre>p {\r\n    color: violet;\r\n}<\/pre>\n<p>La propri\u00e9t\u00e9 \u201ccolor\u201d ainsi ajout\u00e9e viendra \u201csurcharger\u201d celle du th\u00e8me parent et la remplacer. Mais les autres propri\u00e9t\u00e9s d\u00e9finies dans le parent restent actives.<\/p>\n<h3>Comment trouver la feuille de style \u00e0 modifier<\/h3>\n<p>Les CSS s&#8217;appliquent \u00e9galement en fonction de leur <strong>contexte d&#8217;utilisation<\/strong>. Dans une page d&#8217;article, par exemple, on trouve une zone (appel\u00e9e \u201cdivision\u201d et abr\u00e9g\u00e9e en \u201cdiv\u201d) qui contient l&#8217;int\u00e9gralit\u00e9 de l&#8217;article, et une autre zone qui contient l&#8217;int\u00e9gralit\u00e9 de la sidebar. Or, un paragraphe dans l&#8217;article n&#8217;est pas la m\u00eame chose qu&#8217;un paragraphe dans un widget de la sidebar\u2026 m\u00eame si les deux sont simplement identifi\u00e9s par un \u201cp\u201d s\u00e9mantique.<\/p>\n<p>La cascade des styles permet de distinguer ais\u00e9ment les deux en d\u00e9finissant un contexte. La division \u201cmain\u201d (anglais pour \u201cprincipale\u201d) contient l&#8217;article, et l&#8217;\u00e9l\u00e9ment \u201caside\u201d englobe la totalit\u00e9 de la sidebar.<\/p>\n<pre>div#main p {\r\n    color: darkgray;\r\n}\r\n\r\naside p {\r\n    color: blue;\r\n}<\/pre>\n<p>Le paragraphe dans le contexte de la division \u201cmain\u201d aura son texte en gris fonc\u00e9, alors que le m\u00eame paragraphe plac\u00e9 dans la sidebar appara\u00eetra en bleu.<\/p>\n<p>Ce m\u00e9canisme de \u201ccascade\u201d des styles\u00a0s&#8217;appelle en anglais \u201cCascading Style Sheet\u201d, ou CSS.<\/p>\n<p>La vraie difficult\u00e9, lorsqu&#8217;on commence \u00e0 bricoler dans les styles, est de trouver comment intituler la feuille de style pour qu&#8217;elle d\u00e9signe le bon contexte, qu&#8217;elle devienne capable de surcharger la cascade d\u00e9j\u00e0 en service \u00e0 cet endroit de la page. Heureusement, les navigateurs disposent de puissants outils destin\u00e9s aux d\u00e9veloppeurs web.<\/p>\n<p>Dans Safari sur Mac, allez dans les pr\u00e9f\u00e9rences, s\u00e9lectionnez l&#8217;onglet des pr\u00e9f\u00e9rences \u201cAvanc\u00e9es\u201d et cochez l&#8217;option \u201cAfficher le menu D\u00e9veloppement dans la barre des menus\u201d. Ceci fera appara\u00eetre un menu suppl\u00e9mentaire avec des outils divers, donc un qui vous int\u00e9resse en particulier. S\u00e9lectionnez dans ce menu \u201c<strong>Afficher l&#8217;inspecteur web<\/strong>\u201d pour faire appara\u00eetre cet inspecteur.<\/p>\n<p>Il existe des outils \u00e9quivalents, en standard ou sous forme d&#8217;extension, pour tous les navigateurs. Firefox comporte une extension \u201cWeb Developer\u201d \u00e9galement tr\u00e8s compl\u00e8te. Chrome comporte aussi des outils de d\u00e9veloppement. Je suis un peu d\u00e9muni pour vous guider c\u00f4t\u00e9 PC, n&#8217;en ayant pas sous la main, mais ici encore, Google (ou DuckDuckGo) est votre ami.<\/p>\n<p>Avec Safari, trouver le style attach\u00e9 \u00e0 un \u00e9l\u00e9ment sur\u00a0la page est un jeu d&#8217;enfant. Affichez l&#8217;inspecteur web, puis cliquez sur le bouton\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1228\" src=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-18.20.25.png\" alt=\"\" width=\"40\" height=\"22\" \/>\u00a0pour passer en mode \u201ccible\u201d. Survolez ensuite la page pour afficher les informations sur l&#8217;\u00e9l\u00e9ment, par exemple :<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-1230 aligncenter\" src=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-18.23.31.png\" alt=\"\" width=\"222\" height=\"82\" \/><\/p>\n<p>La bulle indique directement le style, ici \u201ch2.widget-title\u201d, autrement dit \u201ctitre de niveau 2 (h2 = <em>heading 2<\/em>) appartenant \u00e0 la classe <em>widget-title<\/em>\u201d. Si l&#8217;on cr\u00e9e un style intitul\u00e9 ainsi, tous les titres de widgets (qui partagent cette feuille de style) utiliseront les propri\u00e9t\u00e9s de ce style, en cascade avec celles d\u00e9j\u00e0 d\u00e9finies par le parent.<\/p>\n<p>Safari affiche aussi, en orange, les marges de l&#8217;\u00e9l\u00e9ment survol\u00e9, qui sont \u00e9galement d\u00e9finies par les CSS et donc faciles \u00e0 modifier (margin-top, margin-left, etc.).<\/p>\n<p>Si l&#8217;on veut \u201ccontextualiser\u201d plus pr\u00e9cis\u00e9ment, il suffit de revenir en mode \u201ccible\u201d et de d\u00e9signer l&#8217;\u00e9l\u00e9ment \u201cconteneur\u201d du pr\u00e9c\u00e9dent, en d&#8217;autres termes remonter d&#8217;un cran dans la cascade :<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-1231 aligncenter\" src=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-18.29.10.png\" alt=\"\" width=\"400\" height=\"233\" srcset=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-18.29.10.png 400w, https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-18.29.10-300x175.png 300w\" sizes=\"auto, (max-width: 400px) 85vw, 400px\" \/><\/p>\n<p>On voit ici appara\u00eetre un style \u201csection#categories-3.widget.widget_categories\u201d, qui manifestement identifie de fa\u00e7on explicite le widget des cat\u00e9gories. Du coup, si l&#8217;on veut cibler le titre de ce widget en particulier, le style \u00e0 cr\u00e9er devra indiquer toute la cascade pour atteindre pr\u00e9cis\u00e9ment son but :<\/p>\n<pre>section#categories-3.widget.widget_categories h2.widget-title {\r\n    color: green;\r\n}<\/pre>\n<p>Remarquez que les noms des styles ne comportent jamais d&#8217;espaces, ceux-ci permettent de s\u00e9parer les diff\u00e9rents \u201c\u00e9tages\u201d de la cascade (ici juste avant \u201ch2\u201d). Cette longue incantation se lit donc ainsi :\u00a0<em>colorie en vert le texte des titres de niveau 2 de widgets, mais uniquement dans le widget dont la classe est \u201cwidget_categories\u201d<\/em>. On y trouve aussi des r\u00e9f\u00e9rences \u00e0 la section de sidebar d\u00e9di\u00e9e aux cat\u00e9gories et situ\u00e9e en 3e position parmi les sections.<\/p>\n<p>Cet article ne vise pas \u00e0 \u00eatre un tutoriel sur les CSS, au-del\u00e0 de ce rapide survol des concepts de base. Vous en trouverez facilement sur internet. <a href=\"https:\/\/codex.wordpress.org\/fr:Trouver_votre_style_de_CSS\" target=\"_blank\" rel=\"noopener noreferrer\">Ici\u00a0un article du codex<\/a> en fran\u00e7ais qui r\u00e9sume un peu ce qui pr\u00e9c\u00e8de avec plus de d\u00e9tails. Et voil\u00e0 une liste de quelques pages trouv\u00e9e en cinq secondes :<\/p>\n<ul>\n<li><a href=\"http:\/\/goulvench.free.fr\/vrac\/CSS.html\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/goulvench.free.fr\/vrac\/CSS.html<\/a> : une liste des propri\u00e9t\u00e9s CSS avec leurs valeurs possibles,<\/li>\n<li><a href=\"http:\/\/www.code-couleur.com\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.code-couleur.com<\/a> : une page pour convertir facilement une couleur en code CSS,<\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/fr\/docs\/Web\/CSS\/Reference\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/developer.mozilla.org\/fr\/docs\/Web\/CSS\/Reference<\/a> : la bible en fran\u00e7ais,<\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/fr\/Apprendre\/CSS\/Les_bases\/Le_fonctionnement_de_CSS\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/developer.mozilla.org\/fr\/Apprendre\/CSS\/Les_bases\/Le_fonctionnement_de_CSS<\/a> : un tuto pour les courageux,<\/li>\n<li><a href=\"http:\/\/www.css-faciles.com\/premiers-pas-css.php\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.css-faciles.com\/premiers-pas-css.php<\/a> : une page un peu ancienne mais qui explique tout \u00e7a assez bien.<\/li>\n<\/ul>\n<h2>Modifier la police du th\u00e8me<\/h2>\n<p>Un usage courant du th\u00e8me-enfant est de modifier la police du th\u00e8me, ce qui permet de le personnaliser facilement. Mais il est important de bien comprendre comment \u00e7a marche.<\/p>\n<p>Admettons que vous vouliez utiliser une police \u201cb\u00e2ton\u201d (sans s\u00e9rifs) nomm\u00e9e \u201cMaPolice\u201d. Si vous indiquez dans un style un attribut \u201cfont-family: MaPolice, sans-serif;\u201d, il est probable que <strong>votre visiteur ne dispose pas de la police<\/strong> MaPolice sur son ordinateur (ou son t\u00e9l\u00e9phone ou sa tablette), du coup il verra votre page en Helvetica ou en Arial, qui sont les polices b\u00e2tons par d\u00e9faut respectivement sur Mac\/iOS et sur Windows. Ce n&#8217;est pas ce que vous voulez, donc il faut faire autrement.<\/p>\n<p>Il serait possible d&#8217;installer votre\u00a0police sur le serveur et de l&#8217;int\u00e9grer aux \u00e9l\u00e9ments envoy\u00e9s vers le visiteur. Mais c&#8217;est un peu technique, et rapidement lourd si le site est tr\u00e8s actif. Heureusement, Google met \u00e0 la disposition des webmasters (c&#8217;est vous) une large biblioth\u00e8que de polices pr\u00eates \u00e0 l&#8217;emploi. Il n&#8217;y a pas besoin de les installer, il suffit de les <strong>r\u00e9f\u00e9rencer dans les styles<\/strong>, et c&#8217;est le navigateur du visiteur qui ira chercher la police manquante si besoin directement chez Google.<\/p>\n<p>L&#8217;op\u00e9ration se fait en trois temps :<\/p>\n<ol>\n<li>Chercher\u00a0dans la biblioth\u00e8que la police \u00e0 utiliser (ou les polices, il est fr\u00e9quent d&#8217;en utiliser deux, l&#8217;une pour le texte et l&#8217;autre pour les titres).<\/li>\n<li>Coller dans le fichier \u201cstyle.css\u201d un en-t\u00eate fourni par Google pour importer les r\u00e9f\u00e9rences des polices.<\/li>\n<li>Utiliser les polices dans les feuilles de style d\u00e9sir\u00e9es.<\/li>\n<\/ol>\n<h3>Chercher dans la biblioth\u00e8que<\/h3>\n<p>Allez visiter la biblioth\u00e8que sur <a href=\"https:\/\/fonts.google.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/fonts.google.com\/<\/a> et cherchez une ou plusieurs polices qui vous plaisent, vous semblent coller avec le th\u00e8me et marchent bien ensemble. Vous verrez que le site propose une sorte de panier qui permet de collecter les polices.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-1234 aligncenter\" src=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-23.05.04.png\" alt=\"\" width=\"354\" height=\"274\" srcset=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-23.05.04.png 354w, https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-23.05.04-300x232.png 300w\" sizes=\"auto, (max-width: 354px) 85vw, 354px\" \/><\/p>\n<p>En bas de la fen\u00eatre, le panier appara\u00eet bri\u00e8vement chaque fois qu&#8217;on y ajoute quelque chose. On peut le d\u00e9ployer en cliquant dessus, supprimer une police du panier ou le vider compl\u00e8tement. L&#8217;indicateur \u201cLoad Time\u201d doit \u00eatre surveill\u00e9, s&#8217;il n&#8217;est pas vert, c&#8217;est que le panier contient trop de polices et que cela risque de ralentir le chargement des pages.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-1235 aligncenter\" src=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-23.07.08.png\" alt=\"\" width=\"597\" height=\"196\" srcset=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-23.07.08.png 597w, https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-23.07.08-300x98.png 300w\" sizes=\"auto, (max-width: 597px) 85vw, 597px\" \/><\/p>\n<h3>Import de la r\u00e9f\u00e9rence des polices<\/h3>\n<p>Lorsque le panier vous convient, ouvrez-le compl\u00e8tement et cliquez sur\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1236\" src=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-23.15.18.png\" alt=\"\" width=\"80\" height=\"27\" \/>\u00a0pour basculer dans ce mode. Copiez la ligne qui commence par \u201c@import\u201d, ne prenez pas les balises &lt;style&gt; :<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1237\" src=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-23.16.58.png\" alt=\"\" width=\"566\" height=\"141\" srcset=\"https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-23.16.58.png 566w, https:\/\/widemann.net\/wp-fr\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-15-at-23.16.58-300x75.png 300w\" sizes=\"auto, (max-width: 566px) 85vw, 566px\" \/><\/p>\n<p>Gardez la page Google ouverte pour la suite. Dans une autre fen\u00eatre de votre navigateur, revenez sur votre site et allez sur \u201cApparence\u201d puis \u201c\u00c9diteur\u201d. Collez la ligne ci-dessus au d\u00e9but du fichier \u201cstyle.css\u201d, mais apr\u00e8s l&#8217;en-t\u00eate, par exemple comme ceci :<\/p>\n<pre>\/*\r\n Theme Name: Twenty Sixteen Child\r\n Theme URI: http:\/\/domaine.fr\/wp-content\/themes\/twentysixteen-child\/\r\n Description: Twenty Sixteen Child Theme\r\n Author: Simone Envoiture\r\n Author URI: http:\/\/domaine.fr\/\r\n Template: twentysixteen\r\n Version: 1.3\r\n License: GNU General Public License v2 or later\r\n License URI: http:\/\/www.gnu.org\/licenses\/gpl-2.0.html\r\n Tags: light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready\r\n Text Domain: twentysixteen-child\r\n*\/\r\n\r\n@import url('https:\/\/fonts.googleapis.com\/css?family=<span class=\"collection-drawer-emphasized-code\">Anton|Yanone+Kaffeesatz<\/span>');<\/pre>\n<p>Cette indication \u201c@import\u201d suffit pour\u00a0cr\u00e9er la r\u00e9f\u00e9rence vers les Google fonts.<\/p>\n<h3>Utilisation des polices dans les styles<\/h3>\n<p>Si vous n&#8217;avez install\u00e9 qu&#8217;une unique police et que vous voulez l&#8217;utiliser partout, vous pouvez passer par un style \u201cjoker\u201d qui repr\u00e9sentera tout \u00e0 la fois. Autrement dit, le joker forcera l&#8217;utilisation de votre police dans toutes les feuilles de style, \u00e0 l&#8217;exception d&#8217;un petit nombre o\u00f9 la police est indiqu\u00e9e par le parent avec un plus haut niveau de priorit\u00e9 (c&#8217;est le cas, par exemple, pour les titres des widgets dans certains th\u00e8mes).<\/p>\n<p>Ajoutez simplement ceci au fichier de style :<\/p>\n<pre>* {\r\n    font-family: 'Anton', sans-serif;\r\n}<\/pre>\n<p>Si un \u00e9l\u00e9ment de la page refuse obstin\u00e9ment de changer de police, identifiez le style concern\u00e9 comme expliqu\u00e9 plus haut. Vous pouvez l&#8217;ajouter explicitement en s\u00e9parant les styles par une virgule, comme ci-dessous o\u00f9 l&#8217;on ajoute le style \u201c.entry-title\u201d pour forcer la police \u00e0 changer aussi sur le titre de l&#8217;article.<\/p>\n<pre>*, .entry-title {\r\n    font-family: 'Anton', sans-serif;\r\n}<\/pre>\n<p>Bien s\u00fbr, si vous avez install\u00e9 plusieurs polices, c&#8217;est \u00e0 vous d&#8217;ajouter d&#8217;autres styles pour indiquer \u00e0 WordPress dans quels contextes utiliser chaque police. C&#8217;est un peu plus difficile mais ce n&#8217;est pas inabordable, et si besoin, cela peut se faire par \u00e9tapes progressives.<\/p>\n<h2>Et voil\u00e0 !<\/h2>\n<p>Exp\u00e9rimentez avec les styles, c&#8217;est tout l&#8217;int\u00e9r\u00eat du web s\u00e9mantique ! Amusez-vous bien. \ud83d\ude42<\/p>\n<hr \/>\n<p><strong>Mise \u00e0 jour :<\/strong> le site <a href=\"https:\/\/wpmarmite.com\/creer-theme-enfant\">WP Marmite<\/a> propose maintenant un outil simplifiant la cr\u00e9ation d&#8217;un th\u00e8me-enfant, ainsi d&#8217;ailleurs que plein d&#8217;autres choses int\u00e9ressantes. N&#8217;h\u00e9sitez pas \u00e0 aller le visiter.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Il est\u00a0tentant de modifier un th\u00e8me \u201cpresque parfait\u201d pour le forcer exactement \u00e0 sa main, lui donner un caract\u00e8re plus personnel tout en conservant les atouts du th\u00e8me. Mais cette modification rend ensuite le th\u00e8me impropre \u00e0 la mise \u00e0 jour, puisque WordPress ne reconna\u00eetra plus les fichiers modifi\u00e9s et ne pourra plus appliquer automatiquement &hellip; <a href=\"https:\/\/widemann.net\/wp-fr\/wordpress-theme-enfant\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;WordPress : cr\u00e9ation d&#8217;un th\u00e8me-enfant&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[29,33],"tags":[56],"class_list":["post-1241","post","type-post","status-publish","format-standard","hentry","category-logiciels","category-site","tag-wordpress"],"_links":{"self":[{"href":"https:\/\/widemann.net\/wp-fr\/wp-json\/wp\/v2\/posts\/1241","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/widemann.net\/wp-fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/widemann.net\/wp-fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/widemann.net\/wp-fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/widemann.net\/wp-fr\/wp-json\/wp\/v2\/comments?post=1241"}],"version-history":[{"count":4,"href":"https:\/\/widemann.net\/wp-fr\/wp-json\/wp\/v2\/posts\/1241\/revisions"}],"predecessor-version":[{"id":1486,"href":"https:\/\/widemann.net\/wp-fr\/wp-json\/wp\/v2\/posts\/1241\/revisions\/1486"}],"wp:attachment":[{"href":"https:\/\/widemann.net\/wp-fr\/wp-json\/wp\/v2\/media?parent=1241"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/widemann.net\/wp-fr\/wp-json\/wp\/v2\/categories?post=1241"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/widemann.net\/wp-fr\/wp-json\/wp\/v2\/tags?post=1241"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}