Wikia


Je kan de globale JavaScript functie importArticles() gebruiken om bijkomende JavaScripts of CSS stijlen toe te voegen die niet standaard op de wiki aanwezig zijn. De functie werkt met zowel lokale pagina's (zoals "MediaWiki:Wikia.css") als externe pagina's (zoals "w:c:dev:Externe_javascript.js" - zie Help:Interwiki link voor meer info). Als je deze methode gebruikt zal alles worden samengevoegd in één enkele request naar de server. Dit zorgt voor een verbeterde snelheid. Het resultaat zal ook worden geminifieerd om de snelheid nog te verbeteren.

Waarschuwing Waarschuwing!

Deze methode is enkel beschikbaar nadat je wiki is geüpdatet naar MediaWiki versie 1.19.1! Controleer Speciaal:Softwareversie om te zien welke versie je wiki heeft.

Gebruik Edit

De importArticles() methode verwacht een aantal modules (JavaScript objecten met meerdere key en value paren) met definities om de correcte pagina's te laden. De volgende dingen zijn nodig in elke module:

  • type - Het type van pagina's dat moet worden geladen. De ondersteunde waardes zijn:
  • script - Voor pagina's met JavaScript
  • style - Voor pagina's met CSS
  • articles - De pagina's om te importeren. Zie de sectie over pagina's vinden onderaan.

Pagina's vinden Edit

Om snel pagina's te kunnen vinden, gebruiken we een speciale syntax. Deze syntax is gelijkaardig (en compatibel) met deze van interwiki links:

(Voorzetsel:[WikiNaam]:)[Pagina]

Alles binnen de ronde haakjes is optioneel, en alles in de rechte haakjes moet vervangen worden door je eigen tekst. De dubbele punten worden gebruikt om de tekst op te delen in verschillende stukken tijdens het evalueren. Het voorzetsel bepaalt hoe je de pagina wil vinden, en worden meestal voor de naam van een externe wiki geplaatst.

Lokale pagina's Edit

Voor pagina's op dezelfde wiki kan je gewoon de naam van de pagina gebruiken zoals altijd. Er is geen voorzetsel nodig, maar je kan eventueel het voorzetsel "local" (of gewoon "l") gebruiken. Bijvoorbeeld, voor de pagina MediaWiki:Wikia.css heb je deze mogelijkheden:

MediaWiki:Wikia.css
l:MediaWiki:Wikia.css
local:MediaWiki:Wikia.css

Externe pagina's Edit

Pagina's op externe wiki's kunnen ook worden toegevoegd op dezelfde manier waarop je er een link naar plaatst. Natuurlijk is hier het voorvoegsel en de wiki naam nodig om de juiste wiki te kunnen vinden. Op dit moment zijn er drie mogelijkheden om een wiki te definieren: via de interwiki naam, database naam en URL.

De interwiki naam is het zelfde als gewoonlijk. Deze methode is beschikbaar vanaf Woensdag 5 september 2012.

w:c:[WikiNaam]:[Pagina]

De database naam heeft het voorzetsel "external:" en wordt gevolgd door de naam van de database van de wiki. Je kan ook de voorzetsels "remote:" en "w:" (geen "c:"!) gebruiken:

w:[DataBaseNaam]:[Pagina]
remote:[DataBaseNaam]:[Pagina]
external:[DataBaseNaam]:[Pagina]

De naam van de database is vaak hetzelfde als de wikinaam bij Engelstalige wiki's, maar bij andere talen kan het verschillen (bv. de database van de hulp wiki is "nlhelp", niet "hulp").

Ten slotte is er de url. Deze gebruikt het voorzetsel "url" (of "u:"):

u:[WikiURL]:[Pagina]
url:[WikiUrl]:[Pagina]

Bijvoorbeeld, om de pagina MediaWiki:Wikia.css te laden van de hulp wiki, heb je al deze mogelijkheden:

w:c:hulp:MediaWiki:Wikia.css
w:nlhelp:MediaWiki:Wikia.css
remote:nlhelp:MediaWiki:Wikia.css
external:nlhelp:MediaWiki:Wikia.css
u:hulp:MediaWiki:Wikia.css
u:hulp.wikia.com:MediaWiki:Wikia.css
url:hulp:MediaWiki:Wikia.css
url:hulp.wikia.com:MediaWiki:Wikia.css

Geavanceerd gebruik Edit

importArticles() is voornamelijk een functie om de correcte URL te genereren voor de geïmporteerde scripts en stijlen. Het is echter mogelijk om de URL zelf manueel te gebruiken.

De hoofdstructuur ziet er als volgt uit:

/load.php?=debug=false&lang=en&mode=articles&skin=oasis&missingCallback=importArticleMissing&articles=File1.js|File2.js&only=scripts

De nieuwe MediaWiki ResourceLoader is erg complex en ondersteunt nog meer parameters, maar deze parameters moet je zeker hebben:

Parameter naam Parameter waarde
mode "articles" - Dit vertelt de ResourceLoader om de pagina's te laden en samen te voegen.
articles De lijst van pagina's, gescheiden door | karakters.
only "scripts" of "styles"
debug "true" of "false" - "true" zet de minificatie uit.

Om de URL te gebruiken in CSS kan je een @import gebruiken:

@import url("/load.php?articles=Stijl1.css|Stijl2.css&only=styles");

Voor JavaScript kan je de jQuery.getScript functie gebruiken:

jQuery.getScript('/load.php?mode=articles&articles=Script1.js|Script2.js&only=scripts', function () {
    console.log('Script1 en Script2 zijn gereed.');
});

Voorbeelden Edit

Om een aantal JavaScript pagina's te importeren zal je code er ongeveer zo uit zien:

importArticles({
    type: "script",
    articles: [
        "MediaWiki:MijnNieuweJavaScript.js"
        "w:c:dev:MediaWiki:Externe_javascript.js"
    ]
});

Voor CSS zal het dan ongeveer zo zijn:

importArticles({
    type: "style",
    articles: [
        "MediaWiki:MijnNieuweStijl.css"
        "w:c:dev:MediaWiki:MooieStijlen.css"
    ]
});


Waarschuwing Waarschuwing!

Je kan maar 1 type per importArticles gebruiken. Om zowel JavaScript als CSS te importeren heb je dus 2 importArticles nodig!

Alternatieve syntax Edit

Als je maar 1 bestand nodig hebt, kan je ook deze kortere manier gebruiken:

importArticle({
    type: "style",
    article: "MediaWiki:MijnNieuweStijl.css"
});
Community content is available under CC-BY-SA unless otherwise noted.