Utilisateur:Titruffe/A propos des modèles

Comment éditer un modèle ? modifier

Un modèle s'édite comme n'importe quelle page. Une question qui permettrait une réponse plus poussée quant à l'édition des modèles serait : "Comment fonctionnent les modèles, quelle syntaxe leur est propre ?"

Principe des modèles modifier

Un bon point de départ pour répondre à cette question me semble être de définir le but premier des modèles : les modèles servent à répéter du contenu dans de nombreuses pages, et en même temps à pouvoir changer tout ce contenu d'un coup en ne modifiant que le modèle lui-même. Cela implique que les modèles soient transclus dans les pages.

Syntaxe des modèles modifier

Une bonne chose à savoir aussi pour mieux comprendre le fonctionnement et le but des modèles est qu'un modèle peut ne contenir aucune syntaxe particulière ou bizarre (type <noinclude>, {{#if:, {{{1|}}}, etc.) : un modèle nommé "Modèle:gentilé" contenant "Ce mot est un gentilé." qu'on inclurait dans toutes les pages de gentilés ferait afficher exactement le même texte sans rien d'autre : la syntaxe {{gentilé}} présente dans le code source de la page Français afficherait "Ce mot est un gentilé." dans la page, au même endroit où est placé le modèle dans son code source. Cela veut dire notamment que quand on inclut un modèle dans une page, on ne fait rien d'autre que réutiliser le contenu du modèle : une sorte de copier-coller. Voir modèle:note-gentilé pour un modèle de ce type. (La boîte à outils à gauche permet de voir ses pages liées, et donc de faire le lien entre le code du modèle, celui d’une de ses pages liées, et le rendu de la page liée.)

Paramètres modifier

Parce qu'il est rare cependant qu'on veuille répéter du contenu dans de nombreuses pages sans n'avoir rien à changer selon les pages, c'est avoir un contenu adaptable à chaque page qui nous intéresse le plus souvent. Vient alors l'idée de paramétrer le texte affiché par le modèle selon les besoins. Sachant cela, une nouvelle fonctionnalité essentielle va alors nous être utile : l'utilisation de paramètres.

Paramètres non nommés modifier

Dans le code même du modèle, le premier paramètre est désigné par {{{1}}}. Si j'écris dans mon modèle:exemple le texte "a{{{1}}}", et que j'inclue mon modèle dans une page avec la syntaxe {{exemple|bcdef}}, alors le rendu dans cette page sera : "abcdef", car le logiciel MediaWiki qui traite la syntaxe wiki va remplacer l'appel au modèle:exemple (donc la synatxe {{exemple|bcdef}}) par sa valeur : "a" suivie de la valeur du premier paramètre passé au modèle (ici, bcdef), donc abcdef. Par contre, si j'écris simplement {{exemple}} dans la page, alors le résultat sera "a{{{1}}}", car la syntaxe {{{1}}} n'a plus aucune valeur en l'absence de premier paramètre. De même, il serait possible d'ajouter d'autres paramètres : {{{2}}}, {{{3}}}, {{{17}}}, etc. Chaque valeur entre triple accolades est un paramètre : la paramètre 1 est la valeur qui est située juste après la première barre verticale dans l'appel au modèle (dans notre exemple "bcdef"), le paramètre 2 la valeur après la seconde barre verticale, etc. Donc si le code du modèle:exemple est a{{{1}}}{{{2}}}, et que j'écris {{exemple|bcdef|ghijkl}} dans la page oiseau, le rendu serait : abcdefghijkl.

Paramètres nommés modifier

De même, il est possible d'utiliser des paramètres nommés. On écrira alors par exemple {{{nom}}} dans le code du modèle pour récupérer la valeur donné au paramètre nom dans l'appel au modèle. Exemple : si le code du modèle:exemple est : a{{{nom}}}, et que j'écris sur oiseau le code {{exemple|nom=bcdef}}, le rendu dans oiseau serait "abcdef".

