Acorn Prettify: Soilista eteenpäin, Acorn-ekosysteemin ehdoilla
Roots-tiimin WordPress-maailmassa Soil on ollut pitkään se pieni, mutta tärkeä palanen, jolla siistitään WordPressin oletusmarkuppia ja parannetaan perusasioita ilman että koko teemapino pitää räjäyttää. Nyt Roots on julkaissut uuden paketin, Acorn Prettifyn, joka toimii Soil-pluginin seuraajana ja istuu suoraan Acornin (Roots/Acorn) ympärille rakentuvaan pakettiekosysteemiin.
Mikä Acorn Prettify on ja miksi se korvaa Soilin?
Acorn Prettify on Composerilla asennettava paketti, joka kokoaa yhteen ne Soil-ominaisuudet, joita Roots aikoo jatkossakin ylläpitää. Samalla se on selkeä signaali siitä, että Roots panostaa vahvasti Acornin ympärille rakennettavaan malliin: ominaisuudet ja “teemaa siistivä” logiikka toimitetaan paketteina, joita voi ottaa käyttöön hallitusti projektikohtaisesti.
Taustaa: Soil oli alun perin osa Roots-starter themeä vuosina 2011–2014. Roots v7 -julkaisun yhteydessä Soil irrotettiin omaksi pluginikseen. Nyt seuraava askel on viedä ylläpidettävät ominaisuudet Acorn-maailmaan ja toimittaa ne Acorn Prettify -paketin kautta.
Mitä ominaisuuksia Prettify tuo (Soilin “ydinpaketti”)
Acorn Prettify sisältää Roots-tiimin mukaan ne keskeiset Soil-ominaisuudet, joita jatkossa pidetään aktiivisesti kunnossa:
- WordPress-markupin siistiminen: tavoitteena puhtaampi, vähemmän “WP-oletus”-henkinen HTML ja turhan rönsyn karsiminen.
- Nice search: hakukokemuksen parantaminen (käytännössä se, että haku käyttäytyy järkevämmin ja URLit ym. ovat siistimmät).
- Relative URLs: suhteelliset URL-osoitteet, mutta huomaa: ne ovat nyt oletuksena pois päältä (disabled by default).
Relative URLs on oletuksena pois päältä
Jos olet aiemmin nojannut Soilin relative URL -toiminnallisuuteen, huomaa että Prettifyssa se ei ole automaattisesti käytössä. Tämä on tarkoituksellinen oletus, joten käyttöönottaminen tehdään konfiguraation kautta.
Migraatio: Soil → Acorn Prettify (Composer-projekti)
Jos projektissasi on Soil Composer-riippuvuutena, migraatio on suoraviivainen: poistat vanhan paketin ja otat uuden tilalle.
1) Poista Soil Composerista
composer remove roots/soil
2) Asenna Acorn Prettify
composer require roots/acorn-prettify
3) Sage-projekti: siivoa add_theme_support-viittaukset
Jos käytät Sagea, Roots mainitsee erikseen, että voit poistaa Soiliin liittyvät add_theme_support -asetukset tiedostosta app/setup.php. Käytännössä tämä on se kohta, jossa vanhan pluginin feature-togglit on usein kytketty päälle teeman kautta.
Roots on linkannut esimerkin Sage-reposta, josta näet miltä muutos näyttää käytännössä: Sage PR #3172 (files).
Konfigurointi: ominaisuudet tulevat config-tiedoston kautta
Prettifyn ominaisuudet kytketään päälle konfiguraatiolla. Paketin oma konfiguraatiotiedosto on config/prettify.php (lähde: Roots/acorn-prettify -repo). Idea on sama kuin monessa modernissa PHP-kehyksessä: oletukset ovat paketissa, ja projektikohtaiset muutokset tehdään julkaisemalla konfiguraatio omaan koodipohjaan.
Julkaise konfiguraatio projektiisi
wp acorn vendor:publish --tag=prettify-config
Kun konfiguraatio on julkaistu, voit muuttaa oletuksia (esimerkiksi kytkeä relative URLs -toiminnon erikseen päälle, jos se on sinun ympäristössäsi perusteltua).
Mitä tämä tarkoittaa Roots/Acorn-kehittäjälle?
Käytännön tasolla muutos tekee kahdesta asiasta selkeämpiä:
- Riippuvuuksien hallinta paranee: samat “siistintäominaisuudet” tulevat projektin Composer-riippuvuuksina, jolloin versiopäivitykset ja lukitus (lockfile) ovat ennustettavampia.
- Konfiguraatio keskitetään: ominaisuuksien kytkentä ei jää vain teeman
setup.php-pätkiin tai plugin-asetusten varaan, vaan sitä ohjataan yhden config-pisteen kautta.
Roots myös nostaa esiin isomman kuvan: Acornin ja sen pakettiekosysteemin odotetaan kasvavan. Acorn Prettify istuu siihen linjaan luontevasti, koska se on selkeästi rajattu, ylläpidettävä osa-alue eikä “kaikkea kaikille” -plugin.
Hannah Turing
WordPress-kehittäjä ja tekninen kirjoittaja HelloWP:llä. Autan kehittäjiä rakentamaan parempia verkkosivustoja moderneilla työkaluilla kuten Laravel, Tailwind CSS ja WordPress-ekosysteemi. Intohimona puhdas koodi ja kehittäjäkokemus.
Kaikki julkaisut