Julkaistu
Päivitetty

Seravon Vagrant on WordPress-sivustojen kehittäjille suunnattu apuväline, joka mahdollistaa Seravon tuotantoympäristöä mahdollisimman paljon muistuttavan ympäristön ajamisen omalla koneella virtuaalikoneessa. Tämän etu on se, että jos kehittäjä käyttää tuotannon kanssa mahdollisimman identtistä kehitysympäristöä, niin tuotantoon viedessä tulee vähemmän yllätyksiä. Kehitys- ja tuotantoympäristöt ovat mahdollisimman identtisiä, eli niissä on muun muassa samat versiot ohjelmistoista kuten PHP, Nginx, MariaDB, Redis jne, sekä niissä samat asetukset.
Vagrant itsessään on yleinen ohjelmisto kehitysympäristöjen luomiseen ja ajamiseen, se on monille tuttu ja Seravon Vagrant noudattaa kehittäjille ennestään tuttuja yleisiä Vagrantin käyttöperiaatteita. Lisätietoja löytyy Seravon WordPress-sivustojen kehittäjille suunnatuissa ohjeissa sivustolla seravo.com/docs/.

Vagrant-komennot kehittäjille

Seravon Vagrantin idea ei lopu siihen, että se helpottaa kehityksestä testiin ja tuotantoon vientiä. Se sisältää myös lukuisan joukon kehittäjien yleisiä apuvälineitä (esim. Xdebug ja Mailcatcher) sekä Seravon itse kehittämiä apuvälineitä, jotka ovat kaikki wp-alkuisia komentoja:

wp-makepot
wp-pomo-compile
wp-pull-production-db
wp-pull-staging-db
wp-ssh-production
wp-test
wp-vagrant-dump-db
wp-vagrant-import-db
wp-watch-logs

 

Teemojen ja lisäosien kääntäminen helpottuu

Näistä uusimmat ovat wp-makepot sekä wp-pomo-compile, jotka helpottavat WordPressin teemojen ja lisäosien käännettävyyden ja käännösten kehittämistä. WordPressissä koodaaja mahdollistaa käyttöliittymän kääntämisen eri kielille käyttämällä WordPressin gettext-funktioita. Esimerkiksi PHP-koodiin ei pitäisi koskaan kirjoittaa echo 'Hello world!' vaan mielummin _e('Hello world!').
Kun teema tai lisäosa on valmis, ja ensimmäinen versio käyttöliittymästä tehty (yleensä englanniksi) tehdään varsinainen kääntäminen eri kielille eri vaiheessa. Ensin pitää luoda pot-tiedosto, jossa on listattuna yhdessä paikkaa kaikki käännettävissä olevat tekstit. Sitten pot-tiedostosta luodaan po-tiedosto kullekin kielelle. Suomentaja tekee siis fi.po-tiedoston. Lopulta kaikki tekstimuodossa olevat po-tiedostot pitää kääntää konekieliseksi eli binääriksi, jolloin niistä tulee mo-tiedostoja. Suomenkielinen käyttöliittymä näkyy käyttäjälle, jos tiedosto fi.mo on olemassa (ja WordPress löytää sen ja lataa sen).
Pot-tiedostojen tuottamiseksi teimme komennon wp-makepot. Se käyttää ”konepellin alla” WordPressin kehittäjien omaa makepot-työkalua, eli se toimii varmasti oikein ja WordPressin parhaiden käytäntöjen mukaan. Sitä ajettaessa pitää kertoa tuotetaanko käännöstiedosto WordPress-teemasta vai lisäosasta, sekä missä hakemistossa koodi sijaitsee, ja minne pot tiedosto halutaan tallentaa:

vagrant@wordpress:/data/wordpress/htdocs/wp-content/plugins/woocommerce-pakettikauppa$ wp-makepot
Generate POT file from the files in DIRECTORY [OUTPUT]
Available projects: generic, wp-frontend, wp-admin, wp-network-admin, wp-tz, wp-plugin, wp-theme, glotpress, rosetta, wporg-bb-forums, wporg-themes, wporg-plugins, wporg-forums, wordcamporg
vagrant@wordpress:/data/wordpress/htdocs/wp-content/plugins/woocommerce-pakettikauppa$ wp-makepot wp-plugin . languages/wc-pakettikauppa.pot

Uusien po-tiedostojen luomiseen ja vanhojen po-tiedostojen päivittämiseen päivittyneistä pot-tiedostoista suosittelemme käyttämään graafista Poedit-ohjelmaa.
Jos käytetään Poedit-ohjelmaa, automatisoi se monta asiaa käännöstyössä, kuten vanhojen käännösten poistamisen po-tiedostoista sekä po-tiedostojen tallennusvaiheessa luo binäärimuotoiset mo-tiedostot.
Jos haluaa erikseen varmistaa, että kaikista po-tiedostoista on luotu tuore binäärimuotoinen mo-tiedosto, voi käyttää komentoa wp-pomo-compile. Sille voi antaa parametriksi tietyn hakemistopolun, tai jos ei anna, niin se oletuksena etsii kaikki po-tiedostot hakemistosta /data/wordpress/htdocs/wp-content/:

