Sjablonen op noraonline
De pagina's in de NORA-wiki zijn opgebouwd uit tekst en code, die bijvoorbeeld de opmaak bepaalt, verwijzingen doorklikbaar maakt, afbeeldingen toevoegt en semantische eigenschappen van pagina's vastlegt of opvraagt (in lijsten en tabellen). Bepaalde code komt regelmatig terug, zoals het weergeven van een pdf-bestand, het plaatsen van een kader om een tekst heen, of het vastleggen van een actiepunt in vergaderingen. Voor dat soort toepassingen maken we daarom Sjablonen: een vast stukje code dat je door de naam van het sjabloon aan te roepen in de pagina plakt.
Waarom sjablonen?bewerken
Er zijn verschillende redenen om sjablonen te gebruiken, in plaats van een los stukje code:
- De code is te complex voor de gewone gebruiker, maar kan nu wel breed worden toegepast
- De weergave van bepaalde onderdelen moet hetzelfde zijn bij verschillende pagina's (consistentie)
- De code komt vaak voor en je maakt gemakkelijk een typefout als je het opnieuw in moet typen
- Je wilt iets op verschillende plekken gebruiken, maar wel zeker zijn dat wijzigingen op al die plekken gelijk verwerkt worden
In het algemeen zijn er drie soorten sjablonen:
- Sjablonen die de opmaak van informatie regelen
- Sjablonen die een specifieke tekst, eigenschap, categorie of combinatie daarvan toevoegen op meerdere pagina's of plekken
- Sjablonen die complexere zaken mogelijk maken
Inhoudelijke bewerkers van de wiki zullen vrijwel alleen de eerste twee gebruiken. Wil je iets dat ingewikkelder is, neem dan contact op met NORA Beheer.
Sjablonen vindenbewerken
Als je een pagina bewerkt (met bewerken of bij gestructureerde pagina bron bewerken) zie je onder de pagina een lijstje met de sjablonen die in gebruik zijn. Als je hierop klikt kom je op de pagina van het sjabloon zelf, waar het als het goed is wordt uitgelegd.
De Veelgebruikte en Aanbevolen Sjablonen op noraonline zijn sjablonen die we vanuit NORA Beheer aanbevelen voor gebruik in de NORA wiki. Een overzicht van alle beschikbare sjablonen staat op Speciaal:Sjablonen.
Sjablonen bekijken en leren gebruikenbewerken
Elk sjabloon heeft een eigen wiki-pagina met als naam Sjabloon:Naam van het sjabloon. Je kunt hier komen door de naam in te voegen in de zoekfunctie, of door op een sjabloon te klikken onder een pagina (in het tabblad bewerken).
Op de pagina van het sjabloon zie je de uitleg die de maker van het sjabloon heeft meegegeven. Kom je er met die uitleg nog niet uit, of wil je het effect zien van het sjabloon, zweef dan met je muis in het menu rechtsboven in beeld boven Tools en kies in het uitrolmenu de optie Koppelingen naar deze pagina.
Je krijgt dan een lijst te zien van alle plaatsen waar het sjabloon wordt toegepast. Klik door en bekijk de voorbeelden.
Heb je meer ondersteuning nodig, neem dan even contact op met het NORA Beheer team.
Bestaande sjablonen gebruiken en variabelen invoerenbewerken
Een sjabloon roep je in de code van je pagina aan door de volledige naam te plaatsen tussen
{{ }} . Voor de meest simpele sjablonen is dat genoeg, zo vertoont het Sjabloon:Sandbox bijvoorbeeld een kader met daarin een waarschuwing dat de pagina deel uitmaakt van de sandbox van NORA en de inhoud wellicht niet correct is. Je gebruikt daarvoor de code
{{Sandbox}}. Omdat je wilt dat het kader bovenaan de pagina staat is dat ook de plek waar je het sjabloon invoegt.
Voor veel sjablonen is een simpel aanroepen niet genoeg, maar moet je nog aangeven welke variabelen (parameters) het sjabloon in moet vullen, waar het iets mee moet doen. Als je bijvoorbeeld zelf een kader wilt maken zoals de sandbox doet, maar met je eigen tekst (sjabloon:Uitgelicht), dan moet je aangeven welke tekst je in het kader wilt zetten. En als je met het sjabloon:Bestand met info een pdf-bestand wilt toevoegen aan je pagina moet het sjabloon weten welk bestand. Elke variabele die je toe voegt scheid je van de naam met een | (rechtsboven op je toetsenbord, links naast de backspace):
{{Naam sjabloon|variabele 1|variabele 2}} Voor onze twee voorbeelden is dit dus:
{{Bestand met info|Bestandsnaam.pdf}} {{Uitgelicht|Tekst die in uitgelicht geplaatst moet worden. Eventueel meerdere regels (kan ook alinea's en opmaak bevatten).}} Dat laatste levert op:
Voeg je geen tekst toe om in het kader te plaatsen, dan krijg je geen kader. Maar niet alle variabelen hoeven altijd toegevoegd te worden om een sjabloon te laten werken. Het sjabloon Bestand met info vereist een bestandsnaam, maar het heeft ook een optionele variabele: je kunt een alternatieve tekst geven om weer te geven. We nemen als voorbeeld het Jaarplan van de NORA voor 2016. De bestandsnaam van het jaarplan is Jaarplan NORA 2016 Definitief.pdf. De code wordt dus
{{Bestand met info|Jaarplan NORA 2016 Definitief.pdf}}met als effect: Jaarplan NORA 2016 Definitief.pdf (PDF, 685 kB) Dat is echter niet heel mooi: de extensie .pdf wordt zo dubbel weergegeven en het woord Definitief is in dit voorbeeld niet nodig (we hebben geen concepten geplaatst). We geven dus een alternatieve tekst op om weer te geven
{{Bestand met info|Jaarplan NORA 2016 Definitief.pdf|Jaarplan 2016}}met als effect:Jaarplan 2016 (PDF, 685 kB) Meerdere variabelen voeg je dus achter elkaar toe, telkens gescheiden door een |. De volgorde is hierbij van belang, je moet dezelfde volgorde aanhouden als de maker van het sjabloon. De code
{{Bestand met info|Jaarplan 2016|Jaarplan NORA 2016 Definitief.pdf}}werkt dus niet.
Sjablonen gebruiken waarbij variabelen een naam hebbenbewerken
Sjablonen waar je meer dan twee variabelen voor in kunt vullen zijn complexer in gebruik: je haalt zo de volgorde door elkaar en in de code zie je niet altijd direct wat de verschillende variabelen betekenen. Meestal krijgen variabelen in zo'n geval daarom elk een naam, die je gebruikt bij het invoeren en waardoor de wiki altijd weet welke variabele wat betekent, ook als je de volgorde verandert. Een voorbeeld is het sjabloon Afbeelding, dat je gebruikt om een afbeelding te tonen.
Je roept het sjabloon aan op de plek waar je de afbeelding weer wilt geven, net zoals bij andere sjablonen. Je scheidt de verschillende variabelen met de gebruikelijke |, maar nu zet je de naam van de variabele er voor met een =teken. Om het overzicht niet kwijt te raken kan het handig zijn om elke | op een nieuwe regel te plaatsen: dat verandert niets aan de uitvoering van het sjabloon, maar maakt het gemakkelijker later een eigenschap terug te vinden of te wijzigen.
{{Afbeelding
|bestand=Bestandsnaam.ext
|breedte=500px
|uitlijning=links/midden/rechts
}}Hierbij moet je achter het = teken je eigen waarden invullen: De bestandsnaam, het aantal pixels en je keuze uit links, midden of rechts voor de uitlijning. Ook hier zijn niet alle variabelen verplicht: als je alleen de bestandsnaam invoert krijg je de afbeelding te zien in de standaardbreedte en uitlijning. Het Sjabloon:Afbeelding kent nog meer mogelijke variabelen dan hierboven getoond, die je in kunt vullen. Dat zou onhandig zijn als je alleen de volgorde had om de variabelen te onderscheiden: welke variabele moet je leeg houden als je die niet gebruikt? Maar omdat ze elk een naam hebben weet je precies wat je weg kunt laten.
Welke variabelen beschikbaar zijn, wat er verplicht is en of je alle waarden in mag vullen of moet kiezen uit bepaalde opties (zoals links/midden/rechts) lees je altijd terug op de pagina van het sjabloon.
Sjabloon Element en opmaaksjablonen per elementtypebewerken
De wiki gebruikt een bijzondere vorm van een sjabloon om te bepalen dat een pagina een bepaald elementtype is: het sjabloon Element. De pagina krijgt hiermee een invoerformulier mee. Het elementtype dat gekozen wordt bepaalt welke eigenschappen ingevuld kunnen worden in het invoerformulier.
We noemen pagina's met het speciale sjabloon Element ook wel:
- gestructureerde pagina's,
- of elementen,
- of pagina's met een vast format en invoerformulier,
- of pagina's van een bepaald elementtype.
Je mag dit sjabloon niet zomaar zelf toevoegen aan een pagina, dan kunnen er achter de schermen zaken mis gaan. Maak een pagina van een bepaald elementtype altijd aan vanuit de pagina van dat elementtype. Zo maak je bijvoorbeeld een beleidskader aan via de pagina Beleidskader en een landingspagina via de pagina Landingspagina. Zie voor meer uitleg Nieuwe pagina aanmaken.
Je herkent het sjabloon Element aan de volgende code:
{{#element:Daaronder staan achter pijpjes een serie semantische eigenschappen, waaronder in ieder geval Paginanaam en Elementtype.
Er zijn ook speciale sjablonen die de opmaak bepalen van gestructureerde pagina's. Elk type gestructureerde pagina, of elementtype, heeft een eigen opmaaksjabloon. Elke pagina van dat type zal dus dezelfde eigenschappen tonen, in dezelfde volgorde en op dezelfde plek (voor zover ze zijn ingevuld natuurlijk). Je vindt het opmaaksjabloon van een elementtype op de pagina van het elementtype, vaak heeft het ook dezelfde naam als het elementtype. Zowel de elementtypes als de opmaaksjablonen kun je terug vinden in Overzicht van kennismodellen, zie Kennismodel voor meer uitleg.
Zelf een sjabloon makenbewerken
Als je zelf een sjabloon wilt maken dan mag dat, we nodigen je uitdrukkelijk uit om te experimenteren. Als je er niet uitkomt kun je altijd NORA Beheer vragen je verder te helpen.
Stappenplan maken van een sjabloon:
- Maak een nieuwe pagina aan waarvan de titel begint met "Sjabloon:" (sjablonen hebben een eigen naamruimte, de titel achter de dubbele punt is de naam van het sjabloon die je aanroept)
- Gebruik de tags noinclude en /noinclude om de uitleg van het sjabloon tussen te plaatsen (tip: kopieer de uitleg van een ander sjabloon en pas deze aan)
- Zorg dat je sjabloonuitleg vertelt waar het sjabloon voor bedoeld is, wat het moet doen en hoe je het gebruikt (tip: voorbeelden die je aan wilt geven kun je met de tag pre en /pre laten zien zonder dat de code wordt uitgevoerd)
- Zet onder de uitleg (en NA het sluiten van de noinclude) de code die het sjabloon moet uitvoeren. Alles wat je hier neerzet wordt zowel hier uitgevoerd als op de pagina's waar je het sjabloon oproept: Teksten en opmaak worden getoond, zoekopdrachten uitgevoerd, andere sjablonen aangeroepen en eigenschappen of categorieën geplaatst.
- Sla je sjabloon regelmatig op en test het uit door het aan te roepen op een andere pagina. (tip: je hoeft de pagina waar je test niet op te slaan om het resultaat van een verandering aan het sjabloon te zien, je kunt ook de knop Bewerking ter controle bekijken gebruiken, of een pagina die het sjabloon al aanroept te vernieuwen. Het is wel belangrijk dat de wijziging in de sjabloonpagina is opgeslagen, anders wordt een eerdere versie uitgevoerd.
- Zorg bij meer complexe sjablonen dat eerst je basis werkt, voor je verdere verdieping toevoegt. Plaats bijvoorbeeld eerst een kader met een standaardtekst en test die, voordat je een variabele toevoegt om het kader te laten vullen. Zo bespaar je jezelf een hoop frustratie omdat je bij fouten weet waar de fout ongeveer zit en die dus ook makkelijker herstelt. (Tip: gebruik bij onverwachte fouten in complexe sjablonen de zoekfunctie van je browser om te tellen of je evenveel haakjes, blokhaken en paragraafhaken opent als je sluit, een simpele mis-tik kan de code snel stuk laten gaan. LLM's zijn ook goed in het vinden van foutjes, als je uitlegt dat de code van een semantische mediawiki is, wat je er mee probeerde en wat er fout gaat.)
- Als je wilt dat je sjabloon een variabele gebruikt zonder naam kun je op de plek waar die variabele gebruikt moet worden de volgende code invoeren:
{{{1}}}Wat er achter het eerste pijpje ingevuld wordt bij het aanroepen van het sjabloon wordt dan een-op-een ingevoerd waar deze code staat. Je kunt die vervolgens gebruiken, bijvoorbeeld als paginatitel in een verwijzing (zet gewoon dubbele blokhaken om de paragraafhaken heen) maar ook als filter in een query of als invoer in een ander sjabloon. Bij meerdere variabelen zonder naam gebruik je het nummer (1, 2, 3 enzovoorts). Als je een naam geeft aan variabelen zet je waar je de variabele wilt gebruiken de naam van de variabele neer:{{{Naamvariabele}}}. (Tip: de namen van variabelen zijn hoofdlettergevoelig, controleer of je de zelfde naam gebruikt in je sjabloonuitleg en je sjabloon!) - Je kunt voorwaardelijke code gebruiken door parserfuncties te gebruiken als #if, #ifeq en #switch. Dat kan leiden tot complexe code, maar ook goede resultaten opleveren. Je kunt ook #ask en #show gebruiken als je semantische eigenschappen van deze of andere pagina's wilt gebruiken. (Tip: noraonline draait op Semantic WediaWiki, dat weer op het platform MediaWiki draait. Veel zaken die in MediaWiki werken doen dat ook in de semantisceh variant, maar niet allemaal. #expr lijkt bijvoorbeeld niet te werken. Zie https://www.mediawiki.org/wiki/Help:Extension:ParserFunctions voor uitleg over #if, #ifeq en #switch en https://www.semantic-mediawiki.org/wiki/Help:Inline_queries voor uitleg over semantische queries met #ask en #show.)
- Als je sjabloon werkt, check dan of er bijwerkingen aanzitten zoals dubbel gezette waarden voor variabelen (als je een waarde plaatst terwijl de pagina al een waarde heeft) en/of vervuilde lijsten of kruimelpaden (doordat je een categorie meegeeft die niet klopt). (Tip: categorieën en eigenschappen wil je meestal niet op de sjabloonpagina geplaatst hebben, want dat kan zoekopdrachten vervuilen. Gebruik de tags includeonly en /includeonly om daarbinnen zaken te zetten die ALLEEN uitgevoerd worden op de pagina waar je het sjabloon aanroept en niet op de sjabloonpagina zelf.)
29 december 2015 13:39:34
3 juli 2026 12:24:34
25
Informatief