WordPressiä käytetään tänä päivänä yhä useammin verkkosivujen rakentamiseen. Kotisivuja WordPressin avulla kaupallisesti tuottavat web-kehittäjät joutuvat ottamaan lukuisia teknisiä asioita huomioon sivustoja luodessaan ja tekemään tärkeitä päätöksiä käytettävien menetelmien ja työkalujen suhteen. Yksi oleellisimmista seikoista on sivuston WordPress-teema, jonka kehittämisessä nousee eteen erinäisiä haasteita. Monet niistä voi ratkaista tarkoituksenmukaisella aloitusteemalla.
Kirjoittajat: Eetu Kinnunen ja Aki Vainio
Koodin uudelleenkäyttö ja MVC
Ohjelmistokoodi on helposti kopioitavissa ja siten uudelleenkäytettävissä, mikäli se on suunniteltu oikein. Merkittävä osa ohjelmistokehityksestä onkin sovellusten rakentamista olemassa olevasta koodista eri lähteistä. Ohjelmoijan työ onkin usein erilaisten kirjastojen, ohjelmistokehysten ja lisäosien sovittamista yhtenäiseksi kokonaisuudeksi. Kun monia osia sovelluksesta ei tarvitse kehittää alusta asti, ohjelmistokehitys nopeutuu huomattavasti.
Eräs suosittu tapa rakentaa ohjelmistoa on MVC-arkkitehtuuri (esim. Deck 2014; Galloway ym. 2014). Arkkitehtuurissa erotetaan sovelluksen käyttöliittymä (V eli view), tiedon käsittelijä (C eli controller) ja taustalla oleva tietomalli (M eli model) toisistaan. Toimimalla näin voidaan mikä tahansa näistä osista vaihtaa tarvittaessa puuttumatta muihin osiin. Tämä mahdollistaa esimerkiksi sen, että saman tietomallin ja käsittelijän varaan voidaan rakentaa sovellus sekä älypuhelimelle, että tietokoneelle luomalla näille vain erilaiset käyttöliittymät.
WordPress-sivusto ja sen teema
WordPress on julkaisu- ja sisällönhallintajärjestelmänä tarkoitettu blogien ja sivustojen luomiseen. WordPress-sivusto koostuu neljästä osasta: järjestelmän ydinkoodista, teemasta, lisäosista ja sivuston ylläpitäjän lisäämästä sisällöstä, kuten sivuista, artikkeleista ja kuvista. Näistä teema toimii MVC-arkkitehtuurin mukaisena käyttöliittymänä.
Verkkosivuja muiden käyttöön tekevä web-kehittäjä voi varsinaisesti vaikuttaa vain teeman koodiin ja lisäosien valintaan, mikäli hän haluaa säilyttää järjestelmän päivitettävyyden (WordPress Foundation 2018c). WordPress-teema on tiedostokokoelma, joka sisältää sivuston yksilöllisen identiteetin mahdollistavat sivurakenteet, toiminnallisuudet ja tyylimääritelmät.
WordPressin teemahakemistosta löytyy lukuisia käyttövalmiita teemoja moneen eri tarpeeseen, mutta täysin kustomoitu kotisivu vaatii lähes aina teeman tiedostojen muokkaamista. Jos saatavilla oleva teema on tarkoitettu käytettäväksi sellaisenaan, voi sen muokkaaminen olla hankalaa koodin monimutkaisuuden vuoksi. Tämän lisäksi teemaan tehdyt muutokset saattavat hävitä sitä päivitettäessä, tosin kyseinen ongelma on vältettävissä luomalla olemassa olevan teeman pohjalta lapsiteema (WordPress Foundation 2018a). On kuitenkin olemassa toinenkin vaihtoehto tämän ongelman ratkaisemiseen.
Aloitusteema on yleinen ratkaisu asiakkaan tarkkoihin tarpeisiin räätälöityjen kotisivujen kehittämisen lähtökohtana. Aloitusteemojen ulkoasu ja sisältö ovat tyypillisesti paljon käyttövalmista teemaa riisutumpia. Aloitusteemoja ei ole tarkoitettu käytettäviksi sellaisinaan, vaan niitä on tarkoitus kustomoida tilanteen mukaan. (Strojny 2013.)
Miksi käyttää aloitusteemaa?
Kinnusen opinnäytetyössä (2018) tutkittiin aloitusteeman rakentamista WordPress-sivustojen kehityksen yhtenäistämiseksi kotisivupalveluita tarjoavan yrityksen sisäisessä käytössä. Yrityksen prioriteettien ja toiveiden perusteella on luotavissa monikäyttöinen aloitusteema, jota hyödyntämällä voidaan vähentää jatkossa luotavien sivustojen eroavaisuuksia teemojen koodipohjissa. Mikäli aloitusteema noudattaa määriteltyjä kehitysstandardeja ja sisältää yritykselle oleelliset ominaisuudet ja toiminnallisuudet, sillä on mahdollisuus ratkaista eroavaisuusongelma. (Kinnunen 2018, Strojny 2013.)
Kun sivustojen kehityksestä vastuussa olevat kehittäjät tuntevat yrityksen luomien WordPress-sivujen teemojen toiminnan, kyseisten sivujen ylläpito ja jatkokehitys helpottuvat huomattavasti (Kinnunen 2018, Strojny 2013). Aloitusteema voi toimia myös oppimisympäristönä teemojen muokkaamiseen. Kun teema ei ole liian monimutkainen, sen rakenteen ja toiminnan hahmottaminen on helpompaa.
Millainen aloitusteema soveltuu minulle?
Aloitusteemaa kehittäessä tulee ennen kaikkea ottaa huomioon sitä käyttävän yrityksen, organisaation tai yksityishenkilön tarpeet ja tavoitteet sivuston kehityksessä. Tämän vuoksi ei ole olemassa yhtä tiettyä ohjetta siitä, mitä aloitusteemassa tulisi olla ja mitä ei. Yksi tapa päästä selville teeman optimaalisesta muodosta on tutkia teeman tulevan käyttäjän aiempia verkkosivuprojekteja. Luettelemalla aiemmin tehdyillä sivustoilla käytössä olevat toiminnot ja elementit sekä arvioimalla kyseisten ominaisuuksien teemaan asentamisen hyödyllisyyttä voidaan päästä paremmin perille aloitusteeman tarpeista. (Kinnunen 2018.) On muistettava, että tietynlaiset ominaisuudet, kuten yhteydenottolomakkeet ja analytiikkaominaisuudet, on WordPressin virallisen dokumentaation mukaan suositeltavaa toteuttaa teeman sijaan lisäosilla (WordPress Foundation 2018b).
Kun on tiedossa, mitä aloitusteemalta vaaditaan, voidaan hankkia niitä täsmäävä teema. Internetissä on saatavilla useita aloitusteemoja ilmaiseksi. Eri aloitusteemoilla on omat vahvuutensa. Roots-tiimin (2018) voimakas Sage-teema perustuu Webpackiin, sisältää Bootstrapin ja käyttää Blade-moottoria sivupohjien luomiseen. Automaticcin (2018) Underscores on yksinkertaisempi, sisältäen useita funktioita, sivupohjia ja elementtejä, mutta yksinkertaisen PHP:n muodossa. Themblen (2018) Bones on tarkoitettu mahdollisimman minimalistiseksi, mobiiliystävälliseksi teemaksi. Nämä esimerkit kuvaavat aloitusteemojen monipuolista kirjoa käyttötarkoituksesta toiseen.
Aloitusteeman voi toki myös rakentaa alusta asti itse, tai oman teeman voi kustomoida olemassa olevan aloitusteeman pohjalta. Kussakin tilanteessa järkevin lähestymistapa riippuu valituista vaatimuksista sekä kehittäjän taitotasosta. Aloitusteeman käyttäminen oman teeman luomisessa on kuitenkin samalla tavalla perusteltavissa kuin aloitusteeman käyttäminen ylipäätään: se yksinkertaistaa ja yhtenäistää teeman kehittämistä. Onkin aloitusteeman periaatteen mukaista, että etenkin aloittelevat ohjelmoijat harkitsevat aloitusteemojen tuomien mahdollisuuksien hyödyntämistä sivustokehityksessä ja henkilökohtaisessa oppimisessa.
Lähteet
Automattic Inc. 2018. Create your Underscores based theme. [Viitattu 12.12.2018]. Saatavissa: https://underscores.me/
Deck, P. 2014. Spring MVC: A tutorial. Vancouver, Canada: Brainy Software.
Galloway, J., Allen, K. S., Lipton, E., Matson, D., Mourfield, P. & Wilson, B. 2014. Professional ASP. NET MVC 5. Wiley.
Kinnunen, E. 2018. WordPress-kehityksen yhtenäistäminen aloitusteeman avulla. AMK-opinnäytetyö. Lahden ammattikorkeakoulu, liiketalouden ja matkailun ala. Lahti. [Viitattu 9.12.2018]. Saatavissa: http://urn.fi/URN:NBN:fi:amk-2018121321422
Roots. 2018. Sage. WordPress starter theme with a modern development workflow. [Viitattu 12.12.2018]. Saatavissa: https://roots.io/sage/
Strojny, D. 2013. Why you should use a WordPress starter theme. The Theme Foundry. [Viitattu 6.12.2018]. Saatavissa: https://thethemefoundry.com/blog/wordpress-starter-theme/
Themble. 2018. Bones – An HTML5, Mobile-First starter theme for rapid WordPress development. [Viitattu 12.12.2018]. Saatavissa: https://themble.com/bones/
WordPress Foundation. 2018a. Child Themes. [Viitattu 6.12.2018]. Saatavissa: https://codex.wordpress.org/Child_Themes
WordPress Foundation. 2018b. Explanations and Examples. [Viitattu 9.12.2018]. Saatavissa: https://make.wordpress.org/themes/handbook/review/required/explanations-and-examples/
WordPress Foundation. 2018c. Updating WordPress. [Viitattu 9.12.2018]. Saatavissa: https://codex.wordpress.org/Upgrading_WordPress
Kirjoittajat
Eetu Kinnunen on Lahden ammattikorkeakoulusta valmistuva tietojenkäsittelyn opiskelija
Aki Vainio on tietojen käsittelylehtori Lahden ammattikorkeakoulussa ja entinen ohjelmistoalan yrittäjä
Artikkelikuva: https://www.pexels.com/photo/blogging-blur-business-communication-261662/ (CC0)
Julkaistu 18.12.2018
Viittausohje
Kinnunen, E. & Vainio, A. 2018. Aloitusteema WordPress-kehityksen työkaluna. LAMK Pro. [Viitattu ja pvm]. Saatavissa:
http://www.lamkpub.fi/2018/12/18/aloitusteema-wordpress-kehityksen-tyokaluna