Headless-toteutuksen kehitys WordPress- ja Next.js-ympäristössä
Mattila, Petteri (2022)
Mattila, Petteri
2022
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2022060716366
https://urn.fi/URN:NBN:fi:amk-2022060716366
Tiivistelmä
Tiivistelmä: Opinnäytetyön tutkimuksen tarkoituksena oli selvittää headless-toteutuksen positiiviset ja negatiiviset vaikutukset sekä selvittää, mitä asioita toteutuksessa pitäisi huomioida, jotta kehitystyö voitaisiin toteuttaa onnistuneesti. Tarvittaessa kehitystyössä tehdystä toteutuksesta voidaan kehittää sovelluspohja, jota voidaan hyödyntää muissa headless-toteutuksissa. Tutkimuksessa ei tutkittu pelkästään opinnäytetyössä käytettyä ympäristöä, vaan tutkimus tehtiin laajemmalla näkökulmalla, jonka myötä tuloksia voidaan soveltaa muissa toteutuksissa, jotka eivät käytä samoja teknologioita kuin opinnäytetyö. Opinnäytetyön toimeksiantajana toimi Frostigon Oy. Headless-toteutuksessa tehtiin käyttöliittymä käyttäen Next.js-frameworkiä, joka pystyy hakemaan tietoja WordPress-sisällönhallintajärjestelmästä. WordPress-ympäristöön lisättiin tarvittavat lisäosat: WPGraphQL, Custom Post Type UI ja Advanced Custom Fields. Kyseiset lisäosat mahdollistivat tiedon välityksen sisällönhallintajärjestelmän ulkopuolelle halutussa muodossa. Lopullisena toteutuksena opinnäytetyössä tehtiin sovelluspohja, jolla voidaan luoda suhteellisen lyhyessä ajassa toimiva demosovellus. Sovellusta voidaan jatkokehittää muokkaamalla templaatteja, tyylittelyjä ja lisäämällä sovelluksen vaatimat ominaisuudet. Kyseisillä muutoksilla voidaan saavuttaa lopullinen headless-toteutus. Tutkimus toteutettiin laadullisena tutkimuksena, jonka tuloksina saatiin selville toteutuksen mahdolliset positiiviset ja negatiiviset vaikutukset, joiden avulla voidaan perustella, onko headless-toteutustapa hyödyllinen tietyssä tilanteessa. Headless-toteutuksen luonteen vuoksi tutkimuksessa ei pystytty vastaamaan minkälaisissa tilanteissa toteutusta ei voitaisi käyttää tai missä sitä pitäisi käyttää. Tutkimuksessa tarkasteltiin eri teknologioiden hyviä ja huonoja puolia perinteisessä- sekä headless-toteutuksessa. Kyseistä tietoa voidaan hyödyntää sovelluksen toteutuksen suunnittelussa.