Transclusion/fr

La transclusion consiste généralement en l'inclusion par référence, du contenu d'un document dans un autre document. Dans le contexte d'un wiki, il s'agit de l'utilisation de la fonction modèle de MediaWiki pour inclure le même contenu dans de multiples documents sans avoir à éditer chacun de ces documents séparément.

Comment fonctionne la transclusion


Pour transclure n'importe quelle page source (au sein d'un même projet MediaWiki, tel que Wikipédia) à l'intérieur d'une autre page cible, incluez le code suivant :

Lorsque la page cible A est affichée, tout le contenu de la page source B (dans ce cas, SOMEPAGE), sera affiché à l'endroit où la transclusion a été demandée.

Par exemple, vous pouvez décidez de placer un message de bienvenue sur la page de discussion de chaque nouvel inscrit. La transclusion créera un lien « en direct » entre la page du modèle et les pages cible sur lesquelles le message doit apparaitre. Lorsque le modèle sera modifié, toutes les pages cibles seront modifiées également.

Vous pouvez aussi décider de créer une page (de modèle) avec votre adresse courriel et inclure ce modèle pas seulement sur votre page mais également sur toutes les pages de vos amis. Lorsque vous déplacez votre téléviseur et votre canapé dans un autre appartement, vous pouvez modifier le modèle de votre adresse et ces nouvelles informations seront automatiquement mises à jour sur les pages de tous vos amis.

Langage de transclusion et syntaxe
Si la source est dans l'espace de noms des modèles (par exemple "Template:Welcome"), utilisez simplement le nom du modèle tout seul :

Si la source est dans l'espace de noms principal (par exemple "VisualEditor"), vous devez placer le symbole « deux points » devant le nom :

Si la source est dans tout autre espace de noms (par exemple "User:Example"), vous devez utiliser le nom complet incluant l'espace de noms :

Si la source est une sous-page de la page cible, (comme « Transclusion/ja »), vous pouvez spécifier simplement le nom de la sous-page sans l'espace de noms :

Étymologie
Ted Nelson inventa le terme "transclusion", ainsi qu'"hypertexte" et "hypermedia" dans son livre de 1982 Literary Machines.

Transclusion partielle
En utilisant les balises « noinclude », « onlyinclude » et « includeonly », il est possible de ne transclure qu'une partie d'une page au lieu de son ensemble. De telles transclusions partielles peuvent aussi être mises en œuvre à partir d'autres pages sources telles les sous-pages. Il est généralement préférable de ne pas transclure certaines informations, telles que la documentation du modèle et les catégories.

Exemples d'utilisation de transclusion partielle de version complète
Use full transclusion when you want to include the full content of a source page in a target page. For example, you could include the full content of a page about apples in a page about tree fruits. Use partial transclusion when you only want to include part of a source page in a target page. For example, you could include only information about Granny Smith apples from a page about apples in a page about ingredients commonly used in baking.

Balises partielles de transclusion

 * noinclude - Le marquage  signifie que le texte entre les balises n'est visible exclusivement que sur la page source et ne peut pas être transclus dans une autre page. Ceci est utile pour la documentation des modèles et les catégories.
 * includeonly - Le marquage  signifie que le texte entre les balises sera masqué sur la page source mais sera visible uniquement lorsqu'il sera transclus dans une autre page. Cela peut être utile, par exemple, pour ajouter des catégories aux pages en faisant la transclusion d'un modèle, sans que ce modèle ne soit ajouté à ces catégories.
 * onlyinclude - Le marquage  signifie que le texte entouré par les balises sera visible sur la page source et également quand il sera transclus dans une autre page. Ceci est la plus subtile des balises de transclusion partielle car elle remplace souvent les autres. S'il existe au moins une paire de balises onlyinclude dans une page, alors quelque soit l'endroit où cette dernière est transcluse, c'est ce qui se trouve uniquement entre les balises onlyinclude qui sera transclus. Il peut y avoir plusieurs sections onlyinclude sur une même page. Ceci peut être utile par exemple pour répéter une petite partie de page dans une autre : il suffit d'entourer la petite partie avec des balises onlyinclude et de la transclure dans la seconde page.

