Aide:Modèle
Pour commencer |
Manuel du parfait petit Scoutopedien |
Aide technique |
Règles générales |
Règles techniques |
Définition[modifier le wikicode]
Pour Scoutopedia, un modèle est un bloc d'information qui peut être inclus dans les autres pages. Il peut servir à :
- insérer un message standard, exemple : le message indiquant qu'un article est proposé à la suppression Modèle:Suppression
- insérer un tableau commun à plusieurs pages d'un même domaine. Ce modèle est paramétrable, c'est-à-dire qu'il y a un fond de tableau commun et des variables dont le contenu change dans chaque article.
- insérer une palette de navigation dans toutes les pages d'un même domaine. *etc.
Dans tous les cas le modèle est inséré dans un article en y ajoutant, à l'emplacement adéquat, le libellé {{Nom du modèle}}
Note : la notion de modèle de Scoutopedia est différente de celle utilisée dans les logiciels de traitement de texte.
Les modèles sont gérés dans un espace de noms propre : l'espace de nom "Modèle".
Les modèles sont des pages comme les autres et donc accessibles à l'édition par tous les contributeurs. Il faut toutefois les modifier avec prudence car le résultat apparaît sur de nombreuses pages. Lorsque la page correspondant au modèle est affichée, on peut cliquer sur l'hyperlien Pages liées du menu de gauche pour consulter les pages utilisant le modèle et vérifier, avant modification, que ces pages ne seront pas perturbées.
Création d'un modèle[modifier le wikicode]
La méthode est identique à celle de la création d'une page quelconque. Le plus simple est d'insérer un appel au modèle dans un article, puis de cliquer sur le lien (qui apparaîtra en rouge).
Trucs et astuces[modifier le wikicode]
Les noms de modèles utilisant des mots abrégés ou collés sont difficiles à retenir car aucune convention ne s'est imposée. Il n'y a pas de raison technique pour ne pas s'inspirer des conventions sur les titres aussi pour les noms de modèle.
Si le modèle appartient à une catégorie, c'est à dire que la page du modèle contient un libellé de la forme [[Catégorie:Nom d'une catégorie]], et si l'on ne fait pas simultanément usage de la balise d'inclusion sélective "noinclude", tous les articles contenant le modèle appartiendront à cette catégorie. On peut utiliser cette astuce, par exemple, pour obtenir la liste de tous les articles ébauche d'un domaine donné.
Documentation du modèle[modifier le wikicode]
À la suite du modèle, à même la page, il est recommandé de fournir toutes les explications nécessaires à son utilisation dans une zone de documentation qui ne sera pas visible de la page où il est inclus.
Utilisation[modifier le wikicode]
Pour inclure un modèle il faut utiliser la syntaxe wiki suivante (la première lettre du nom du modèle n'est pas sensible à la casse) :
- {{Nom du modèle}} pour que le modèle soit inclus à chaque chargement d'une page l'utilisant. Ainsi, dès que le modèle est modifié, la modification devient visible dans toutes les pages utilisant le modèle.
- {{subst:Nom du modèle}} pour que le modèle soit copié une fois pour toute dans la page l'utilisant. Dans ce cas-ci, une modification du modèle n'a aucune incidence sur la page.
Ainsi, un modèle bref et temporaire destiné à être rapidement supprimé devrait être copié avec subst:, dont l'avantage est qu'il apparaît directement dans la source de l'article. Une notice normale destinée à rester sur une page pour une longue durée ou bien à jamais devrait être incluse au moyen de {{Nom du modèle}}, de manière à ce que les mises à jour éventuelles soient plus aisées. Un modèle contenant un lien temporaire ou susceptible de changer ne devrait cependant pas être ajouté par {{Nom du modèle}}. Cette méthode, en effet, ne met pas à jour le lien Pages liées à moins que chaque article contenant le {{Nom du modèle}} soit effectivement modifié après la modification du lien dans le modèle en question.
- Il est possible d'inclure du texte provenant d'autres espaces de nom.
- Tous les caractères sont acceptés, y compris les espaces.
- Tout changement d'un modèle efface automatiquement le cache de toutes les pages utilisant ce modèle.
- Les modèles peuvent prendre des arguments, référencés par position ou par nom (voir l'exemple plus élaboré ci-dessous). La syntaxe est la suivante: {{chose|paramètre=valeur}} avec des balises {{{paramètre}}} dans le modèle, ou bien {{brol|valeur1|valeur2}} avec {{{1}}}, {{{2}}}, etc. Notez que les balises de paramètres dans le modèle demandent trois accolades et non deux.
- Un modèle peut inclure un ou plusieurs autres modèles,
- Un modèle ne peut pas être lui-même paramètre d'un autre modèle.
- Les redirections entre modèles fonctionnent.
Dans un modèle, pour faire un lien vers une page qui dépend d'un paramètre d'un modèle, les liens de type externe sont souvent utilisés même pour des liens internes afin d'éviter qu'on aboutisse sur la page en mode d'édition même si cette page existe.
Modèles à paramètres[modifier le wikicode]
Un modèle peut être écrit afin d'accepter des paramètres. Cela permet de créer, par exemple, des tableaux pré-formatés dont seules certaines valeurs changent selon la page invoquant le modèle.
Par exemple, si je créé le modèle suivant sous le titre Modèle:Jamboree :
Cette page concerne le jamboree mondial de {{{année}}}
et que je créée la page Jamboree de 1947 avec comme contenu :
{{Jamboree|année=1947}}
le résultat sera :
Cette page concerne le jamboree mondial de 1947
Valeur par défaut d'un paramètre[modifier le wikicode]
Lors de l'appel du modèle, les paramètres qui ne sont pas définis sont remplacés par leur nom "tel quel". Exemple: {{{3}}}.
Chaque remplacement peut aussi prendre une valeur prédéfinie par l'utilisateur, comme ceci: {{{3|123}}}
(s'il n'y a pas de 3e paramètre, on utilise 123 à la place). Ou comme cela: {{{paramètre|123}}}
(la même chose avec un paramètre nommé).
Il est possible de ne rien écrire par défaut: {{{3|}}}
(en n'écrivant rien après la barre verticale, pas même un espace).
Modèles spéciaux[modifier le wikicode]
Ces modèles, appelés variables, sont prédéfinis et ne doivent pas être utilisés comme nom de modèles. Les variables concernant les noms de pages comprennent généralement une variable duale qui comprend un 'E' en plus à la fin ({{PAGENAME}} (ici "Modèle") et {{PAGENAMEE}} (ici "Mod%C3%A8le").
Noms de page | ||
{{NAMESPACE}} | le nom de l'espace de noms dans lequel se trouve la page | "Aide" |
{{PAGENAME}} | le nom de la page sans le préfixe de l'espace de noms | "Modèle" |
{{PAGENAMEE}} | le nom de la page sans le préfixe de l'espace de noms dans le format utilisé dans les URL | "Mod%C3%A8le" |
{{FULLPAGENAME}} | le nom de la page avec le préfixe de l'espace de noms | "Aide:Modèle" |
{{FULLPAGENAMEE}} | le nom de la page avec le préfixe de l'espace de noms dans le format utilisé dans les URL | "Aide:Mod%C3%A8le" |
{{SUBPAGENAME}} | le nom de la dernière sous-page la plus imbriquée | "Modèle" |
{{BASEPAGENAME}} | le nom de base de la page, utile dans les sous-pages | "Modèle" |
{{TALKPAGENAME}} | la page de discussion associée (elle-même si déjà en page de discussion) | "Discussion aide:Modèle" |
Fabrication d'URL | ||
{{SERVER}} | l'URL du site | "//fr.scoutwiki.org" |
{{localurl:nom d'une page}} | l'URL correspondant à une page | "/Nom_d%27une_page" |
{{localurl:nom d'une page|paramètres}} | idem mais avec des paramètres | "/index.php?title=Nom_d%27une_page¶mètres" |
{{fullurl:nom d'une page}} | l'URL complet de la page, correspond à {{SERVER}}{{localurl:nom d'une page}} | "//fr.scoutwiki.org/Nom_d%27une_page" |
{{fullurl:nom d'une page|paramètres}} | idem mais avec des paramètres | "//fr.scoutwiki.org/index.php?title=Nom_d%27une_page¶mètres" |
{{urlencode:modèle d'une page}} | permet d'encoder une chaîne de caractères sous forme d'URL | "mod%C3%A8le+d%27une+page" |
Date et heure | ||
{{CURRENTMONTH}} | le mois | "05" |
{{CURRENTMONTHNAME}} | le nom du mois | "mai" |
{{CURRENTMONTHNAMEGEN}} | le mois aussi (avec particularité dans certaines langues) | "mai" |
{{CURRENTDAY}} | le jour du mois | "15" |
{{CURRENTDAYNAME}} | le jour de la semaine | "mercredi" |
{{CURRENTYEAR}} | l'année | "2024" |
{{CURRENTTIME}} | l'heure courante | "15:14" |
Autres | ||
{{SITENAME}} | le nom du site | "Scoutopedia" |
{{NUMBEROFARTICLES}} | le nombre d'articles | "10 984" |
{{ns:7}} | le nom d'un espace de nom d'après son numéro | "Discussion fichier" |
Exemples d'utilisation de modèles spéciaux[modifier le wikicode]
{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|action=edit}} | //fr.scoutwiki.org/index.php?title=Aide:Mod%C3%A8le&action=edit |
{{SERVER}}{{localurl:Special:Whatlinkshere|target={{NAMESPACE}}:{{PAGENAME}}}} | //fr.scoutwiki.org/index.php?title=Sp%C3%A9cial:Whatlinkshere&target=Aide:Modèle |
{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}_1}} | //fr.scoutwiki.org/Aide:Mod%C3%A8le_1 |
{{fullurl:{{NAMESPACE}}:{{PAGENAME}}_1}} | //fr.scoutwiki.org/Aide:Mod%C3%A8le_1 |
''Voir : [[{{NAMESPACE}}:{{PAGENAME}}_1|{{NAMESPACE}} {{PAGENAME}} 1]].'' | Voir : Aide Modèle 1. |
[[{{NAMESPACE}}:{{PAGENAME}}_1]] | Aide:Modèle_1 |
[[{{FULLPAGENAME}}_1]] | Aide:Modèle_1 |
Les balises d’inclusion sélective[modifier le wikicode]
Balisage <noinclude>...</noinclude>[modifier le wikicode]
- Note : cette balise est recommandée dans les modèles
Il est parfois utile de placer certains éléments dans le code source du modèle (par exemple les liens interlangues) sans que ces éléments n’apparaissent sur la page où le modèle est inséré. Pour ce faire, on place les éléments à exclure de l’insertion entre les balises <noinclude> et </noinclude>.
Il est recommandé de laisser au moins un saut de ligne ou espace entre le dernier signe "=" d’une ligne de titre et une balise <includeonly>...</includeonly>.
Il est également recommandé, lorsqu’on place une séquence <noinclude>...</noinclude>, de ne faire précéder ou suivre la séquence entière d’AUCUN saut de ligne ou espace supplémentaire car ils seraient conservés à l’inclusion du modèle (au contraire du contenu de la séquence qui sera ignoré) et pourraient nuire à la présentation de son contenu. Par contre on peut mettre des blancs et sauts de lignes à volonté à l'intérieur (et c'est recommandé pour y placer des catégories ou des liens interwikis, chacun sur une ligne séparée). Par exemple, un Modèle:Exemple contenant normalement
''(contenu ''{{{1|}}}'' à compléter...)''
et qui affiche ceci dans l’article qui l’inclue :
(contenu à compléter...)
peut être complété d’une catégorie et d'un lien interwiki destinés à sa propre classification, mais non destinés aux articles qui incluent ce modèle:
''(contenu ''{{{1|}}}'' à compléter...)''<noinclude> [[Catégorie:Modèle]] [[Catégorie:Exemple]] [[en:Template:Sample]] </noinclude>
Notez ci-dessus l’absence de tout saut de ligne entre le contenu et le début de la section noinclude. Pour catégoriser les modèles ou leur ajouter des liens interwikis, il est vivement recommandé de le faire au sein d’une section noinclude placée à la fin du modèle comme ci-dessus.
- Lorsque le modèle est affiché sur sa propre page, les catégories et liens interwikis apparaîtront, exactement comme si les deux balises <noinclude> et </noinclude> étaient absentes du code ci-dessus, mais leur contenu conservé (y compris les sauts de lignes et espaces à l’intérieur)
- Lorsque le modèle est inclus dans un article par le code {{Exemple}}, cette dernière séquence d’appel sera remplacée exactement comme le premier exemple de code montré ci-dessus (mais sans le dernier saut de ligne présent naturellement en fin de tout modèle et qui est toujours ignoré lors de l’inclusion de n’importe quel modèle).
Ce modèle peut aussi être mis en forme et commenté sur sa propre page de description, sans que cela apparaisse dans les articles qui l’incluent ; par exemple :
<noinclude> Ce modèle n’est qu’un exemple à compléter. === Paramètres === Aucun paramètre obligatoire n’est ici nécessaire pour utiliser ce modèle dans un article. Un paramètre unique (optionnel, vide par défaut) permet d’ajouter du texte au milieu du contenu affiché par ce modèle. === Exemple de rendu dans les articles === </noinclude>''(contenu ''{{{1|}}}'' à compléter...)''<noinclude> === Voir aussi === [[Catégorie:Modèle]] [[Catégorie:Exemple]] [[en:Template:Sample]] </noinclude>
Notez ci-dessus comment le code de documentation du modèle intercale le contenu réel du modèle. Ainsi complété, le modèle affichera la page suivante :
Ce modèle n’est qu’un exemple à compléter.
Aucun paramètre obligatoire n’est ici nécessaire pour utiliser ce modèle dans un article.
Un paramètre unique (optionnel, vide par défaut) permet d’ajouter du texte au milieu du contenu affiché par ce modèle.
(contenu à compléter...)
- Autres langues
- English
Balisage <includeonly>...</includeonly>[modifier le wikicode]
- Cette balise est non recommandée dans les modèles
Inversement, les éléments qu’on veut voir apparaître en insertion, mais qu’on veut voir disparaître lors de la visualisation du modèle seul sont placés entre les balises <includeonly> et </includeonly>.
Notez que le placement d’un titre dans une section "includeonly" peut désorganiser la numérotation du sommaire et des liens "modifier" qui apparaissent à droite des titres.
Par exemple, il peut être parfois nécessaire de montrer plusieurs exemples du modèle lui-même, en fournissant des paramètres. Dans ce cas, le code du modèle sera préférablement placé en tête mais caché dans la page de description. Par exemple :
<includeonly>''(contenu ''{{{1|}}'' à compléter...)''</includeonly><noinclude> Ce modèle n’est qu’un exemple à compléter. === Paramètres === Aucun paramètre obligatoire n’est ici nécessaire pour utiliser ce modèle dans un article. Un paramètre unique (optionnel, vide par défaut) permet d’ajouter du texte au milieu du contenu affiché par cemodèle. === Exemples de rendu dans les articles === # {{Exemple|A}} # {{Exemple|B}} === Voir aussi === * [[Aide:Modèle]] [[Catégorie:Modèle]] [[Catégorie:Exemple]] [[en:Template:Sample]] </noinclude>
Notez ci-dessus la récursion du modèle : il est possible que lors de l’édition d’un modèle déjà existant, il faille le sauvegarder deux fois pour que l’auto-inclusion dans sa page de description prenne en compte le nouveau contenu du modèle. Notez également comment sont disposés les balises </includeonly><noinclude>, sans aucun saut de ligne intermédiaire qui tomberait en surplus et qui risquerait d’interrompre par exemple la liste à numérotation automatique montrée dans l’exemple ci-dessus et dans laquelle le modèle est inséré, ou qui pourrait créer une rupture de paragraphe indésirable dans les articles qui incluent le modèle, ou des sauts blancs verticaux en excédent.
L’utilisation du balisage <includeonly></includeonly> doit donc rester exceptionnel et doit être utilisé avec précaution.
Balise d’inclusion sélective et substitution[modifier le wikicode]
Lors d’une insertion par substitution (avec la syntaxe spéciale {{subst:modèle}} utilisée uniquement lors de l’édition du code Wiki d’un article ou d’un autre modèle) les balises <noinclude>...</noinclude> ainsi que le texte qu'elles encadrent ne sont pas reproduites.
Modèles utilisateur[modifier le wikicode]
Afin de créer un modèle non encyclopédique (par ex. destiné à être appelé par une page utilisateur) ou pour faire des tests, nul n'est besoin de « polluer » l'espace des modèles. Cela peut se faire sur une sous-page utilisateur.
Par exemple, si Utilisateur:Quidam veut tester un modèle appelé « Article fastidieux », il procède comme suit :
- il crée une sous-page utilisateur Utilisateur:Quidam/Article fastidieux dans laquelle il écrit le modèle :
<div style="border:1px solid black;background:rgb(80%,100%,80%);text-align:center;padding=0.4ex;"> ''Ceci est un article fastidieux. Le taux d'ennui est estimé à {{{ennui}}}%.'' </div>
- il l'utilise ensuite dans ses pages et sous-pages personnelles en tapant :
{{Utilisateur:Quidam/Article fastidieux|ennui=55}}
ce qui donne :
Ceci est un article fastidieux. Le taux d'ennui est estimé à 55%.
D’une façon générale, la syntaxe (entre doubles accolades) d’appel d'un modèle :
{{espace de nommage:nom d’article|paramètre1=valeur1}}
reconnait la présence de l’espace de nommage:, qui ne prend la valeur par défaut Modèle: que quand l'espace de nommage n'est pas indiqué explicitement. De même les paramètres peuvent être nommés explicitement, ou implicitement par leur rang d'apparition dans l'appel du modèle.
Problèmes fréquents sur les pages contenant des modèles[modifier le wikicode]
Rafraîchissement : Pour rafraîchir une page qui est restée inchangée, alors que les modèles qu'elle contient ont été modifiés, créer un lien du type :
[http://fr.wikipedia.org/w/index.php?title=nom de la page&action=purge rafraîchir la page] et cliquer dessus, ou utiliser {{purger le cache}}.
Mise à jour des tables : Quand une page contient une autre page, et que cette dernière est modifiée, la page principale est mise à jour mais pas la table des liens, ni les catégories. Même un &action=purge n'y change rien. Il y a deux moyens pour forcer la mise à jour des liens et des catégories :
- Si c'est un problème ponctuel, faire une modification vide sur la page (cliquer sur modifier puis sur sauvegarder sans rien changer : rien n'apparaît dans l'historique mais la table des liens est mise à jour)