$ wp-pomo-compile
No path given as argument. Using default path.
Scanning for .po files in /data/wordpress/htdocs/wp-content/
Compiling /data/wordpress/htdocs/wp-content/plugins/woocommerce-pakettikauppa/languages/wc-pakettikauppa-fi.po ...
Compiling /data/wordpress/htdocs/wp-content/plugins/wp-native-dashboard/i18n/wp-native-dashboard-de_DE.po ...
Compiling /data/wordpress/htdocs/wp-content/languages/sv_SE.po ...
Compiling /data/wordpress/htdocs/wp-content/languages/admin-sv_SE.po ...
Compiling /data/wordpress/htdocs/wp-content/languages/plugins/akismet-fi.po ...
Compiling /data/wordpress/htdocs/wp-content/languages/plugins/bbpress-sv_SE.po ...
Compiling /data/wordpress/htdocs/wp-content/languages/plugins/woocommerce-fi.po ...
Compiling /data/wordpress/htdocs/wp-content/languages/plugins/woocommerce-sv_SE.po ...
Compiling /data/wordpress/htdocs/wp-content/languages/plugins/bbpress-fi.po ...
Compiling /data/wordpress/htdocs/wp-content/languages/plugins/wordpress-importer-fi.po ...
Compiling /data/wordpress/htdocs/wp-content/languages/plugins/akismet-sv_SE.po ...
Compiling /data/wordpress/htdocs/wp-content/languages/plugins/wordpress-importer-sv_SE.po ...
Compiling /data/wordpress/htdocs/wp-content/languages/continents-cities-sv_SE.po ...
Compiling /data/wordpress/htdocs/wp-content/languages/fi.po ...
Compiling /data/wordpress/htdocs/wp-content/languages/admin-fi.po ...
Compiling /data/wordpress/htdocs/wp-content/languages/admin-network-sv_SE.po ...
Compiling /data/wordpress/htdocs/wp-content/languages/continents-cities-fi.po ...
Compiling /data/wordpress/htdocs/wp-content/languages/admin-network-fi.po ...
Compiling /data/wordpress/htdocs/wp-content/mu-plugins/seravo-plugin/languages/seravo-fi.po ...
Done!

Seravo edistää avointa koodia

Linux-taustaisena yrityksenä Seravo on sitoutunut avoimen lähdekoodin hyödyntämiseen sekä myös osallistuu sen kehittämiseen. Varsinkin koodaajat ymmärtävät kuinka paljon valtaa koodiin piileytyy, ja siksi ohjelmoijat osaavat arvostaa sitä, että Seravon teknologia perustuu Linuxiin ja vastaaviin avoimen lähdekoodin ohjelmistohin. Seravo myös itse tuottaa parannuksia käyttämiinsä ohjelmistoihin sekä kokonaan uusia ohjelmistoja yleiseen käyttöön. Seravo Vagrantin lähdekoodi löytyy Seravon Github-tilin alta. Virheitä voi raportoida ja uusia ominaisuuksia ehdottaa julkisen ominaisuus-/virhetietokannan kautta.
Avoimen lähdekoodin kehittäminen ja julkaiseminen ei ole hyväntekeväisyyttä, vaan investointi, joka pitkällä aikavälillä tuottaa teknisesti parhaan mahdollisen ratkaisun. Samasta syystä tiedemiehetkin ovat julkaisseet tutkimuksensa avoimesti viimeisen 300 vuoden ajan. Ohjelmistojen tapauksessa kollektiivinen laadun evoluutio korostuu, koska ohjelmistoja on niin helppo ottaa käyttöön ja ohjelmistokehitykseen voi ottaa osaa paljon pienemmällä kynnyksellä kuin mitä muun alan tieteellinen työ yleensä vaatii.
Suosittelemme teknisimpiä asiakkaitamme tutustumaan Seravon ohjelmistotarjontaan ja ottamaan aktiivisesti osaa kehitykseen, joko raportoimalla vikoja, ehdottamalla uusia ominaisuuksia sekä äänestämällä jo suunniteltujen ominaisuuksien toteuttamista. Muutamat asiakkaat ja yhteistyökumppanit ovat myös tehneet suoraan paikkauksia (engl. patch) Seravon ohjelmistoihin, joista olemme erityisen kiitollisia, ja jotka tuottavat nopeiten suurimman hyödyn kaikille osapuolille.
Kuuntelemme mielellämme ehdotuksia ja ideoita palvelumme parantamiseksi!

Kommentoi

Lue lisää

Kategoriassa: Kehittäjille

PHP 8.3 saatavilla Seravon WP-palvelussa

PHP 8.3 on nyt saatavilla Seravon WP-palvelun sivustoilla.

22 helmikuun, 2024

DKIM, SPF ja DMARC: Varmista sähköpostien perillemeno DNS-tietueilla

Takkuaako sähköpostien perillemeno? Tarkistamalla domainiltasi löytyvät DNS-tietueet varmistat, etteivät viestisi päädy roskapostiin.

20 helmikuun, 2024

PHP 8.3 on julkaistu

PHP 8.3 on julkaistu. Mitä uutta siinä on ja miten pitää PHP-versio ajan tasalla?

23 marraskuun, 2023

WP-CLI v2.8.0 on saapunut

Pienten viivästyksien jälkeen WP-CLI komentorivityökalusta on julkaistu uunituore versio eilen, 31.5.2023. Uusi versio tuo mukanaan useita bugikorjauksia ja se on […]

1 kesäkuun, 2023

PHP 8.2 pian saatavilla

PHP 8.2 on pian kehittäjien saatavilla Seravon WP-palvelussa. Suosittelemme sivustoilla käytettäväksi PHP8:aa – ainakin toistaiseksi!

3 helmikuun, 2023

PHP-päivitykset Seravon WP-palvelussa

Vuonna 2022 Seravon WP-palvelussa siirryttiin käyttämään oletusarvoisesti PHP 8.0:aa, eli se on automaattisesti käytössä uusilla sivustoilla. Myös PHP 8.1 on ollut palvelussamme saatavilla, ja 8.2 pian käytettävissä.

25 tammikuun, 2023