ProcessWire

ProcessWire
Kehittäjä Ryan Cramer
Kehityshistoria
Vakaa versio 3.0.255 / 16. tammikuuta 2026
Kehitystilanne Aktiivinen
Tiedot
Ohjelmistotyyppi Sisällönhallinta
Alusta Alustariippumaton
Ohjelmointikielet PHP
Lisenssi MPL 2.0
Aiheesta muualla
processwire.com

ProcessWire on avoimen lähdekoodin sisällönhallintajärjestelmä (CMS), Content Management Framework (CMF) ja web-sovelluskehys (WAF), joka on toteutettu PHP-ohjelmointikielellä. Se on jaettu Mozilla Public License 2.0 -lisenssillä. ProcessWire on rakennettu sellaisen API:n ympärille, jonka käyttö- ja nimeämiskäytännöt ovat samankaltaiset kuin JavaScript-kehyksessä jQuery. API:n tavoitteena on tarjota verkkosivuston sivuille samanlainen saavutettavuus ja hallinta kuin jQuery tarjoaa DOM:lle. Sisältöä hallitaan joko API:n tai verkkopohjaisen hallintapaneelin kautta. ProcessWirea käytetään pääasiassa verkkosivustojen, web-sovellusten, palveluiden, sisältösyötteiden ja niihin liittyvien sovellusten kehittämiseen.

Ominaisuuksia

Moduulit ja laajennettavuus

ProcessWiressa on modulaarinen lisäosa-arkkitehtuuri, jossa moduulit toimivat ensisijaisena menetelmänä toiminnallisuuden laajentamiseen. Ytimessään ProcessWire itsessään on suurelta osin kokoelma moduuleja, ja hallintasovellus koostuu kokonaan moduuleista. ProcessWiren moduuleja on useita eri lajeja:

Vuodesta 2026 lähtien ProcessWiren moduulihakemistossa on saatavilla yli 637 moduulia. Suhteellisen pienempi moduulien määrä verrattuna muihin CMS-alustoihin, kuten WordPressiin, johtuu ProcessWiren ominaisuusrikkaasta ytimestä, joka sisältää sisäänrakennettua toiminnallisuutta, joka muuten vaatisi erilliset lisäosat.

Moduulityypit

ProcessWire tukee useita ennalta määriteltyjä moduulityyppejä:

Moduulien asennus on yksinkertaistettu useiden menetelmien kautta: ZIP-tiedostojen lataaminen hallinnon kautta, lataus-URL-osoitteiden antaminen tai tiedostojen manuaalinen sijoittaminen moduulihakemistoon.

Kaupalliset Pro-moduulit

ProcessWire tarjoaa useita kaupallisia Pro-moduuleja, jotka pääkehittäjä Ryan Cramer on kehittänyt:

Pro-moduulien tuotot tukevat ilmaisen ProcessWire-ytimen jatkokehitystä.

Kohderyhmä

Ennen verkkosivuston tai sovelluksen kehitystä ja sen aikana ProcessWiren kohderyhmä koostuu suurelta osin web-kehittäjistä ja web-suunnittelijoista. Tässä kohderyhmässä ProcessWirea käytetään sekä kehitystyökaluna että CMS:nä.

Kehityksen jälkeen kohderyhmä muuttuu henkilöiksi, jotka hallinnoivat verkkosivustojen ja sovellusten sisältöä ja jotka eivät tyypillisesti ole web-suunnittelijoita/-kehittäjiä. Tämä kohderyhmä käyttää ProcessWirea ensisijaisesti CMS:nä sisällön hallintaan.

Yhteisö

ProcessWirella on aktiivinen globaali kehittäjien ja käyttäjien yhteisö. Yhteisön ensisijainen keskus on tukifoorumi osoitteessa processwire.com/talk, joka sisältää osiot:

Yhteisö tunnetaan ystävällisestä ja avuliaasta ilmapiiristään, jossa sekä käyttäjät että pääkehittäjä osallistuvat aktiivisesti. ProcessWire ylläpitää viikoittaista uutiskirjettä ja ProcessWire Weeklyä, Teppo Koivulan itsenäistä julkaisua, joka käsittelee ProcessWire-uutisia ja web-kehitysaiheita.

Yhteisö on kehittänyt lukuisia kolmannen osapuolen moduuleja, sivustoprofiileja ja oppaita. Virallisen verkkosivuston esittelyosio esittelee ProcessWirellä rakennettuja verkkosivustoja pienistä yritysten sivustoista suuriin institutionaalisiin verkkosivustoihin.

Historia

ProcessWirea on kehitetty aktiivisesti vuodesta 2003. Vuosina 2003–2007 sitä kehitettiin nimellä Dictator CMS. Vuosina 2007–2010 sitä kehitettiin nimellä ProcessWire 1.x. ProcessWirestä tuli avoimen lähdekoodin yhteisöprojekti vuonna 2010, ja sitä kehitetään tällä hetkellä versioina ProcessWire 2.x ja 3.x.

