Help:Nl:Een Template maken
Vrijwaring: Dit is een niet-officiële vertaling. De Engelstalige versies zijn de officiële hulppagina's.
Vertaald: JvB
These instructions are for members of the Templates Project. First see See Template Guidelines.
Sjablonen of Templates zijn zeer nuttige voor wiki's. Hiermee kunt je inhoud opnemen die op veel pagina's voorkomt en eenvoudig overnemen op elke pagina zonder deze inhoud volledig te kopiëren.
Bijvoorbeeld, Template:Mayflower Passenger wordt gebruikt op alle profielen van Mayflower-passagiers. Het toont een foto van de Mayflower en leidt de lezer naar het Mayflower Project. Dit alles kan in een profiel worden weergegeven met alleen de tekst {{Mayflower Passenger}}.
Let op: Experimenteer niet met bestaande Templates. Alle wijzigingen die in een Template worden aangebracht, verschijnen op alle pagina's die ze bevatten, dus je wijziging kan van invloed zijn op honderden profielen.
Je moet lid zijn van het Templates Project om sjablonen te mogen maken en te bewerken.
Contents |
Een Basis Template maken
Een eenvoudig Template die overal exact hetzelfde weergeeft, is heel gemakkelijk te maken.
- Ga naar de template pagina. Dit zal zijn https://www.wikitree.com/wiki/Template: gevolgd door de naam van je Template (b.v. https://www.wikitree.com/wiki/Template:Mayflower_Passenger ).
- Klik op de [edit] link in de rechter bovenhoek.
- Typ in wat je wilt, om datgeen te laten verschijnen waar je de sjabloon voor gebruikt. Dit kan inclusief wiki-markup en/of HTML.
- Save de pagina.
Nu, waar dan ook je de naam van je sjabloon in dubbele accolades (b.v. {{Mayflower Passenger}}) plaatst, datgeen wat je in het sjabloon hebt gestopt, zal verschijnen.
Een Template met Variabelen maken
Sommige templates zijn ingewikkelder; ze hebben een gemeenschappelijk uiterlijk, maar verschillen op basis van specificaties die zijn ingevoerd wanneer de sjabloon wordt aangeroepen. Een voorbeeld is Template:Migrating Ancestor. Het ziet er altijd min of meer hetzelfde uit, maar de plaatsnamen en vlagafbeeldingen veranderen afhankelijk van wat bij het profiel past. Die template wordt gebruikt in een profiel met behulp van een code als deze:
- {{Migrating Ancestor
- | origin = France
- | destination = Canada
- | origin-flag = Flags.png
- | destination-flag = Flags-1.png
- }}
Het maken van templates met variabelen is vergelijkbaar met het maken van een basistemplate. Het enige verschil is dat waar je een variabele wilt, je de naam van de variabele in drievoudige accolades plaatst. In de template Migrating Ancestor bijvoorbeeld wordt {{{origin}}} geplaatst op de plaats waar de origin (oorsprong) is genoemd. Het fungeert als een tijdelijke aanduiding voor wat er na origin= komt wanneer de sjabloon wordt aangeroepen.
WikiTree Variabelen in Templates
De volgende variabelen voor WikiTree-databasevelden kunnen in een sjabloon worden opgenomen:
- Prefix: {{#profile:Prefix}}
- Preferred First Name: {{#profile:RealName}}
- MiddleInitial: {{#profile:MiddleInitial}}
- Last Name at Birth: {{#profile:LastNameAtBirth}}
- Current Last Name: {{#profile:LastNameCurrent}}
- Suffix: {{#profile:Suffix}}
- BirthDateDecade: {{#profile:BirthDateDecade}}
- DeathDateDecade: {{#profile:DeathDateDecade}}
Hierdoor kun je iets zeggen als "Joe spreekt Frans" in plaats van "Deze gebruiker spreekt Frans".
Als je een volledige naam wilt, kunt je Template:Name gebruiken d.w.z. {{Name}} als een template-in-een-template (zie hieronder.) Het combineert de volgende namenvelden in één reeks. Er is een voorwaarde ingebouwd, zodat Last Name at Birth alleen verschijnt als deze verschilt van de Current Last Name.
- {{#profile:RealName}} ({{#profile:LastNameAtBirth}}) {{#profile:LastNameCurrent}} {{#profile:Suffix}}
Een Template gebruiken binnen een Template
Hier begint het een beetje ingewikkeld te worden. Binnen een Template kan een andere Template worden opgeroepen. Alle project boxes zijn hiervan voorbeelden. Ze worden allemaal Template:Project Box genoemd. De reden hiervoor is dat de projectboxen allemaal hetzelfde moeten zijn. Dus als we veranderen hoe één van hen eruit ziet, willen we dat ze allemaal veranderen. Dat wordt mogelijk gemaakt door het feit dat ze allemaal voortbouwen op een gemeenschappelijke Template die, wanneer deze wordt gewijzigd, ze allemaal wijzigen.
Zie Template:Project Box voor instructies voor het maken van een nieuwe projectbox.
Afbeeldingen voor Templates
Afbeeldingen die in Templates worden gebruikt worden meestal, als de Template voor een specifiek project wordt gemaakt, geüpload naar een projectpagina of naar een pagina met een verzameling verwante afbeeldingen (zoals vlaggen). Afbeeldingen die zijn bedoeld voor gebruik in Templates die niet ergens anders horen, kunnen worden geüpload naar Space:Template Image.
Basishandleiding Template Schrijven
Ik gebruik een persoonlijke "sandbox"-template om een Template idee te testen voordat ik de definitieve template maak. Kies een unieke naam die duidelijk maakt dat het jouw sandbox is. Ik koos RolandDev voor de mijne. Voor de rest van de zelfstudie gebruik ik HelloWorld, maar je moet dat vervangen door de naam van je persoonlijke "template ontwikkelings sandbox".
Hello, World!
- Maak je eigen template-pagina. Typ in de adresbalk van je browser www.wikitree.com/wiki/Template:NaamVanJeSandboxKomtHier. Als je op Enter drukt, ga je naar een pagina die begint met "There is currently no text in this page...". . (Als je iets anders krijgt, hebt je mogelijk een naam gekozen die al in gebruik is, probeer het opnieuw met een andere naam.) Klik op de link Edit om je Template te gaan maken.
- Type in het bewerkingsveld "Hello, World!" (zonder de aanhalingstekens). Bewaar die pagina.
- In een wiki-pagina, zoals je Profiel of een Space: -pagina, kun je wiki-dingen testen, probeer de Template uit door de naam in een dubbel paar accolades in te voegen.
In de bewerkings pagina:
- {{HelloWorld}}
Resultaat:
Hello, World!
- Gefeliciteerd, je hebt je eerste template geschreven!
Meer specifiek zijn
De mogelijkheid om extra informatie te specificeren bij het gebruik van een sjabloon, is wat hen krachtig maakt. Dergelijke extra informatie wordt opgegeven wanneer een sjabloon wordt gebruikt door een pipe-teken, "|" toe te voegen achter de sjabloonnaam, gevolgd door die informatie, meestal een argument of een parameter genoemd.
- Pas je Template aan om een parameter te accepteren. Bewerk je template, verander "World" in "{{{1}}}". De drievoudige accolades geven aan waar de parameter moet worden ingevoegd, en de 1 geeft aan dat de eerste parameter daar naartoe gaat. Pas ook de pagina aan waar je de sjabloon gebruikt en voeg |Bob toe na de sjabloonnaam, maar binnen de dubbele accolades.
Template Bron:
- Hello, {{{1}}}!
Template gebruik:
- {{HelloWorld|Bob}}
Resultaat:
Hello, Bob!
- Wat gebeurt er als je geen parameter opgeeft? Probeer de parameter te verwijderen waar je de sjabloon gebruikt.
Template gebruik:
- {{HelloWorld}}
Resultaat:
Hello, {{{1}}}!
Dit is waarschijnlijk geen Template dat we zouden willen gebruiken zonder een parameter op te geven. In dit geval is dit een vereiste parameter. We kunnen een parameter optioneel maken door een standaardwaarde op te geven.
- Bewerk de Template bron om "World" als standaard toe te voegen als er geen parameter is opgegeven.
Template Bron:
- Hello, {{{1|World}}}!
Template gebruik:
- {{HelloWorld}}
- {{HelloWorld|Bob}}
Resultaat:
Hello, World!
Hello, Bob!
Regelen WAT er verschijnt
Wanneer pagina A wordt opgeroepen als een Template (dat wil zeggen met behulp van accolades {{}}) van pagina B toont het systeem de inhoud van pagina A ter plekke op pagina B waar de oproep wordt gedaan, dit is een vorm van insluiting die bekend staat als Transclusion (Invoegen) (de andere vorm van insluiting is Substitution (Vervanging).) Standaard wordt de volledige inhoud van pagina A ingevoegd, maar dit is zelden wenselijk. Om te bepalen welk gedeelte van pagina A wordt weergegeven op pagina B, kunt je 'inclusion-tags' gebruiken op pagina A om de inhoud te markeren die moet worden opgenomen.
Er zijn drie insluitingstags beschikbaar:
- <onlyinclude> wat betekent: toon deze inhoud op deze pagina en toon ALLEEN deze inhoud op andere pagina's.
- <includeonly> wat betekent: toon deze inhoud op andere pagina's maar NIET op deze pagina.
- <noinclude> wat betekent: toon deze inhoud op deze pagina, maar NIET op andere pagina's.
Er moet aandacht worden besteed aan de uitleg dat <onlyinclude> de pagina vertelt om ALLEEN de gemarkeerde inhoud te tonen, een belangrijk verschil tussen deze tag en de <includeonly> tag. Met de <includeonly> tag wordt alle inhoud buiten de tag ook ingevoegd tenzij deze is gemarkeerd met <noinclude> hieraan moet aandacht worden besteed omdat het onbedoelde witruimte en regeleinden in de weergegeven inhoud kan veroorzaken.
Tijdens het gebruik kan <onlyinclude> eenvoudiger zijn omdat hiervoor geen aparte markering van de inhoud met <noinclude> nodig is en zorgt ervoor dat alles buiten de tags niet wordt opgenomen, elke dynamische inhoud (dat wil zeggen alles op basis van parameters) leeg wordt weergegeven, of met standaardtekst, die niet representeert hoe de ingevoegde inhoud zou moeten verschijnen bij gebruik en daarom verwarrend kan zijn. Het is daarom meestal raadzaam om de <includeonly> en <noinclude> tags te gebruiken.
This page was last modified 17:43, 30 March 2022. This page has been accessed 970 times.