Help:Sjablonen: verschil tussen versies
k (update echter nog in bewerking !) |
k (update en in bewerking) |
||
Regel 30: | Regel 30: | ||
Sjablonen kunnen op andere pagina's op verschillende manieren worden gebruikt: | Sjablonen kunnen op andere pagina's op verschillende manieren worden gebruikt: | ||
− | *<code><nowiki>{{Naam}}</nowiki></code>, zoals boven omschreven, 'bevat' | + | *<code><nowiki>{{Naam}}</nowiki></code>, zoals boven omschreven, 'bevat' het sjabloon inhoud zoals opgeslagen in de pagina <nowiki>[[Sjabloon:Naam]]</nowiki>)wanneer de pagina met het sjabloon wordt opgehaald en weergegeven. Dit betekent tevens dat als het sjabloon later gewijzigd wordt, de vernieuwde inhoud van de "ingesloten" pagina eveneens automatisch gewijzigd zal worden. Dit kan voordelen hebben echter niet als de pagina waar de sjabloon inhoud is opgeslagen niet gewijzigd mag worden met deze vernieuwde inhoud. Bijv. bij sjablonen met voorbeelden van wiki artikel-pagina's. |
− | - | ||
− | |||
− | *<code><nowiki>{{subst:Naam}}</nowiki></code> | + | *<code><nowiki>{{subst:Naam}}</nowiki></code>plaatst die string met de inhoud van het sjabloon in de bron van de ingesloten pagina Bij het opslaan van deze pagina kan daarna de sjabloon-inhoud normaal gewijzigd worden (edit) los van de inhoud van het oorspronkelijke Sjabloon. |
− | |||
− | |||
− | + | ---- | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | === Controle sjabloon inclusion (insluiten) === | |
− | + | Standaard wordt de gehele inhoud van een sjabloon verwerkt en weergegeven zowel wanneer de sjabloon pagina rechtstreeks bekeken wordt als wanneer het sjabloon opgenomen wordt in een andere pagina. U kunt echter dit opnemen beheersen door het gebruik van <code><nowiki><noinclude></nowiki></code> and | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<code><nowiki><includeonly></nowiki></code> tags. | <code><nowiki><includeonly></nowiki></code> tags. | ||
− | + | Alles tussen <code><nowiki><noinclude></nowiki></code> en <code><nowiki></noinclude></nowiki></code> zal getoond worden als de sjabloon pagina "direct" bekeken wordt en niet getoond wanneer het niet ingesloten is in een andere pagina. De bedoeling van deze toepassing is om dingen aan de sjabloon pagina te doen die niet hetzelfde zijn als in een andere pagina waarvan de sjablooninhoud ingesloten wordt: | |
− | + | * [[Help:Categories|Categorising]] the template. ''(in bewerking - volgt)'' | |
− | * [[Help:Categories|Categorising]] the template. | + | * Het plaatsen van het sjabloon in vergelijkbare sjablonen zoals toegepast in [[Sjabloon:Grootspoorstoomloc|Sjabloon Grootspoorstoomloc]] waarin "opgesloten" 4 (vier) sjablonen; |
− | * | + | ** [[Sjabloon:Infobox:Grootspoorsjabloon]] |
− | * | + | ** [[Sjabloon:Stoomlocspec]] |
+ | ** [[Sjabloon:Stoomlockopjes]] | ||
+ | ** [[Sjabloon:Foto galerij]] | ||
− | + | * Specifieke tekst voor gebruik van het sjabloon.. | |
* [[Help:Categories|Categorising]] only the pages where the template is included. Note that when you change the categories applied by a template in this fashion, the categorization of all the pages where that template is included may not be updated until some time later: this is handled by the {{mediawiki|Manual:Job queue|job queue}}. To force the re-categorisation of a particular page, open the page for edit and save it without changes. | * [[Help:Categories|Categorising]] only the pages where the template is included. Note that when you change the categories applied by a template in this fashion, the categorization of all the pages where that template is included may not be updated until some time later: this is handled by the {{mediawiki|Manual:Job queue|job queue}}. To force the re-categorisation of a particular page, open the page for edit and save it without changes. |
Versie van 5 mei 2012 10:34
Dit is een copy/paste artikel van MediaWiki (Engelse versie)
In Bewerking ! |
---|
Als je standaard teksten hebt die je wilt opnemen op meerdere pagina's, kun je de wiki-sjabloon-functie gebruiken.
Aanmaken
Sjablonen zijn standaard wiki-pagina's waarvan de inhoud voorzien is van tekst en afbeeldingen welke je kunt insluiten in andere pagina's. Dit kan zowel een nieuwe pagina als een bestaande pagina zijn. Sjablonen zijn in een specifieke categorie te vinden "Sjablonen:"Sjabloon:"Naam"
".
Het simpelste gebruik van sjablonen is als volgt. Als u een pagina met de naam "Sjabloon: Welkom" met inhoud aanmaakt:
Hallo! Welkom op de wiki.
heb je je eerste sjabloon aangemaakt! Als u vervolgens de code: {{Welkom}}
op een andere pagina gebruikt, zal wanneer op die pagina de tekst wordt bekeken "Hallo! Welkom op de wiki." te zien zijn in plaats van {{Welkom}}
. De sjabloon inhoud is "ingesloten" in de andere pagina, dat wil zeggen deze is geïntegreerd in de pagina.
U kunt vervolgens {{Welkom}}
op elk punt van elke pagina waar u wilt iemand verwelkomen. Stel dat het wordt gebruikt in 100 pagina's en u daarna de sjabloon inhoud verandert in:
Hallo Iedereen! Welkom bij deze prachtige 3rail-Wiki.
en vervolgens opnieuw een van de 100 pagina's bekijkt waarin de sjabloon werd gebruikt, ziet u de nieuwe tekst in plaats van de oorspronkelijke. Op deze manier heb je de inhoud van 100 pagina's veranderd, zonder ze te bewerken, omdat de sjabloon ingesloten wordt in deze pagina's.
Dit is de basis functie. Er zijn verschillende extra functies voor sjablonen om deze functie uit te breiden en maakt daardoor sjablonen zeer nuttig.
Gebruik van sjablonen
Sjablonen kunnen op andere pagina's op verschillende manieren worden gebruikt:
{{Naam}}
, zoals boven omschreven, 'bevat' het sjabloon inhoud zoals opgeslagen in de pagina [[Sjabloon:Naam]])wanneer de pagina met het sjabloon wordt opgehaald en weergegeven. Dit betekent tevens dat als het sjabloon later gewijzigd wordt, de vernieuwde inhoud van de "ingesloten" pagina eveneens automatisch gewijzigd zal worden. Dit kan voordelen hebben echter niet als de pagina waar de sjabloon inhoud is opgeslagen niet gewijzigd mag worden met deze vernieuwde inhoud. Bijv. bij sjablonen met voorbeelden van wiki artikel-pagina's.
{{subst:Naam}}
plaatst die string met de inhoud van het sjabloon in de bron van de ingesloten pagina Bij het opslaan van deze pagina kan daarna de sjabloon-inhoud normaal gewijzigd worden (edit) los van de inhoud van het oorspronkelijke Sjabloon.
Controle sjabloon inclusion (insluiten)
Standaard wordt de gehele inhoud van een sjabloon verwerkt en weergegeven zowel wanneer de sjabloon pagina rechtstreeks bekeken wordt als wanneer het sjabloon opgenomen wordt in een andere pagina. U kunt echter dit opnemen beheersen door het gebruik van <noinclude>
and
<includeonly>
tags.
Alles tussen <noinclude>
en </noinclude>
zal getoond worden als de sjabloon pagina "direct" bekeken wordt en niet getoond wanneer het niet ingesloten is in een andere pagina. De bedoeling van deze toepassing is om dingen aan de sjabloon pagina te doen die niet hetzelfde zijn als in een andere pagina waarvan de sjablooninhoud ingesloten wordt:
- Categorising the template. (in bewerking - volgt)
- Het plaatsen van het sjabloon in vergelijkbare sjablonen zoals toegepast in Sjabloon Grootspoorstoomloc waarin "opgesloten" 4 (vier) sjablonen;
- Specifieke tekst voor gebruik van het sjabloon..
- Categorising only the pages where the template is included. Note that when you change the categories applied by a template in this fashion, the categorization of all the pages where that template is included may not be updated until some time later: this is handled by the Sjabloon:Mediawiki. To force the re-categorisation of a particular page, open the page for edit and save it without changes.
- Ensuring that the template's code is not executed when viewing the template page itself. Normally this is because it isn't receiving any parameters and its execution without parameters has an undesired aspect.
Of course, everything outside <noinclude>
and
<includeonly>
tags is processed and displayed both when the template page is being viewed directly and when the template is being included in another page.
Organizing templates
For templates to be effective, users need to find them, and find out how to use them.
To find them, users can:
- Click Special Pages > All Pages
- In the Namespace list, choose Template and click Go.
To give usage information, include an example like this one on the template page:
<noinclude> == Usage == Welcome users: {{Thankyou|reason=your reason|signature=your signature}} </noinclude>
Then, an editor can simply copy and paste the example to use the template.
Copying from one wiki to another
Templates often require CSS or other templates, so users frequently have trouble copying templates from one wiki to another. The steps below should work for most templates.
MediaWiki code
If you have import rights on the new wiki:
- Go to Special:Export on the original wiki, and download an .xml file with the complete history of all necessary templates, as follows:
- Enter the name of the template in the big text box.
- Check the box "Include templates".
- Uncheck the box "Include only the current revision".
- Click Export.
- Go to Special:Import on the new wiki and upload the .xml file.
If you don't have import rights on the new wiki:
- Go to Special:Export on the original wiki, and download an .xml file with the latest version only of all necessary templates, as follows:
- Enter the name of the template in the big text box.
- Check the box "Include templates".
- Check the box "Include only the current revision".
- Click Export.
- Open the file in a text editor and manually copy the text inside the
<text>
tag of each listed template into a similarly named template in your wiki. In the edit summary of each template, link to the original page for attribution.
This will copy the entire code necessary, and will suffice for some templates.
Extensions
An extension often used in templates is ParserFunctions. Visit page Sjabloon:Mediawiki and check if any of the functions listed there are used in the templates you've copied. If so, you have to install the Sjabloon:Mediawiki. To install it, you'll need system admin access to the server of your MediaWiki instalation.
CSS and JavaScript code
Besides MediaWiki code, many templates make use of CSS and some rely on JavaScript to work fully. If the copied templates are not behaving as expected, this may be the cause. To copy the required CSS and JavaScript to your wiki you'll normally need to have admin priviledges, because you'll be editing system messages in the "MediaWiki:" namespace.
- Look for the use of CSS classes (text like
class="foobar"
) in the template text. If those classes appear in "MediaWiki:Common.css" or "MediaWiki:Monobook.css" on the original wiki, copy them to "MediaWiki:Common.css" on the new wiki and check if the template is now fine. - If the copied template is still not working as expected, check if there is code in "MediaWiki:Common.js" or "MediaWiki:Monobook.js" on the original wiki. If so, you can try copying it to "MediaWiki:Common.js" on the new wiki. Normally, it is a good idea to only copy code from trusted sources, and first browsing the code to identify and select the parts that seem relevant. You may find comments that can serve as clues to identify the functionality of each part. When in doubt, copy all the code to the new wiki.
Specifying parameter defaults
Very often you will see parameters in this form:
{{{A template parameter|}}}
The pipe character "|" is the delimiter for a default value in the parameter. In the example above, it is empty, so the default would be an empty string if no value were passed from the template to the parameter. Of course, you may define a default like this:
{{{A template parameter|with a default value}}}
The string "with a default value" is the default value of the parameter if it is not set elsewhere.
See also
- Help:External searches – a template special use case example
- Help:Magic words – fancy stuff you may find in some templates
- Help:Parser functions in templates
- Sjabloon:Meta – contains a much more thorough manual on how exactly templates function
- Sjabloon:Meta – embedding pages from namespaces other than
Template:
.