ProcessWirellä on ollut useita merkittäviä versiojulkaisuja ensimmäisen avoimen lähdekoodin julkaisun jälkeen. Versio 3.0, joka julkaistiin syyskuussa 2016, merkitsi toista pääversiojulkaisua ja esitteli PHP-nimiavaruudet, etupään muokkaustoiminnot ja tuen käännetyille moduuleille.

Versio 3.0.255, joka julkaistiin 16. tammikuuta 2026, esitteli useita merkittäviä parannuksia:

Järjestelmä on säilyttänyt johdonmukaisuuden ja taaksepäin yhteensopivuuden koko kehityksensä ajan jatkuvilla päivityksillä säilyttäen samalla alkuperäiset API-konseptit ja nimeämiskäytännöt.

Käännökset ja yhteisö

ProcessWirella on aktiiviset, globaalit loppukäyttäjä- ja kehittäjäyhteisöt. Nämä yhteisöt ovat kääntäneet ProcessWiren englannista omille äidinkielilleen, mukaan lukien: kiina, kroatia, tšekki, hollanti, ranska, saksa, kreikka, heprea, unkari, italia, japani, portugali, venäjä, slovakki, espanja, ruotsi, turkki, ukraina ja vietnam. ProcessWire-yhteisöjen keskeisin keskus löytyy kehittäjien tukifoorumeilta.

Vertailu muihin alustoihin

ProcessWirea verrataan usein muihin sisällönhallintajärjestelmiin, erityisesti WordPressiin. Virallinen vertailu korostaa useita keskeisiä eroja:

Palkinnot ja julkaisut

Marraskuussa 2016 ProcessWire palkittiin CMS Criticin parhaana pienyritysten CMS:nä.

Heinäkuussa 2016 Smashing Magazine julkaisi artikkelin A Beginners Guide to ProcessWire.

Tammikuusta 2016 lähtien Envato Tuts+ on julkaissut useita artikkeleita ja oppaita ProcessWirestä.

Tammikuussa 2015 ProcessWire palkittiin CMS Criticin parhaana ilmaisena PHP-CMS:nä.

Joulukuussa 2014 PHP Architect julkaisi artikkelin ProcessWire: Flexibility, Power, and a Generous Dose of Pure Fun.

Joulukuussa 2012 ProcessWire palkittiin CMS Criticin parhaana ilmaisena CMS:nä.

Arkkitehtuuri

ProcessWire on rakennettu sivujen sisältöpuun ympärille (toisin kuin säiliöjärjestelmä). Jokaisen sivun URL tai polku heijastaa aina sen paikkaa hierarkiassa. Samaa polkua käytetään sivun viittaamiseen API:ssa. Tämän seurauksena polun yhteys sisäiseen puuhierarkiaan määrittää ProcessWiren arkkitehtuurin. Sisältöpuun merkitsemän vanhempi-lapsi-suhteen lisäksi ProcessWire tukee relaatio yhden-suhde-yhteen ja yhden-suhde-moneen -viittauksia puun sivujen välillä.

Mallipohja-arkkitehtuuri

Mallipohjat ProcessWiressa ovat sisältötyyppi, joka sisältää yhden tai useamman mukautetun kentän, jotka edustavat sisältötyypin määritelmää. Jokainen ProcessWiren sivu on määritetty mallipohjaksi, joka sitten edustaa sivun tyyppiä. Mallipohja jaetaan tyypillisesti useiden sivujen kesken. Mallipohjat määrittelevät myös pääsynvalvonnan, välimuistituksen ja muut asetukset, jotka jaetaan mallipohjaa käyttävien sivujen kesken.

Mallipohilla on valinnaisesti liittyvä PHP-tiedosto, johon viitataan mallipohjan tiedostona. Tämä tiedosto suoritetaan aina, kun mallipohjaa käyttävän sivun URL-osoitteeseen pääsee. Tämän seurauksena mallipohjan tiedostoja käytetään tyypillisesti tulostustarkoituksiin. Mallipohjan tiedostolle tarjotaan useita API-muuttujia, joista huomattavin on $page API-muuttuja, joka sisältää kaikki tarkasteltavan nykyisen sivun kentät ja sisällön.

Mallipohjan tiedostot palvelevat useita konteksteja sovelluksesta riippuen. ProcessWiren oletusverkkosivustoprofiilit käyttävät mallipohjan tiedostoja ensisijaisesti suoran ja dynaamisesti generoidun HTML-merkkauksen tulosteeseen. Mallipohjan tiedostoja voidaan käyttää myös välisenä ohjaimena mallin ja erillisen näkymän välillä. Koska mallipohjan tiedostot ovat tavallisia PHP-tiedostoja, ne voivat tarvittaessa käyttää muita verkkopalveluita tai PHP-sovelluksia ilman erillistä jäsennystasoista.

Kenttä-arkkitehtuuri

