« Aide:Modèles » : différence entre les versions

Un livre de Wikilivres.
Contenu supprimé Contenu ajouté
GôTô (discussion | contributions)
Ligne 376 : Ligne 376 :
*[[Wikipédia:Modèles]]
*[[Wikipédia:Modèles]]
*[[Wikipédia:Liste des modèles]]
*[[Wikipédia:Liste des modèles]]
*[[Aide:Fonctions parseur]]
*[[Wikipédia:Bac_à_sable#Et_si_vous_voulez_tester_les_modèles|Bac à sable]] (pour s'entraîner à l'utilisation des modèles)
*[[Wikipédia:Bac_à_sable#Et_si_vous_voulez_tester_les_modèles|Bac à sable]] (pour s'entraîner à l'utilisation des modèles)



Version du 16 mai 2006 à 10:37

Pour Wikipedia, 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. Exemple : le tableau biographique utilisé pour les présidents des États-Unis Modèle:FichePresidentUS. 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. Exemple : la palette utilisée pour les articles du domaine aéronautique Modèle:Aéronautique.
  • 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 Wikipedia 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. Une page spéciale en donne ainsi une liste alphabétique. Voyez la liste des modèles principaux utilisés dans Wikipédia.

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

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

Si le modèle contient un lien inter-langue, alors ce lien est inclus dans toutes les pages utilisant le modèle, ce qui n'est généralement pas le résultat voulu. Si deux liens inter-langue vers une même autre langue se trouvent dans une page, le résultat est imprévisible. On évitera ces conflits en utilisant les balises d’inclusion sélective.

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

À 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.

  • Pour disposer d'un formulaire de documentation préchargé lors de la création d'un nouveau modèle, mettez le nom de modèle de votre choix dans la boîte suivante et cliquez sur le bouton "créer le modèle" :

Modification

Dans notre exemple, rendez vous sur la page Modèle:En cours pour le modifier, autrement, remplacer le « En cours » par le nom de la palette souhaitée.

Utilisation

Pour inclure un modèle il faut utiliser la syntaxe Wikipédia 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 ; comme par exemple {{Wikipédia:Modifications récentes}}.
  • 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

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.

(pour plus de détail voir Infobox

Par exemple, le modèle Modèle:Planète mineure se lit en partie :

{| align="right" rules="all" cellpadding="4" cellspacing="0" style="margin: 0 0 1em 1em; border: 1px solid #999; border-right-width: 2px; border-bottom-width: 2px; background-color: #CEDAF2"
...
| style="background: #003399" align="center" width="100%" |<font color=white size=4>'''{{{nom}}}'''
| padding=15px|
|}
|-
! bgcolor="#6295DA" colspan="2" align="center" | Découverte
|-
| Qui || {{{découvreur}}}
|-
| Quand || {{{date_découverte}}}
|-
| [[Désignation des astéroïdes|Désignation(s) provisoire(s)]] || {{{désignations}}}
|-
...
| [[Température]] de surface || {{{température}}}
|}

Le contenu de ce modèle est un tableau formaté, spécifiant couleurs, alignement, etc. Les parties apparaissant entre triple accolades sont les paramètres qui seront utilisés par la page invoquant le modèle. On voit ci-dessus (en gras) les paramètres nom, découvreur, date_découverte, désignations et température.

Sur la page 14 Irène, on trouve, en partie :

{{Planète mineure | nom=14 Irène (14 Irene)
| découvreur=[[John Russell Hind]]
| date_découverte=[[19 mai]] [[1851]]
| désignations=A906 QC; A913 EA;<br />1952 TM
| catégorisation=[[ceinture d'astéroïdes]]
| orbite=386,730 [[gigamètre|Gm]] (2,585 [[unité astronomique|ua]])
...
| dimensions=181,8 km <sup>[http://spiff.rit.edu/richmond/parallax/phot/LCSUMPUB.TXT 1]</sup>
...
| température=~234 [[kelvin|K]]}}

Afin d'améliorer la lisibilité lors de l'édition, des retours à la ligne peuvent apparaître dans le modèle, à la façon des tableaux. Idéalement, comme on le constate ci-haut, il peut y avoir un retour à la ligne avant chaque "|" sauf le premier. Les valeurs des paramètres sont spécifiées en écrivant paramètre=valeur. Il ne doit pas y avoir de retour à la ligne dans la valeur, mais <br /> est permis. La valeur peut inclure un lien extérieur (par exemple, le paramètre dimensions) ou intérieur (par exemple, orbite). On remarquera que la syntaxe habituelle des liens wiki est possible (c'est-à-dire [[page visée|texte qui apparaîtra]]).

Valeur par défaut d'un paramètre

Les paramètres peuvent prendre une valeur par défaut, c'est à dire une valeur utilisée automatiquement en l'absence de spécification sur la page d'inclusion, comme ceci {{{3|123}}} (s'il n'y a pas de 3e paramètre, 123 sera utilisé à la place), ou comme cela {{{paramètre|123}}}.

Des exemples sont donnés sur la page Discussion Modèle:Qif.

Modèles spéciaux

Ces modèles sont prédéfinis et ne doivent pas être utilisés comme nom de modèles. (note: pour les modèles déclarés pas des utilisateurs, aller lire: la liste complète des modèles)

{{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èles"
{{PAGENAMEE}} le nom de la page sans le préfixe de l'espace de noms dans le format utilisé dans les URL "Mod%C3%A8les"
{{FULLPAGENAME}} le nom de la page avec le préfixe de l'espace de noms "Aide:Modèles"
{{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%A8les"
{{SUBPAGENAME}} le nom de la dernière sous-page la plus imbriquée "Modèles"
{{SITENAME}} le nom du site "Wikilivres"
{{SERVER}} l'URL du site "//fr.wikibooks.org"
{{localurl:nom d'une page}} l'URL correspondant à une page "/wiki/Nom_d%27une_page"
{{localurl:nom d'une page|paramètres}} idem mais avec des paramètres "/w/index.php?title=Nom_d%27une_page&paramètres"
{{fullurl:nom d'une page}} l'URL complet de la page, correspond à {{SERVER}}{{localurl:nom d'une page}} "//fr.wikibooks.org/wiki/Nom_d%27une_page"
{{fullurl:nom d'une page|paramètres}} idem mais avec des paramètres "//fr.wikibooks.org/w/index.php?title=Nom_d%27une_page&paramètres"
{{CURRENTMONTH}} le mois "03"
{{CURRENTMONTHNAME}} le nom du mois "mars"
{{CURRENTMONTHNAMEGEN}} le mois aussi (avec particularité dans certaines langues) "mars"
{{CURRENTDAY}} le jour du mois "28"
{{CURRENTDAYNAME}} le jour de la semaine "jeudi"
{{CURRENTYEAR}} l'année "2024"
{{CURRENTTIME}} l'heure courante "13:35"
{{NUMBEROFARTICLES}} le nombre d'articles "19 934"
{{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

{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|action=edit}} //fr.wikibooks.org/w/index.php?title=Aide:Mod%C3%A8les&action=edit
{{SERVER}}{{localurl:Special:Whatlinkshere|target={{NAMESPACE}}:{{PAGENAME}}}} //fr.wikibooks.org/w/index.php?title=Sp%C3%A9cial:Whatlinkshere&target=Aide:Modèles
{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}_1}} //fr.wikibooks.org/wiki/Aide:Mod%C3%A8les_1
{{fullurl:{{NAMESPACE}}:{{PAGENAME}}_1}} //fr.wikibooks.org/wiki/Aide:Mod%C3%A8les_1
''Voir : [[{{NAMESPACE}}:{{PAGENAME}}_1|{{NAMESPACE}} {{PAGENAME}} 1]].'' Voir : Aide Modèles 1.
[[{{NAMESPACE}}:{{PAGENAME}}_1]] Aide:Modèles_1
[[{{FULLPAGENAME}}_1]] Aide:Modèles_1

Les balises d’inclusion sélective

Balisage <noinclude>...</noinclude> (recommandé 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 ===
* [[Aide:Modèle]]

[[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 :

Modèle:Exemple

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

(contenu à compléter...)

Voir aussi
Autres langues 
English

Balisage <includeonly>...</includeonly> (non recommandé)

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

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

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

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 :

  1. 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)
  2. Si c'est un problème récurrent, ou si de nombreuses pages sont concernées : demander à un robot de passer régulièrement sur la page concernée en utilisant le script touch.py​. Déposez votre requête sur Wikipédia:Bot/Requêtes.

Les développeurs ont été mis au courant de tous ces problèmes sur la page Bugzilla N°939.

Voir aussi