Headless WordPress: hypetystä, kauhutarina vai askel kohti parempaa maailmaa?
Headless WordPress sai osakseen vähintään kohtalaista hypeä muutama vuosi sitten, mutta viime aikoina siitä on puhuttu enimmäkseen kriittiseen sävyyn. Otetaanpa selvää, mikä on headless WordPress – oliko hype aiheellista vai onko uskominen kaikkia kauhutarinoita aiheesta?
Mikä on Headless WordPress?
Headless tarkoittaa yksinkertaisesti sitä, että verkkosivuston tai sovelluksen käyttöliittymä (UI) puuttuu ja vain sen taustalla oleva toiminnallisuus säilyy. Headless WordPressissä korvataan WordPressin oma julkinen käyttöliittymä erillisellä käyttöliittymällä ja hyödynnetään WordPressin ylläpitoa sisällönhallintaan.
Julkinen käyttöliittymä voi toimia SSR (server-side rendering, palvelinpään tulostus) tai CSR (client-side rendering, asiakaspään tulostus) -tekniikalla. Toisinaan käytetään myös lyhennettä SPA (single page app). SPA toimii samaan tapaan kuin CSR.
SSR:ssä sivun sisältö generoidaan palvelimella, kun käyttäjä lähettää pyynnön sivusta. Palvelin luo HTML-sivun, joka sisältää kaiken tarvittavan sisällön, joka lähetetään käyttäjän selaimelle. SSR-tekniikalla toteutettu headless WordPress mahdollistaa taustajärjestelmänä toimivan WordPressin käytön rajoittamisen erittäin tiukasti, jolloin ratkaisu on hyvin tietoturvallinen.
SSR-tekniikalla toteutettu headless WordPress on hyvin tietoturvallinen.
CSR:ssä sivun sisältö luodaan selaimessa käyttämällä JavaScriptiä. Kun käyttäjä lataa sivun, selain lataa ensin tarvittavan JavaScript-koodin ja sen jälkeen käyttöliittymä luodaan selaimessa. Sisältö ladataan dynaamisesti palvelimelta käyttäjän toimintojen mukaisesti. CSR-käyttöliittymän käyttökokemuksen voi hioa huippuunsa. Erilaiset siirtymät sisällöstä toiseen voidaan tehdä miellyttävämmiksi. Sisällön dynaaminen lataus mahdollistaa hyvän suorituskyvyn ja käyttäjän vuorovaikutusta sivuston kanssa voidaan parantaa juuri siellä, missä käyttäjä toimii.
Headless WordPressin hyödyt
Headless WordPress hyödyntää WordPressin parhaita puolia sisällönhallintajärjestelmänä. Käyttöliittymä voidaan rakentaa täysin tarpeiden mukaan ja hyödyntää moderneja JavaScript-kirjastoja (esim. React tai Vue). Hyvin tehty käyttöliittymä on erittäin nopea ja käyttökokemusta voidaan parantaa merkittävästi.
Headless WordPress mahdollistaa helposti myös sisällön toimittamisen usealle eri alustalle. Sivuston lisäksi samaa sisältöä voidaan hyödyntää esim. mobiilisovelluksessa.
Taustajärjestelmäksi vaihtoehtoja on toki muitakin kuin WordPress ja taustajärjestelmän valintaan varmasti vaikuttavat kyseessä olevan palvelun tarpeet. WordPressin ehdoton vahvuus taustajärjestelmänä on erinomainen käyttäjäkokemus sisällönhallinnassa.
Headless WordPressin heikkoudet
Yksi WordPressin vahvuuksista on laaja kehittäjäyhteisö ja valtava valikoima erilaisia valmiita lisäosia. Headless-toteutuksessa ei voida hyödyntää käyttöliittymää muokkaavia lisäosia, vaan käytännössä kaikki käyttöliittymiin liittyvä joudutaan aina toteuttamaan erikseen. Tämä lisää kustannuksia.
SSR-tekniikalla toteutettu headless WordPress luo staattisen version aina, kun sisältöä julkaistaan. Tämä voi olla varsin pitkäkestoinen prosessi, joka saattaa muodostua ongelmaksi, jos sisältöä päivitetään tai julkaistaan usein.
Headless-toteutuksissa myös analytiikan kytkentään ja hakukoneiden huomiointiin pitää kiinnittää erityistä huomiota.
Headless WordPressin rakentaminen on käytännössä aina alkuun työläämpää ja kalliimpaa. Ratkaisun edut tulevat usein esiin vasta myöhemmin palvelun elinkaaren aikana.
Digitaaliset trendit: Lue lisää
Hype ja sitä seurannut kritiikki
Headless WordPressiä on hypetetty sen joustavuuden, modernien teknologioiden, suorituskyvyn, käyttökokemuksen, kehitysnopeuden, skaalautuvuuden, tietoturvan ja tulevaisuuden teknologian vuoksi. Kukapa ei haluaisi sivustolta mm. parempaa suorituskykyä ja käyttökokemusta. Modernit teknologiat kiinnostavat aina kehittäjiä, joten ei ole ihme, että headless on näyttänyt vaihtoehdolta, jossa kaikki voittavat.
Headless on näyttänyt vaihtoehdolta, jossa kaikki voittavat – todellisuudessa ongelmia on vielä paljon ratkottavana.
Sittemmin headless WordPress on saanut osakseen paljon kritiikkiä ja usein aivan aiheesta. Voin vain kuvitella sen tuskan, kun sivuston hankinta- ja kehityskustannukset kasvavat ja samalla tuntuu, että sivuston toiminta heikkenee. Hypen keskellä on ehkä unohtunut, että kehitys- ja ylläpitokustannukset nousevat. Headless-toteutukset eivät myöskään aina ole täyttäneet odotuksia esimerkiksi suorituskyvyn suhteen.
Headless WordPressin kanssa ollaan tilanteessa, jossa yleisesti vakiintuneita käytäntöjä ja valmiita komponentteja ei vielä ole niin paljon kuin tavallisen WordPressin kanssa. Suuntaa haetaan vielä ja kehittäjillä ei ole valmiita ratkaisuja eteen tuleviin ongelmiin, jolloin ongelmia lähdetään ratkomaan tapauskohtaisesti ja varmasti kaikki kokeilut eivät kerää kiitosta.
Headless WordPressin tulevaisuus
Kun tarkastellaan headless WordPressin ensin saamaa hypeä ja sen perään kuultua kritiikkiä, voidaan todeta tämän menevän täysin Gartnerin hype cycle -käyrän mukaan: ensin hypepiikki, jonka jälkeen yhtä jyrkkää kritiikkiä. Jos Gartnerin hype cycle toimii ennusteena headless WordPressin osalta, on seuraavaksi odotettavissa hitaammin kehittyvää, vakaata kiinnostusta. Samalla saamme varmasti enemmän vakiintuneita käytäntöjä ja valmiita komponentteja, joita voidaan hyödyntää.
Kaikki headless WordPressin hypetetyt hyödyt on mahdollista saavuttaa. Aina kun asioita aletaan tehdä eri tavalla, kohdataan uudenlaisia ongelmia. Nämä ongelmat ovat ratkaistavissa. Samaan tapaan kuin sähköautoissa on pitkään kritisoitu hintaa, toimintasädettä ja hidasta latausta, ovat nämä kaikki ominaisuudet kehittyneet jatkuvasti parempaan suuntaan.
Kun haluamme muuttaa maailmaa paremmaksi, on meidän uskallettava tehdä asioita uusilla tavoilla ja olla valmiita investoimaan uusiin kokeiluihin.
Itse en ainakaan ole vielä valmis luovuttamaan headless WordPressin osalta. Kun haluamme muuttaa maailmaa paremmaksi, on meidän uskallettava tehdä asioita uusilla tavoilla ja olla valmiita investoimaan uusiin kokeiluihin.
Askeleet kohti parempaa maailmaa
Tyypillisesti projekteissamme täysin headless WordPress ei ole perusteltu, mutta usein pyrimme poimimaan rusinat pullasta ja toteuttamaan perinteiselle WordPress sivustolle osioita, jotka toimivat CSR:n tavoin. Jossain olen kuullut tällaisia kutsuttavan termillä hybrid app, joskaan mitään vakiintunutta termiä näillä ei kuitenkaan taida vielä olla. Hybrid app -toteutuksessa luodaan esimerkiksi Gutenberg-lohko, joka itsessään hakee kaiken sisällön WordPressiltä rajapinnan kautta ja reagoi käyttäjän toimiin. Hybrid app -toteutukset ovat parhaimmillaan, kun sivuston sisällön halutaan mukautuvan käyttäjän valintoihin. Esimerkiksi erilaiset sisällön haut ja suodatukset on järkevää toteuttaa hybrid appina, jolloin käyttäjä näkee heti tehdessään muutoksia, miten tulokset suodattuvat. Toinen hyvä esimerkki voisivat olla erilaiset tuotevalitsimet, joissa käyttäjän valinnat vaikuttavat suoraan tuotteen tietoihin ja hintaan. Itse asiassa WordPressin oletuseditorina toimiva Gutenberg on hybrid app -toteutus.
Tärkeämpää kuin se, millä tekniikalla sivusto on toteutettu, on se, mitä sisältöä sivuilla on ja kuinka helppoa ja miellyttävää sitä on käyttää. Me Karhulla autamme mielellämme miettimään, miten sivuston käyttämisestä voidaan tehdä helppoa ja miellyttävää.