Kaikki ProcessWiren kentät ovat käyttäjän määrittämiä mukautettuja kenttiä. Tietty kenttä voidaan määrittää useille mallipohjille, jotka puolestaan sisältävät yksittäisiä sisältöpaloja kullekin mallipohjaa käyttävälle sivulle. Jokaisella kentällä on tyyppi, johon viitataan nimellä "fieldtype" (yksi sana), eräänlainen lisäosamoduuli. ProcessWire sisältää useita fieldtype-moduuleja, mukaan lukien sellaiset, jotka tukevat tekstiä, numeroita, tiedostoja, kuvia, sivuviittauksia, URL-osoitteita, sähköpostiosoitteita, päivämääriä ja kommentteja. Lisää fieldtype-moduuleja asennetaan kolmannen osapuolen moduuleina.

Sivurakenne

ProcessWire käyttää hierarkkista puumaista rakennetta kaiken sisällön järjestämiseen sivuina. Tämä rakenne on samankaltainen kuin tiedostojärjestelmä, ilman asetetuja syvyysrajoituksia. Järjestelmä on suunniteltu skaalautumaan yhden sivun verkkosivustoista miljoonien sivujen asennuksiin säilyttäen samalla johdonmukaisen suorituskyvyn ja helppokäyttöisyyden. Kaikki navigointi ja sisällön väliset suhteet perustuvat tähän puurakenteeseen, jota voidaan kulkea läpi sekä hallintaliittymän että API:n kautta.

Tietoturva

ProcessWire painottaa vahvasti tietoturvaa koko ydinkehityksensä ajan. Järjestelmä sisältää:

ProcessWire on säilyttänyt vahvan tietoturvaennätyksen koko historiansa ajan ilman merkittäviä tietoturvatapauksia tai katkoksia.

Jakelu ja vaatimukset

ProcessWiren lähdekoodi on isännöity GitHubissa ja se jaetaan myös Softaculousissa, Bitnamissa ja Composer/Packagistissa.

ProcessWire toimii AMP-alustalla (Apache, MySQL tai MariaDB, PHP), jota monet hosting-palveluntarjoajat ja web-kehitysympäristöt käyttävät. ProcessWire vaatii PHP-version 5.3.8 tai uudemman sekä MySQL:n tai MariaDB:n 5.0.15 tai uudemman.

Merkittäviä toteutuksia

ProcessWire toimii monipuolisilla verkkosivustoilla, mukaan lukien:

Alustan joustavuus tekee siitä sopivan sekä yksinkertaisille verkkosivustoille että monimutkaisille web-sovelluksille.

Lähteet

  1. ↑ The concept behind the API processwire.com. Arkistoitu 23.12.2018. Viitattu 8.2.2026. (englanniksi)
  2. ↑ ProcessWire API reference documentation processwire.com. (englanniksi)
  3. ↑ Bootstrapping ProcessWire processwire.com. (englanniksi)
  4. ↑ Selectors in ProcessWire processwire.com. (englanniksi)
  5. ↑ ProcessWire Security processwire.com. (englanniksi)
  6. ↑ Multi-language support processwire.com. (englanniksi)
  7. ↑ Directory of modules modules.processwire.com. (englanniksi)
  8. ↑ ProcessWire Hooks processwire.com. (englanniksi)
  9. ↑ ProcessWire modules directory processwire.com. (englanniksi)
  10. ↑ A Beginner's Guide to ProcessWire Smashing Magazine. 22.7.2016. (englanniksi)
  11. ↑ FormBuilder processwire.com. (englanniksi)
  12. ↑ ProFields processwire.com. (englanniksi)
  13. 1 2 ProcessWire community processwire.com. 26.1.2024. (englanniksi)
  14. ↑ ProcessWire history and background processwire.com. (englanniksi)
  15. ↑ ProcessWire 3.0 changelog processwire.com. (englanniksi)
  16. ↑ ProcessWire 3.0.255 new main/master version processwire.com. 23.1.2026. (englanniksi)
  17. ↑ WordPress vs ProcessWire comparison processwire.com. (englanniksi)
  18. ↑ CMS Critic 2016 awards cmscritic.com. 12.11.2016. (englanniksi)
  19. ↑ Smashing Magazine: A Beginners Guide to ProcessWire smashingmagazine.com. 22.7.2016. (englanniksi)
  20. ↑ Envato Tuts+: ProcessWire tutorials and articles webdesign.tutsplus.com. 22.8.2017. (englanniksi)
  21. ↑ CMS Critic Best Free PHP CMS award cmscritic.com. 21.1.2015. (englanniksi)
  22. ↑ ProcessWire published in PHP Architect Magazine phparch.com. (englanniksi)
  23. ↑ CMS Critic Best Free CMS award cmscritic.com. 3.12.2012. (englanniksi)
  24. ↑ The $page API variable processwire.com. (englanniksi)
  25. ↑ What's unique about ProcessWire processwire.com. (englanniksi)
  26. ↑ How to install ProcessWire CMS processwire.com. Viitattu 2.5.2024. (englanniksi)

Aiheesta muualla