Wikipedia:Wikiprojekti Mallineet/Linjaukset
Wikipedia
Projektin etusivu |
Mallineprojektin linjaukset ovat käytössä olevia ja tulevia käytäntöjä mallineiden luokitteluun, toteuttamiseen ja muihin projektin toimiin mallineiden parissa. Huomioithan että nämä ovat projektin omia, sisäisiä käytäntöjä eikä näihin tule vedota esimerkiksi poistotapauksissa Wikipedian käytäntönä.
Sisällysluettelo
|
[muokkaa] Luokittelu
Mallineiden luokittelu oli projektin ensimmäinen tärkeä tehtävä. Tämä tehtävä on pääosiltaan saatettu loppuun, mutta yhä on syytä seurata aika ajoittain luokittelemattomien mallineiden toimintosivua ja jatkaa luokittelemattomien mallineiden luokittelua.
Luokittelussa tulee huomioida seuraavat kohdat:
- Mallineluokka sijoitetaan aina <noinclude>[[Luokka:Mallineluokka|{{PAGENAME}}]]</noinclude>–muotoisena, ellei luokan aakkostuksen kannalta ole parempi käyttää {{PAGENAME}} tilalla kirjoitettua muotoa (kuten tapauksissa joissa mallineiden nimet alkaa numerolla)
- Mallineluokan nimessä tulee esiintyä sana "mallineet", ja luokan nimen tulee noudattaa suomen kielen kielioppia
- Navigaatiomallineiden luokkien tulee sisältää yllämainitun malline-sanan sijasta "navigaatiomallineet" (ei "Navigointimallineet")
- Mikäli malline luokittelee artikkeleita, tulee luokan sijaita <includeonly>[[Luokka:Artikkeliluokka]]</includeonly>–muotoisena tai ehtorakenteen sisällä siten että malline ei luokittele itseään artikkeliluokkaan
[muokkaa] Mallineiden luonti
Kun mallineita luodaan, on hyvä noudattaa joitakin vakiintuneita ja vakiintumassa olevia käytäntöjä.
[muokkaa] Yleisiä käytäntöjä
- Mikäli luodaan apumalline laskuoperaation suorittamiseksi, ei apumallineen tule muotoilla tulosta ja / tai lisätä tulokseen erikoismerkkejä (kuten %, €, £, $) sillä tämän kaltainen muotoilu tuhoaa käytön laskutoimituksissa (kuten #expr sisällä). Tämä muotoilu tulee suorittaa vasta tulostavassa päämallineessa MediaWikin sisäisellä funktiolla {{formatnum:<arvo>}}.
- Parametrit tulee pyrkiä kirjoittamaan alusta loppuun pienillä kirjaimilla
- Poikkeuksen tähän tekee lyhenteet (esimerkiksi NASA) sekä ohjelmallisesti ylläpidettävät mallineet (kuten {{Wikiprojektikohtainen luokittelu/tilastot}}), jolloin ohjelma pitää huolen merkkikoosta
- Mallineiden tulee olla suomen kielellä: mallineen nimi, parametrit sekä ulosanti tulee olla aina suomen kielellä. Poikkeuksen tähän tekee:
- copy-paste-paikat (kuten {{Cite web}}) joiden on tarkoitus estää kopiokäännöksenä toisesta kieliversiosta tuodun artikkelin täydellisen rikkoutumisen
- vakiintuneet anglismit (kuten {{Single}})
- mallineen osa-alueella yleisesti käytössä olevat vieraskieliset termit jotka suomeksi kirjoitettuna ovat huomattavasti pidempiä (vertaa {{Pyöristä alaspäin}} – {{Floor}})
- Näissäkin tapauksissa (mahdollisuuksien mukaan) mallineen tulisi mieluummin käyttää jo valmiiksi suomenkielistä, vastaavaa mallinetta sisäisesti. Mikäli malline ei kuulu edellä mainittuihin poikkeustapauksiin, tulee malline korjata tai lisätä mallineen yläosaan <noinclude>{{Korjattava/malline}}</noinclude>.
[muokkaa] Linkitys
Aivan kuin luodessasi uutta artikkelia, mieti mikä on wikilinkityksen kannalta olennaista tietoa. Älä linkitä jokaista sanaa. Myös vuosilukujen linkittäminen on yleensä turhaa. Esimerkki:
- Malline:Naisten 10 000 metrin juoksun maailmanmestarit - mallineessa on linkit voittajiin sekä otsikossa kyseessä olevaan lajiin, mutta ei naisiin, yleisurheilun MM-kilpailuihin yleensä, yksittäisiin kilpailuihin tai yksittäisiin vuosilukuihin.
[muokkaa] Mallineiden metatieto
Mallineen metatieto (kuvaus, käyttö, esimerkit, kieltenväliset linkit, luokat ym.) tulisi aina sijoittaa omalle sivulleen joka on muotoa Malline:Mallineen nimi/ohje. Lisätietoja mallineen metatietojen lisäämisestä {{Mallineohjeen}} avulla löydät mallineprojektin metatietosivulta.
[muokkaa] Toiminnalliset mallineet
Käytäntöjä toiminnallisten mallineiden (eli mallineiden jotka sisältävät parametreja) toteuttamiseen.
[muokkaa] Alaspäin yhteensopivuus
Mikäli laajalti käytössä olevan mallineen parametrien nimiä joutuu päivittämään, tulisi parametrit päivittää siten että ne olisi alaspäin yhteensopivia. Alaspäin yhteensopivuus toteutetaan ketjuttamalla uusi ja vanha parametri:
{{{uusi parametri|{{{vanha parametri}}}}}}
Tällöin malline ei hajoa vanhaa parametria käyttävissä artikkeleissa, ja artikkelipäivityksille jää enemmän aikaa.
[muokkaa] Artikkeliluokan ehdollistaminen
Kun on tiedossa että malline ei saa luokitella niin kutsuttuun artikkeliluokkaan kuin tietyssä nimiavaruudessa sijaitsevat sivut jotka mallinetta käyttää, voidaan käyttää seuraavaa koodia:
<includeonly>{{#ifeq: {{NAMESPACE}} | {{ns:0}} | [[Luokka:Artikkeliluokka]] }}</includeonly>
{{ns:0}} kohdalla voidaan käyttää MediaWikin vakionimiavaruuksia (katso lista vakionimiavaruuksista m:Help:Namespace#List of namespaces) tai nimiavaruutta {{ns:100}} = Teemasivu, {{ns:101}} = Keskustelu_teemasivusta, {{ns:102}} = Metasivu tai {{ns:103}} = Keskustelu_metasivusta.
[muokkaa] Ehtolauseessa parametrien ketjuttaminen
Tavallisesti parametrit tulostettaessa ketjutetaan muodossa {{{parametri|{{{parametri2|{{{parametri3}}}}}}}}}, mutta tätä tyyliä ei tulisi käyttää ehtolauseissa (kuten #if ja #ifeq). Kun ehtolauseen halutaan toteutuvan kun vähintään yksi tietyistä parametreista on asetettu erisuureksi kuin tyhjä, tulee käyttää muotoa
{{#if: {{{parametri|}}}{{{parametri2|}}}{{{parametri3|}}} | jokin kolmesta parametrista erisuuri kuin tyhjä }}
Mikäli käytetään tulostettaessa käytettävää ketjutustapaa, ei malline toimi mikäli mallinetta kutsuessa määritellään parametri tyhjäksi koodilla | parametri = .
[muokkaa] Taulukon rivin ehdollistaminen
{| |- {{#if: {{{parametri|<noinclude>-</noinclude>}}} | {{!}} Nimi {{!}} {{{parametri}}} {{!-}} }} {{#if: {{{parametri2|<noinclude>-</noinclude>}}} | {{!}} Nimi2 {{!}} {{{parametri2}}} {{!-}} }} |}
Hyödyt:
- Taulukko ei sekoa vaikka ehdollistettavia kenttiä olisi useita
- Selaimet tulkitsee koodin oikein, sillä se muotoillaan jo palvelimella XHTML-standardin mukaiseksi
- class{{{parametri|}}}="hiddenStructure" ei ole XHTML-standardin mukaista
- Menetelmän avulla mallineen sivulla näkyy kaikki kentät sekä parametrien sijoittuminen
Lisäksi tällä menetelmällä voidaan varmistaa että MediaWikin taulukkoparseri ei sekoa ja lisää taulukkokoodin alkuun tyhjää kappale-elementtiä <p><br /></p>.
[muokkaa] Väriteemat
Väriteemoja varten on kehitetty {{Aihealue}}, joka tarjoaa yhdenmukaisen värityksen taustalle ({{Aihealue/väri}}), korostusvärin taustalle ({{Aihealue/taustaväri}}), reunukselle ({{Aihealue/reunus}}) sekä tekstille {{Aihealue/tekstinväri}}.
[muokkaa] Tietolaatikot
Tietolaatikkojen yhdenmukaistamista varten on kehitetty sarja mallineita {{Tietolaatikko}} alle.
[muokkaa] {{Tietolaatikko}}
Wikiprojekti Mallineet | |||||||
---|---|---|---|---|---|---|---|
Aihe | Linjaukset | ||||||
Katso myös | |||||||
Projekti | Mallineet | ||||||
|
|||||||
|}
Tietolaatikon yläosa. Käyttää reunuksien värityksessä {{Aihealue/reunus}} mukaista väriä.
Peruskutsu:
{{Tietolaatikko | aihealue = tekniikka | sisältö = <sisältö> }} |}
[muokkaa] {{Tietolaatikko/otsikko}}
Tietolaatikon pääotsikko. Käyttää reunuksen värityksessä {{Aihealue/reunus}} ja taustan värityksessä {{Aihealue/taustaväri}} mukaista väriä.
Peruskutsu:
- {{Tietolaatikko/otsikko|aihealue=tekniikka|otsikko=Otsikko}}
[muokkaa] {{Tietolaatikko/väliotsikko}}
Tietolaatikon väliotsikko. Käyttää reunuksen värityksessä {{Aihealue/reunus}} ja taustan värityksessä {{Aihealue/taustaväri}} mukaista väriä.
Peruskutsu:
- {{Tietolaatikko/väliotsikko|aihealue=tekniikka|sisältö=Väliotsikko}}
[muokkaa] {{Tietolaatikko/tietorivi}}
Tietolaatikon tietorivi.
- {{Tietolaatikko/tietorivi|aihealue=tekniikka|sisältö=Väliotsikko}}
Peruskutsu:
- {{Tietolaatikko/tietorivi|nimi=Kenttä|sisältö={{{arvo}}}}}
[muokkaa] {{Tietolaatikko/kuva}} ja {{Tietolaatikko/kuvat}}
Tietolaatikon kuva– tai kahden kuvan kenttä. Käyttää reunuksien värityksessä {{Aihealue/reunus}} mukaista väriä.
Peruskutsut:
- {{Tietolaatikko/kuva|aihealue=tekniikka|kuva={{{kuva}}}|kuvateksti={{{kuvateksti}}}}}
- {{Tietolaatikko/kuvat|aihealue=tekniikka|kuva1={{{kuva1}}}|kuva2={{{kuva2}}}|kuvateksti1={{{kuvateksti1}}}|kuvateksti2={{{kuvateksti2}}}}}
[muokkaa] {{Tietolaatikko/linkki}}
Tietolaatikon linkkikenttä.
Peruskutsu:
- {{Tietolaatikko/linkki|linkki={{{linkki}}}|sisältö=Virallinen kotisivu}}
[muokkaa] {{Tietolaatikko/navigaatio}}
Tietolaatikon navigaatiokenttä, eli "edeltäjä-seuraaja"-kenttä.
Peruskutsu:
- {{Tietolaatikko/navigaatio|edeltäjänimi=Edellinen|tämänimi=Nykyinen|seuraajanimi=Seuraava|edellinen={{{edellinen}}}|tämä={{PAGENAME}}|seuraaja={{{seuraaja}}}}}
[muokkaa] Rivin ehdollistaminen
Tietolaatikkomallinetta käytettäessä tulostettava rivi voidaan ehdollistaa aivan kuten taulukkorivin ehdollistamisessa.
{{#if: <ehto> | <tietolaatikon tuloste>}}
[muokkaa] Navigaatiomallineet
Navigaatiomallineet, eli mallineet jotka vain listaavat saman aihepiirin sivuja tulisi toteuttaa aina joko pystymallisena artikkelin oikealle puolelle (katso esimerkiksi {{Ranskan tasavalta}}) tai vaakamallisena artikkelin alalaitaan (katso esimerkiksi {{Etelä-Suomen läänin kunnat}}). Kun navigaatiomalline tehdään vaakatasossa, tulisi malline aina toteuttaa avattavana mallineena.
[muokkaa] {{Navigaatio}}
Vaakatason navigaatiomallineiden avauskoodit käytettäessä {{Navigaatio}} ovat:
[muokkaa] Historia
Mallineen väliin jäävä teksti
[muokkaa] Kielitiede ja kieleen liittyvät
Mallineen väliin jäävä teksti
[muokkaa] Liikenne
Mallineen väliin jäävä teksti
[muokkaa] Maakohtaiset
Mallineen väliin jäävä teksti
[muokkaa] Paikkakuntakohtaiset
Mallineen väliin jäävä teksti
[muokkaa] Sota & konfliktit
Mallineen väliin jäävä teksti
[muokkaa] Taide & kulttuuri
Mallineen väliin jäävä teksti
[muokkaa] Talous
Mallineen väliin jäävä teksti
[muokkaa] Tekniikka
Mallineen väliin jäävä teksti
[muokkaa] Tiede
Mallineen väliin jäävä teksti
[muokkaa] Urheilu
Mallineen väliin jäävä teksti
[muokkaa] Yhteiskunta
Mallineen väliin jäävä teksti
[muokkaa] Muut pohja– ja taittomallineet
Näiden lisäksi muita pohja– tai taittomallineita on:
- {{Käyttäjälaatikko}} omille ja vakioiduille käyttäjälaatikoille
- {{Musiikkialbumi}} joka hoitaa taiton ja toiminnallisuuden mallineille {{Musiikkidvd}}, {{Musiikkisingle}} ja {{Musiikkikappale}}
- {{NaviTähdistö}} joka tarjoaa tähdistönavigaatiomallineiden toiminnallisuuden yhdessä {{Navigaatio}} kanssa
- {{Tuleva}} joka hoitaa tulevaisuusmallineiden taiton ja toiminnallisuuden
- {{Tynkämalline}} tynkäviestien pohjamallineeksi
- {{Viestipohja}} vakioviestien (kuten ongelmamallineiden) luomiseen
[muokkaa] Tunnetut rajoitteet ja virheet ParserFunctions–laajennuksessa
[muokkaa] Kaikki funktiot
Kaikki ParserFunctions–laajennuksen funktiot poistaa tuloksen alusta ja lopusta tulostumattomat merkit:
- {{#ifeq: {{#if: 1 | 1 }} | {{#if: 1 | 1 }} | Yhtäsuuret | Erisuuret }}
- Yhtäsuuret
Jos halutaan tulostaa alussa tai lopussa tulostumattomia merkkejä, tulee käyttää <nowiki /> etu- ja/tai jälkiliitettä:
- {{#ifeq: {{#if: 1 |<nowiki /> 1 }} | {{#if: 1 |<nowiki /> 1 }} | Yhtäsuuret | Erisuuret }}
- Erisuuret
- {{#ifeq: {{#if: 1 | 1 <nowiki />}} | {{#if: 1 | 1 <nowiki />}} | Yhtäsuuret | Erisuuret }}
- Erisuuret
[muokkaa] #time
Funktion #time ulosanti (output) on rajoitettu 6 000 merkkiin / sivukutsu. Mikäli tämä rajoitus ylittyy, palauttaa funktio virheviestin Error: too many #time calls. Tätä rajoitetta ei voi kiertää, ja ainoa keino viestin ilmaantuessa on lyhentää ajan muotoilussa käytettävää ulosantia:
- {{#time: [[j. F\t\a]] [[Y]]}} > {{#time: j.n.Y}}
- 17. kesäkuuta 2008 > 17.6.2008
[muokkaa] #ifexist
Funktion #ifexist kutsukerrat / sivulataus tullaan rajoittamaan 100 kertaan, mutta tällä hetkellä rajoite on vielä 500 kutsukertaa. Kun kutsukerrat ylittää määritetyn rajan, tulee esikatselutilaan seuraavanlainen ilmoitus:
Tämä on vasta sivun esikatselu. Sivua ei ole vielä tallennettu!
Warning: This page contains too many #ifexist calls. It should have less than 500, there are now 501.
Tämän lisäksi sivu luokittuu automaattisesti luokkaan Pages with too many ifexist calls ja funktio lopettaa toimimisen 500 kutsukertaan.
Tulevaisuuden 100 kutsukerran rajoitetta on syytä pitää silmällä jottei funktiota käyttävät sivut lakkaa toimimasta rajoitteen astuessa voimaan. Alle viidensadan kutsukerran määrät saa selville sivun lähdekoodista, jossa sivun sisällön alalaitaan ilmestyy automaattisesti seuraavanlainen kommentti:
<!--
Pre-expand include size: 3392/2048000 bytes
Post-expand include size: 3392/2048000 bytes
Template argument size: 0/2048000 bytes
#ifexist count: 101/500
-->
[muokkaa] #ifeq
Funktiossa #ifeq on Bugzillan mukaisesti havaittu kaksi eri bugia:
[muokkaa] Bug when using colon in ParserFunction #ifeq:
Mikäli halutaan tulostaa funktiolla #ifeq kaksoispiste ensimmäisenä merkkinä, muotoutuu tulos väärin
- [[{{#ifeq: {{NAMESPACE}} | {{ns:0}} | {{FULLPAGENAME}} | :{{FULLPAGENAME}} }}]]
- [[
- Wikipedia:Wikiprojekti Mallineet/Linjaukset]]
Tämän ongelman välttämiseksi tulee käyttää linkkiä kokonaisuudessaan funktion sisällä:
- {{#ifeq: {{NAMESPACE}} | {{ns:0}} | [[{{FULLPAGENAME}}]] | [[:{{FULLPAGENAME}}]] }}
- Wikipedia:Wikiprojekti Mallineet/Linjaukset
[muokkaa] #ifeq bug when using Magic words that include quotes (")
Mikäli funktiolla #ifeq verrataan onko sivun nimi jokin tietty, ei funktio toimi mikäli sivun nimessä on lainausmerkit (testiesimerkki toimii vain " alla):
- {{#ifeq: " | {{PAGENAME}} | 1 | 0}}
- 0
Tämän ongelman voi kiertää käyttämällä vertailuina toisen funktion (esimerkiksi localurl) tuloksia:
- {{#ifeq: {{localurl:"}} | {{localurl:{{PAGENAME}}}} | 1 | 0}}
- 1
[muokkaa] Mallineiden järjestys
1. Ylämalline | ||
---|---|---|
3. Sisältö & Lähteet |
2. Oikea malline |
|
4. Aiheesta muualla | ||
5. Navigaatiomalline(et) | ||
6. Tynkämalline | ||
7. Luokat | ||
8. Kieltenväliset linkit |
- Ylämalline: {{Tämä artikkeli}}, {{Roskaa}}, {{Poistettava}}...
- Oikea malline: Niin kutsuttu tietolaatikkomalline
- Sisältö: Artikkelin tekstisisältö (voi sisältää mallineita kuten {{Pääartikkeli}}
- Aiheesta muualla
- Navigaatiomalline(et)
- Tynkämalline
- Luokat
- Kieltenväliset linkit
[muokkaa] Mallineiden korjaus
Kaikki korjattavaksi pyydetyt mallineet löytyvät huomiota kaipaavien mallineiden luokasta, jonne luokitellaan {{Korjattava/malline}} avulla. Kun malline korjataan, on hyvä tarkastaa myös:
- Toimintavarmuus
- Jos parametrilla on tietty oletusarvo, tulisi {{[parametri|oletusarvo}}} sijasta käyttää ehtolausetta {{#if: {{[parametri|}}} | {{{parametri}}} | oletusarvo }}. Tällöin tyhjäksi jätetty parametri ei sotke mallineen toiminnallisuutta
- Taulukkorivien ehdollistaminen
- Kaikki hiddenstructure-luokan avulla tehdyt ehdollistukset tulisi muuntaa toimintavarmempaan tapaan
- Parametrit ja sisältö
- Toisista kieliversioista otetut mallineet tulisi muuntaa suomen kielelle yleisten käytäntöjen mukaisesti
Mikäli mallineen korjaus tulee kestämään kauan, tulee alaspäin yhteensopivuudesta huolehtia ja merkata malline kehitteillä oleviin mallineisiin {{Kehitteillä oleva malline}} avulla. Jos mallineen muutos tulee lisäksi vaikuttamaan suureen osaan Wikipedian artikkeleita, tulee mallinemuutoksesta ilmoittaa tulossa olevissa päivityksissä laajan huomion varmistamiseksi.
[muokkaa] Uudelleenohjaavat mallineet
Katso uudelleenohjaukset.
[muokkaa] Tuplamallineet
Katso tuplamallineet.