Remarque : il est strictement identique d'écrire {{exemple|bcdef}} ou {{exemple|1=bcdef}} : la numérotation est implicite quand aucun nom n'est donné. Remarque2 : Les paramètres nommés n'entrent pas en conflit à ce niveau-là avec les paramètres numérotés (dits aussi "anonymes") : si on écrit dans le modèle:exemple a{{{1}}}{{{2}}}{{{nom}}}, et qu'on met dans la page oiseau la syntaxe {{exemple|nom=mnop|bcdef|ghijkl}}, le résultat sera : abcdefghijklmnop. Le paramètre nommé n'intervient pas dans le compte pour déterminer qui est le paramètre 1 ou le paramètre 2 : le 1 est le premier paramètre sans nom, le 2, le second paramètre sans nom, etc.

En guise de conclusion sur cette introduction modifier

À priori tout cela devrait être d'une façon ou d'une autre dans Aide:Modèle, en guise d'introduction, mais je ne vais pas te cacher que cette aide mérite à la fois révision et approfondissement.

Tu peux tester le principe que j'ai décrit si tu as compris en utilisant n'importe quel page : n'importe quel page peut être transcluse, et puisque les modèles s'éditent comme toutes les pages et peuvent contenir la même syntaxe, les tests marcheront aussi sur des sous-pages personnelles. Par exemple, essaie de transclure cette page dans Wiktionnaire:Bac à sable, en écrivant {{Utilisateur:Titruffe/A propos des modèles}}, puis en prévisualisant. Réessaie, en écrivant cette fois {{Utilisateur:Titruffe/A propos des modèles|TestParamètre1|TestParamètre2|nom=Paramètre"nom"}}, puis en prévisualisant. Tu devrais y voir les valeur entrées en paramètres à la place de tous les {{{1}}}, {{{2}}} et {{{nom}}} que j'ai écris dans cette page, quand j’ai pris la liberté de les écrire sans balises 'nowiki'. Ça devrait t'aider à mieux comprendre comment sont exploités les paramètres des modèles. Note que quand on transclut une page qui n'est pas un modèle, on précise l'espace de noms (ici, Utilisateur:). Comme les modèles ont été fait exclusivement pour être transclus, il est possible de ne pas noter l'espace de noms pour eux, et tout le monde comprend que c'est un modèle (puisqu'il n'y a pas d'ambigüité).


Je ne suis pas sûr d’avoir été clair (je pense être rentré peut-être trop vite dans le sujet). Si tel n’était pas le cas, des questions plus précises pourraient peut-être permettre d’aiguiller la réponse. Automatik (discussion) 29 juillet 2013 à 04:02 (UTC)

Comment créer un modèle ? modifier

  • Comme toute page, en lui donnant un contenu (par exemple en cliquant sur modèle:xxxx, on peut le créer). Les explications ci-dessus sont les plus utiles pour savoir quoi mettre dans un modèle, en fonction des besoins. Il faut apprendre un petit peu à coder en wikicode, mais ça vient avec le temps ; c'est un langage très simple, de difficulté similaire au HTML ou au CSS.

Où trouver de l’aide sur la syntaxe des modèles ? modifier

Ai-je le droit de créer un modèle pour mon espace utilisateur ? modifier

Tout est dans le titre. Si oui, doit-il être créé différemment d’un modèle concernant l’ensemble du WT ? Mon idée est de mettre un texte commun sur certaines de mes sous-pages en ne créant le texte qu’une fois, de façon à ne pas avoir à modifier chaque sous-page dès que je veux modifier ce texte.--Titruffe (Apprends-moi) 30 juillet 2013 à 02:42 (UTC)

À priori, mieux vaut mettre ton texte commun dans une page de l’espace Utilisateur plutôt qu’une page de l’espace Modèle:. Par exemple, utilisateur:Titruffe/Modèle de navigation. Ensuite, dans toutes les pages où tu veux mettre ton bandeau de navigation, tu écris {{utilisateur:Titruffe/Modèle de navigation}}. Automatik (discussion) 30 juillet 2013 à 03:06 (UTC)
Génial, ça répond parfaitement à mes attentes !   --Titruffe (Apprends-moi) 30 juillet 2013 à 03:12 (UTC)