Transclusion/nl
Transclusie is doorgaans het opnemen van de inhoud van een document in een ander document door verwijzing. In een wiki-context is het het gebruik van de sjabloonfunctionaliteit van MediaWiki om dezelfde inhoud in meerdere documenten op te nemen zonder dat die documenten afzonderlijk hoeven te worden bewerkt.
Hoe transclusie werkt
Om een bronpagina (binnen één MediaWiki-project, zoals Wikipedia) binnen een andere doelpagina op te nemen, voeg deze code toe: {{SOMEPAGE}}
Wanneer de doelpagina A wordt opgebouwd, wordt de volledige inhoud van de bronpagina B (in dit geval SOMEPAGE) weergegeven op de plaats waar de tag voor transclusie is geplaatst.
U kunt bijvoorbeeld besluiten om een welkomstbericht te plaatsen op de overlegpagina van elke nieuwkomer. Transclusie maakt een "live" link tussen de sjabloonpagina en de doelpagina(s) waarop het bericht zou moeten verschijnen. Wanneer het sjabloon wordt bewerkt, worden ook alle doelpagina's qua inhoud aangepast zonder een wijziging te doen op die pagina's.
U kunt ook beslissen om een (sjabloon) pagina te maken met uw e-mailadres en dit sjabloon niet alleen op uw pagina, maar ook op alle pagina's van uw vrienden te plaatsen. Wanneer u uw televisie en bank naar een ander appartement verplaatst, kunt u uw adressjabloon veranderen, en die nieuwe informatie wordt automatisch bijgewerkt op alle pagina's van uw vrienden.
Transclusie opmaak en syntaxis
Als de bron in de namespace Template staat (bijvoorbeeld "Template:Welcome"), gebruik dan gewoon de naam zelf, alleen:
{{Welcome}}
Als de bron in de mainspace Main staat (bijv. "VisualEditor"), moet een dubbele punt (:) worden toegevoegd voor de naam:
{{:VisualEditor}}
Als de bron in een andere mainspace staat (bijvoorbeeld "User:Example"), moet u de volledige naam gebruiken:
{{User:Example}}
Als de bron een subpagina van de doelpagina is (bijvoorbeeld "Transclusion/ja"), kunt u eenvoudig de naam van de subpagina opgeven, ongeacht de namespace:
{{/ja}}
Etymologie
Ted Nelson bedacht de term "Transclusion/nl ", evenals "hypertext" en "hypermedia", in zijn boek uit 1982 Literary Machines .
Gedeeltelijke transclusie
Door gebruik te maken van de opmaak "noinclude", "onlyinclude" en "includeonly", is het mogelijk om een deel van een pagina te transcluderen in plaats van de hele pagina. Dergelijke gedeeltelijke transclusies kunnen ook worden bereikt door te transcluderen van andere pagina's zoals subpagina's. Het is vaak wenselijk om bepaalde informatie, zoals sjabloondocumentatie en categorieën, niet te transcluderen.
Voorbeelden van wanneer volledige of gedeeltelijke transclusie gebruikt moet worden
Gebruik volledige transclusie wanneer u de volledige inhoud van een bronpagina in een doelpagina wilt opnemen. U kunt bijvoorbeeld de volledige inhoud van een pagina over appels in een pagina over boomvruchten opnemen. Gebruik gedeeltelijke transclusie wanneer u slechts een deel van een bronpagina in een doelpagina wilt opnemen. U kunt bijvoorbeeld alleen informatie over Granny Smith appels opnemen van een pagina over appels in een pagina over ingrediënten die vaak worden gebruikt bij bakken.
Opmaak gedeeltelijke transclusie
- noinclude – De opmaak
<noinclude>...</noinclude>betekent dat de tekst tussen de tags exclusief zichtbaar is op de bronpagina en niet naar een andere pagina kan worden overgezet. Dit is nuttig voor sjabloondocumentatie en categorieën. - includeonly – De opmaak
<includeonly>...</includeonly>betekent dat de tekst tussen de tags verborgen zal zijn op de bronpagina en alleen zichtbaar zal zijn wanneer deze naar een andere pagina wordt getranscludeerd. Dit kan bijvoorbeeld nuttig zijn voor het toevoegen van categorieën aan pagina's die een sjabloon omvatten, zonder dat de sjabloon zelf aan deze categorieën wordt toegevoegd. - onlyinclude – De opmaak
<onlyinclude>...</onlyinclude>betekent dat de tekst tussen de tags zichtbaar zal zijn op de bronpagina en zichtbaar is wanneer deze naar een andere pagina wordt getranscludeerd. Dit is de subtielste van de gedeeltelijke transclusies, omdat het vaak de voorschriften van anderen overschrijft. Als er ten minste één paar tags "onlyinclude" op een pagina staat, dan is het alleen materiaal binnen de tags "onlyinclude" dat wordt getranscludeerd, wanneer deze pagina wordt getranscludeerd. Er kunnen verschillende dergelijke secties "onlyinclude" op een pagina zijn. Dit kan nuttig zijn om een klein deel van een pagina op een tweede te herhalen: omring het klein deel gewoon met tags onlyinclude en transclude het op de tweede pagina.
<noinclude>, <includeonly>, en <onlyinclude> gedragen zich anders binnen <nowiki> tags. nowiki tags maken het mogelijk om te ontsnappen aan speciale markeringen, en dit voor <noinclude> en <includeonly> tags. Maar <onlyinclude> tags binnen <nowiki> tags produceert alleen de inhoud binnen de <onlyinclude> tag.| Opmaak | Uitvoer bij transclude |
|---|---|
<nowiki><noinclude> My content </noinclude></nowiki>
|
<noinclude> My content </noinclude>
|
<nowiki><includeonly> My content </includeonly></nowiki>
|
<includeonly> My content </includeonly>
|
<nowiki><onlyinclude>My content</onlyinclude></nowiki>
|
My content |
U kunt alle drie de types van transclusie in elkaar nestelen, waardoor u precies kunt verfijnen welke inhoud er op de huidige pagina wordt weergegeven en war op de transcluseerde pagina's zichtbaar is.
Subpagina's
U kunt de tekst knippen en plakken om te transcluderen naar een subpagina, en vervolgens de naam van de subpagina gebruiken in het transclusiesjabloon. Deze aanpak kan alleen worden gebruikt wanneer subpagina's zijn ingeschakeld; bijvoorbeeld op de Engelse Wikipedia kunnen subpagina's alleen worden gebruikt van User-, Talk- of Wikipedia-pagina's; nu kunnen subpagina's niet worden aangemaakt uit hoofdpagina's.
Voorbeeld: u wilt het verwijderen en doorsturen vanPussycatnaar Cateerst overleggen.Maak eerst de subpagina Talk:Pussycat/Let's delete Pussycat! aan, schrijf uw opmerking erin en verwerk het er dan in Talk:Pussycat en Talk:Cat met het sjabloon {{Talk:Pussycat/Let's delete Pussycat!}}. Reacties die op een van beide overlegpagina's worden geplaatst, worden op beide getoond.
Speciale pagina's
- Zie ook:deze pagina en Manual:$wgAllowSpecialInclusion
Sommige pagina's op Special:Specialpages kunnen worden transcluded, bijvoorbeeld:
- Special:AllPages
- Special:ApiHelp
- Special:Contribute
- Special:Contributions
- Special:ListFiles
- Special:ListUsers
- Special:NewFiles
- Special:NewPages
- Special:PrefixIndex
- Special:RecentChanges
- Special:RecentChangesLinked
- Special:WantedPages
Voorbeeld: {{Special:Newpages/3}} geeft 3 nieuwe pagina's.
URL parameters kunnen zoals sjabloonparameters worden gegeven, bijvoorbeeld. {{Special:RecentChanges|namespace=10|limit=5}}
Alternatieven voor transclusie door een sjabloon
Soms wilt u een sjabloon gebruiken, maar om de een of andere reden wilt u transclusie misschien niet gebruiken. Het automatische eenmalige kopiëren van de code/tekst van een sjabloon naar de locatie van een sjabloontag wordt sjabloonsubstitutie of subclusie genoemd (substitutie + transclusie). Om de code/tekst van een sjabloon uit te sluiten, wordt de sjabloontag aangepast van de standaard transclusietag naar een substitutietag, simpelweg door subst:, een tag toe te voegen met de vorm: {{subst:sjabloonnaam}}.
Gelabelde sectie transcludie
Een extensie met de naam Labeled Section Transclusion maakt het mogelijk om gemarkeerde tekstsecties te transcluderen.
Scribunto
U kunt de inhoud van de pagina, of zelfs delen ervan, transcluderen met Lua met de extensie Scribunto . Voorbeeldː Module:Transcluder
Semantic MediaWiki
De extensie Semantic MediaWiki gebruikt inline queries om semantische gegevens op te vragen en weer te geven. Er zijn nu twee manieren om transclusie of iets vergelijkbaars uit te voeren:
- Gebruik transclusie op een nette manier. Het weergaveformaat "embedded" zorgt ervoor dat geselecteerde pagina's (hoofdruimte artikelen, sjablonen, enz.) worden getranscludeerd. Net als bij sjablonen worden secties tussen noinclude-tags weggelaten.
- Aan een geselecteerde passage op een pagina kan een eigenschap van het type 'Text' worden toegekend. Dit soort selecties kunnen worden aangevraagd door een inline query voor dit type eigenschap uit te voeren.
Meer informatie over inline queries.
Zie ook
- Help:Transclusion
- T31051 – Geen ondersteuning voor transclusies met versie (specifieke pagina/sjabloonrevisie)
- Extension:Labeled Section Transclusion/nl
- Help:Magische woorden
- Extension:Interwiki
Sjablonen
- Help:Sjablonen
- Help:Substitution/nl – een andere manier om sjablonen te gebruiken
Gebruik op Wikimedia-sites
- T6547 – Cross-Wikimedia-inclusie (interwiki-sjablonen transclusie, enz.) niet ondersteund