Modèle:Extension
Ce modèle utilise des fonctionnalités compliquées (intrication) de la syntaxe des modèles.
Nous vous encourageons à vous familiariser avec sa mise en œuvre et avec les fonctions de l'analyseur (parser function) avant de modifier ce modèle. Si votre modification entraînes des problèmes inattendus, annulez là s'il vous plaît rapidement, parce que ce modèle peut être utilisé sur un grand nombre de pages. Rappelez-vous que vous avez le droit de faire des essais et que vous devez tester toutes les améliorations, soit dans le bac à sable commun ou dans votre espace utilisateur avant de changer quoi que ce soit ici. |
Ce modèle utilise le module Lua suivant : |
This template uses TemplateStyles: |
Ce modèle doit être ajouté à toutes les pages d'extension de ce wiki (mais seulement aux pages principales). Il ajoute une boîte d'information utile (voir ci-dessous) et ajoute automatiquement l'extension à Catégorie:Toutes les extensions , en même temps que l'état adéquat et les catégories du type d'implémentation . It autofills some fields of the infobox with extension data collected by wikitech:Tool:Extjsonuploader.
Utilisation
Copier-coller : {{Extension |templatemode = |name = |status = |type1 = |type2 = |hook1 = |hook2 = |newhook1 = |newhook2 = |username = |author = |description = |image = |imagesize = |version = |update = |version preview = |update preview = |compatibility policy = |mediawiki = |php = |needs-updatephp = |composer = |virtual domain = |table1 = |table2 = |license = |download = |repo = |readme = |changelog = |help = |example = |namespace = |parameters = |tags = |rights = |compatibility = |phabricator = |translate = |vagrant-role = }}Pour obtenir de l'aide sur la valeur des paramètres, voir ci-dessous. |
|
Paramètres de contenu
Cette section décrit les paramètres qui contrôlent le contenu de la boîte d'information. Pour l'aide concernant templatemode et les autres paramètres de contrôle, voir Paramètres de contrôle.
Paramètre | Description |
---|---|
name | nom de l'extension |
status |
état de la version actuelle Une valeur parmi :
Si l'état n'appartient pas à cette liste, il sera ignoré et la valeur 'Unknown' sera affichée à place dans le modèle. Dans les cas où la valeur est omise, il sera categorisé comme inconnu. Dans les cas où la valeur n'est pas valide, il sera placé dans une catégorie spéciale de sorte que l'erreur soit récupérable et corrigée. |
type1 type2 type3 type4 type5 type6 | type d'implémentation
Concerne la ou les stratégies d'implémentation employées pour construire cette extension. Ce paramètre est utilisé pour créer des catégories qui aident les programmeurs à trouver des exemples de diverses stratégies d'implémentation spécifiques à MediaWiki ou de modèles. Bien que les valeurs de ce paramètre coincident parfois avec le cas d'utilisation ou le but d'une extension, ce n'est pas la raison de ce paramètre. Si les valeurs que vous avez choisies pour ce paramètre n'identifient pas clairement le but ou les cas d'utilisation possibles, nous vous recommandons d'ajouter des catégories de liens selon les besoins. Les valeurs autorisées pour les paramètres type1, type2, ... sont :
Tout autre valeur de 'type' n'est pas valide, et provoquera le classement de l'extension dans Category:Extensions with invalid or missing type/fr. Note: beaucoup d'extensions ont plus d'un type, si c'est votre cas, remplacez|type= par |type1=|type2=|type3=... . Vous pouvez définir jusqu'à 6 (six) types pour une extension. |
hook1 hook2 hook3 hook4 ... |
nom des accroches utilisées par l'extension
En plaçant des valeurs dans ce champ, vous exposerez davantage votre extension et aiderez les autres développeurs. Chaque accroche documentée ajoutera automatiquement l'extension à une catégorie qui liste l'ensemble des extensions qui utilisent cette accroche. Cette catégorie et auto-liée à chaque page d'accroche de sortes à ce que les programmeurs puissent facilement trouver des exemples d'extensions qui utilisent une accroche particulière. Pour les accroches multiples, assignez la première accoche à hook1, la seconde à hook2 et ainsi de suite. |
newhook1 newhook2 newhook3 newhook4 ... newhook90 |
nom de chaque accroche fournie par l'extension Vous pouvez également ajouter les accroches dans Extension hook registry. |
username | Nom d'utilsateur de l'auteur sur MediaWiki.org (s'il existe). Peut être omis mais s'il est présent, il sera utilisé pour lier la page utilisateur et la page de discussion de l'auteur. Doit être fourni sans espace de noms et sans [[]]s. |
Nom de l'auteur de l'extension, s'il est différent du nom d'utilisateur MediaWiki.org. Texte libre. Si absent, alors le champ 'username' sera utilisé (s'il est initialisé). | |
description | courte description |
image | capture d'écran ou logo de l'extension. Doit être fourni sans l'espace de noms et sans [[]]s. |
imagesize | facultatif, taille de l'image sans l'unité px, ex : 360 (taille par défaut 300 pixels) |
version | dernière version |
update | date de dernière mise à jour |
version preview | version précédente |
update preview | date de la dernière mise à jour de la version précédente |
compatibility policy | politique de compatibilité (les valeurs admises sont : master, main, rel, ltsrel). (arriéré des tâches ) |
mediawiki | version de MediaWiki requise La plupart des extensions ne devraient pas utiliser ceci — la valeur par défaut est celle de la propriété 'requires' de extension.json. Voir aussi Category:Extensions without MediaWiki version et Category:Extensions with manual MediaWiki version . |
php | version de PHP requise |
needs-updatephp |
Les extensions qui suivent la norme des extensions MediaWiki sont diffusées avec un script de modification du schéma que vous devez exécuter manuellement (une fois) avant de lancer et d'accéder à votre MediaWiki via votre navigateur. Après que vous ayez copié tous les fichiers de l'extension dans
$IP désigne le chemin du répertoire d'installation (ou répertoire) de votre installation MédiaWiki, le même répertoire qui contient LocalSettings.php , index.php etc.. |
composer | Nom du paquet Composer de l'extension, dans le format standard. Il sera inclus automatiquement s'il est configuré dans le fichier composer.json de l'extension (c'est à dire que ce paramètre n'est pas nécessaire dans ce cas). Il sera lié à la page de l'extension sur Packagist. |
virtual domain | Le domaine de base de données virtuelle utilisé par l'extension. |
table1 table2 table3 table4 ... table30 | nom de chaque table utilisée par l'extension et qui n'appartient pas au noyau Liens vers une sous-page de votre page d'extension. Par exemple « table1 = cu_changes » de Extension:CheckUser sera lié à Extension:CheckUser/cu_changes table . Ne listez pas les tables du noyau telles que page ou revision ; ne listez que les tables ajoutées par les extensions. |
license | licence relative à l'utilisation de cette extension, une valeur parmi les codes trouvés dans https://spdx.org/licenses/, par exemple GPL-2.0-or-later , GPL-2.0-only ou GPL-3.0-or-later , etc. |
download | lien de téléchargement : Git, {{WikimediaDownload/fr }}. |
repo | Nom du dépôt Gerrit où est stocké le code de l'extension, s'il est différent du nom de page. En le définissant, vous fixez automatiquement le |téléchargement= , et vous permettez au modèle de charger automatiquement les données à partir du fichier extension.json correspondant. |
readme | lien externe vers le fichier readme, par exemple https://phabricator.wikimedia.org/r/browse/mediawiki/extensions/Flow;master;README |
changelog | lien externe vers le journal des modifications, par exemple Extension:GeoGebra/Changelog |
help | Lien vers l'aide utilisateur de l'extension. If not provided, will look for Help:Extension:ExtensionName . S'il est fourni, le lien complet en wikicode doit être passé (car pouvez souhaiter lier une page externe par exemple). |
example | exemple, site web, ou capture d'écran de l'extention en cours d'exéction |
namespace | espace de noms dans lequel cette extension est utilisée |
parameters | paramètres disponibles pour LocalSettings.php |
toute balise que votre extension peut utiliser (par exemple <tag1>, <tag2>). | |
rights | droits ajoutés par l'extension. A ne pas confondre avec la licence d'utilisation ! Les droits sont par exemple makebot ou desysop , et non pas GFDL ou LGPL ou GPL - ces derniers étant des licences ! |
compatibility | Informations supplémentaires de compatibilité, par exemple les graphes de compatibilité. Il est recommandé d'ajouter ici également, toute information de compatibilité du côté client, particulièrement dans les cas où le navigateur ne prend pas en charge certaines fonctions. |
bugzilla | nom de composant de l'extension Bugzilla MediaWiki |
phabricator | nom de projet Phabricator |
translate |
Paramètre optionnel pour lier la page exacte où l'(ID du groupe de messages avec lequel) l'extension sera traductible sur translatewiki.net si c'est autorisé. Si le lien par défaut est incorrect, initialisez-le manuellement à :
|
vagrant-role | role MediaWiki-Vagrant |
CheckUsageNameOverride | réécrase le nom de page utilisé pour le lien de vérification de l'utilisation. |
Paramètres de contrôle
Paramètre | Description |
---|---|
templatemode |
Contrôle l'auto-catégorisation de la page hôte. Normalement laissé vide. Les valeurs possibles sont :
|
Utiliser la boîte d'information
Pages d'extensions existantes
Si vous désirez ajouter la boîte d'information sur une page existante, copiez et collez le code qui se trouve au début de cette page.
Créer un nouvel article d'extension
Pour créer une nouvelle page d'extension, saisissez son nom ci-dessous et cliquez sur le bouton. Une nouvelle page sera créée avec le modèle de la boîte d'information déjà en place.
Un développeur qui partage son code sur le dépôt de code MediaWiki doit s'attendre à :
- Des retours / des critiques / des revues de code
- Les revues et commentaires faits par les autres développeurs sur des points comme l'utilisation des composants logiciels, la sécurité, l'efficacité et l'utilisabilité.
- Des ajustements de la part de développeurs
- D'autres développeurs modifiant le code que vous avez proposé afin de l'améliorer ou d'y faire du nettoyage pour qu'il satisfasse aux nouvelles méthodes et classes de composants logiciels, aux conventions de codage et aux traductions.
- Un accès amélioré pour les administrateurs des wikis
- Si vous décidez de mettre votre code sur le wiki, un autre développeur peut décider de le déplacer vers le dépôt de code MediaWiki pour en faciliter la maintenance. Vous pouvez alors créer un Compte développeur pour continuer à le maintenir.
- De futures versions par d'autres développeurs
- De nouvelles branches de votre code, créées automatiquement en tant que nouvelles versions de MediaWiki, peuvent être publiées. Vous devriez effectuer un portage vers ces branches si vous voulez gérer d'anciennes versions.
- Votre code pourra être intégré dans d'autres extensions qui ont un objectif identique ou similaire - en incorporant les meilleurs fonctionnalités de chaque extension.
- Des crédits
- Le crédit de votre travail sera préservé dans les versions futures - y compris les extensions intégrées dans d'autres extensions.
- De même, vous devriez créditer les développeurs de toutes les extensions dont vous avez emprunté le code - en particulier lorsque vous incorporez leur code ailleurs.
Tout développeur qui ne se sent pas à l'aise quant à l'une de ces actions ne devrait pas héberger son code dans le dépôt de code. Vous êtes malgré tout encouragé à créer une page de résumé pour votre extension sur le wiki, afin de permettre aux autres d'en avoir connaissance et de savoir où la télécharger.
Etendre ce modèle
Bienvenue si vous désirez améliorer ce modèle ! Ce modèle est compliqué et certaines parties de l'aide sont toujours en cours :
Bouton Créer une extension
Pour améliorer le comportement du bouton Créer une extension :
- Template:Extension/Sample : l'extension boilerplate est préchargée dans les pages créées récemment.
- Modèle:Extension/CreateExtensionInputBox : une boîte de saisie pouvant être insérée à l'endroit où vous voulez que les utilisateurs puissent créer facilement des extensions. Pour la documentation de la balise
<inputbox>
, voir Extension:InputBox .
Paramètres de la boîte d'information
En général :
- Pour rendre ce modèle facile à utiliser, chaque libellé de la boîte d'information est lié à la documentation du ou des paramètres du modèle qu'il affiche. Si vous ajoutez un paramètre, assurez-vous de l'ajouter également dans la documentation des paramètres de contenu et de relier son libellé à cette documentation.
Pour modifier/corriger/ajouter les paramètres d'implémentation des types :
- Vérifiez la page de discussion - là se trouvent les discussions développées concernant ce champ.
- Les types valides et ceux à quoi ils sont reliés, sont définis sur Module:Extension
Pour modifier le comportement des paramètres de l'accroche :
- Template:Extension/HookInUse : ajoute des liens et des catégories à une accroche en cours d'utilisation. Plusieurs accroches en cours d'utilisation sont implémentées en appelant ce modèle avec Template:Foreach.
- Template:Extension/HookInUseNoCats : utilisé à la place de Template:Extension/HookInUse lorsque ce modèle est utilisé dans
templatemode=nocats
. Les modèles utilisés avec Template:Foreach ne peuvent prendre qu'un seul paramètre il faut donc encapsuler l'appel à Template:Extension/HookInUse dans un autre modèle qui définit le mode.
Cas de test
Vérifiez que les pages suivantes sont toujours valables quand vous modifiez ce modèle.
TemplateData
TemplateData | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Ceci est la documentation de TemplateData pour ce modèle, utilisée par VisualEditor et autres outils. Extension An infobox for a MediaWiki extension.
|
Maintenance: vulnerabilities, archived