You can nest all three transclusion types within each other, which enables you to refine exactly what content is displayed on the current page and is visible on transcluded pages.

Sous-pages
Vous pouvez copier et coller le texte à transclure dans une sous-page, et utiliser le nom de la sous-page dans le modèle de transclusion. Cette approche peut être utilisée seulement si les sous-pages sont activées; par exemple, sur la Wikipedia en anglais, les sous-pages peuvent être utilisées seulement à partir des pages utilisateur, discussion ou des pages Wikipedia; actuellement, les sous-pages ne peuvent pas être créées à partir des pages principales d'articles.

Exemple: vous voulez discuter de la supression et de la redirection de Pussycat vers Cat. D'abord, créez la sous-page Talk:Pussycat/Let's delete Pussycat!, et mettez-y vos commentaires, ensuite faites la transclusion de cette page dans Talk:Pussycat et Talk:Cat en utilisant le modèle  . Les commentaires postés sur l'une ou l'autre des pages de discussion apparaîtront dans les deux.

Pages spéciales

 * Voir aussi : w:Wikipedia:Transclusion et 

Certaines pages sur Special:Specialpages peuvent être transcluses, comme Special:AllPages, Special:PrefixIndex, Special:NewFiles, Special:NewPages, Special:RecentChanges et Special:RecentChangesLinked.

Exemple: donne 3 nouvelles pages.

Les paramètres d'URL peuvent être passés comme des paramètres de modèle, par exemple :.

Alternatives à la transclusion de modèles
Occasionnellement, vous pourriez vouloir utiliser un modèle, mais pour une raison ou pour une autre, sans passer par une transclusion. La copie automatique en une passe du code/texte d'un modèle vers la destination d'une balise de modèle est appelée substitution de modèle ou subclusion (substitution + transclusion). Pour subclure le code/texte d'un modèle, la balise du modèle est modifiée à partir de la balise standard de transclusion en une balise de substitution, simplement en ajoutant subst:, ce qui crée une balise de la forme:.

Sections de transclusion nommées
Une extension appelée Transclusion de sections avec étiquettes permet la transclusion de sections de texte marquées. Une extension avec une fonction quelque peu similaire est PageVariableExtension.

Scribunto
You can transclude page content, or even parts of it, using Lua with the extension. See Module:Transcluder for an example on this wiki.

Semantic MediaWiki
L'extension Semantic MediaWiki utilise les requêtes en ligne pour demander et afficher les données sémantiques. Il existe actuellement deux manières de réaliser la transclusion ou quelque chose qui s'y rapporte : Voir les requêtes en ligne pour d'autres informations.
 * 1) La transclusion proprement dite. Le format d'affichage « en ligne » assure que les pages sélectionnées (les articles de l'espace principal, les modèles, etc.) sont incluses. Comme pour les modèles, les sections placées entre les balises noinclude sont omises.
 * 2) Une propriété de type 'Text' peut être assignée aux passages sélectionnés d'une page. Ces sélections peuvent être demandées en exécutant une requête en ligne pour ce type de propriété.


 * 1) Transclusion proper. The display format "embedded" ensures that selected pages (mainspace articles, templates, etc.) are transcluded. As with templates, sections placed between noinclude tags will be omitted.
 * 2) Selected passages in a page can be assigned a property of type 'Text'. These selections can be requested by running an inline query for this type of property.

See inline queries for further information.

Pages relatives à la transclusion de MediaWiki

 * Espace de noms MediaWiki (sur Wikipedia)
 * Aide sur l'espace de noms MediaWiki
 * Variable
 * Transclure du texte

Modèles

 * Espace de noms des modèles
 * Limites des modèles
 * Limites des modèles

Voir aussi

 * Demande de transclusion des modèles de Commons (modèles interwiki, etc.)
 * w:Wikipedia:Substitution (l'opposé de la transclusion)
 * Extension:Labeled Section Transclusion