Showcase: Drupal harrastekäytössä

Salibandyseura Greasers FBC:n nettisivut päivitettiin kesällä 2009 Drupal-alustalle. Tämä showcase on kirjoitettu nimenomaan harraste-webmasterin näkökulmasta. Raportti ei varmaan Drupal.fi:n vakiokäyttäjiä juuri kosketa, mutta veikkaan, että aika moni Drupaliin tutustuja käy samoja vaiheita läpi.

Kuva: Greasers FBC - www.greasers.net

Taustaa

Greasers FBC on korsolainen harrastetason salibandyseura (3 joukkuetta, n. 50 jäsentä), meidän mottomme on aina ollut harrastaa "salibandya tosissaan muttei turhan vakavasti". Aktiiviset nettisivut ovat aina olleet oleellinen osa seuran toimintaa, ja suhteellisen pitkän perinteen vuoksi sivuilla käy yllättävän paljon lukijoita.

Sivuston varsinainen muutostarve lähti liikkeelle siitä, että vanha sivusto oli kasattu vuosien varrella irtonaisista palikoista. Sisältömäärän kasvaessa ylläpitäminen oli työlästä. Uutiset pyörivät WordPressillä, pelaajatilastot, pelaajakortit, bannerit, lomakkeet, käyttäjähallinta ja moni muu pienempi asia pyöri omilla irtonaisilla PHP-palikoillaan.

Lisäksi edellisen webhotellin tekniikka ja palvelutaso oli hieman arvelluttavalla tasolla, joten edessä oli joka tapauksessa sivuston siirto uuteen ympäristöön.

Miksi juuri Drupal?

Kesällä 2008 tilasin uuden webhotellin, ja kesäloman jälkeen asentelin sinne joukon erilaisia julkaisujärjestelmiä tutustumista varten. Syksyyn mennessä tein vertailua lähinnä Drupalin, Joomlan ja WordPressin välillä.

Valintakriteereitä:

  • Säilyttää tuttu ilme, rakenne ja toiminnallisuudet ulkoisesti ennallaan.
  • Suoraviivaistaa ylläpitoa, yksi CMS huolehtii kaikesta.
  • Hakukoneystävällisyys ja selkokieliset URLit, mielellään myös mahdollisuus säilyttää vanhojen sivujen osoiterakenne.
  • Luotettava, skaalautuu myös myöhempiin tarpeisiin.
  • WYSIWYG + kuvien hallinta.
  • Jäsentietojen hallinta.
  • Uutisten kommentointi kuten ennenkin, mutta roskaposti pitää saada hallintaan.

WordPressistä oli hyviä kokemuksia, ja sen editorin käyttöliittymä on edelleen lyömätön. Se on paras blogialusta ja WordPress kelpaa ainakin yksinkertaisen sivujen tekemiseen.

Joomla oli varteenotettava vaihtoehto, mutta jotenkin jäi kokeiluissa sellainen kuva, että se oli melkein kuin Drupal mutta pari astetta kevyempi.

Vaaka kallistui Drupalin suuntaan ehkä vähän sattumalta: Löytyi juuri meidän näköinen ja tarpeisiin sopiva teema, mahdollisuus syöttää sisältöeditorissa PHP:ta (vaikka ominaisuutta ei ole lopulta juurikaan käytetty), joustava sisältöjärjestelmä ja käyttäjähallinta.

Jälkikäteen miettien vertailu ei ehkä ollut ihan objektiivinen. Drupal houkutteli koska sillä on tehty paljon näyttäviä ja isoja sivustoja. Joomla, CMSMadeSimple tai vaikka urheiluseurojen suosima Kotisivukone.fi olisivat kevyesti täyttäneet Greasers FBC:n kaltaisen harrasteseuran tarpeet. Toisaalta osa Drupalin eduista on selvinnyt vasta jälkikäteen.

Drupalin käyttöönoton aikataulu

Talven aikana pyörittelin iltaisin Drupalia, testailin erilaisia moduleita ja teemoja. Pääsiäisenä vietin neljä päivää tiiviimmin aiheen parissa ja löin nykyisten sivujen rakenteen kasaan.

Vappuna seuran sisäiseen testaukseen uusi Drupal-asennus. Se oli jo aika lopullisen oloinen, ja omalta porukalta tuli muutama hyvä kehitysidea sivujen suhteen.

Kesällä 2009 uusi webhotelli tilaukseen, lopullinen sivusto kasaan, sisällön siirtoa vanhasta uuteen ja lopuksi sivujen julkaisu.

Kokemuksia Drupalin käyttöönotosta

Drupalin perusasennus on helppoa. Webhotellissa oli jopa tarjolla Fantastico Deluxe, josta voi asentaa Drupalin ja liudan muita Open Source -tuotteita käyttöönsä.

Kun Drupal oli asennettu, niin siitä se työ vasta alkoikin. Ensimmäisten admin-toimintojen tekeminen vaatii perehtymistä ja vaivannäköä. Mutta kun ensimmäisistä vaiheista pääsee ohi, niin Drupalin hallinnointi alkaa sujua aika luontevasti.

Harrastekäyttäjälle isoimmat kynnykset:

  • Drupalin asennus + kielitiedosto.
  • Teema (lohkojen käyttö, teeman muokkaaminen).
  • Tärkeimmät modulit: Views, CCK, Pathauto, WYSIWYG editori.
  • Käyttäjähallinta ja käyttäjien oikeudet.
  • Omat sisältötyypit.
  • Cron.
  • Ensimmäisistä versiopäivityksistä selviäminen.

Etenkin Views-moduli oli alkuun vaikea hahmottaa, mutta kun sen perustoiminnoista pääsee jyvälle, niin ymmärtää, miksi Drupal on loistava työkalu tehdä nettisivuja. Jos ei aio hyödyntää Viewsin mahdollisuuksia, niin kannattaa valita jokin yksinkertaisempi julkaisujärjestelmä.

Kuva: Views esimerkkejä: Tuoreimmat uutiset, Tuoreimmat GIII -joukkueen uutiset, Korson Kodin mainospalsta ja seuran sisäinen puhelinluettelo

Cron-ajon suorittaminen oli itselle aika vieras asia. Säännöllinen cron on kuitenkin ehdottoman pakollinen toimenpide Drupal-sivustolla, onneksi webhotellin palvelupaketista löyty Cron job, jolla sen saa tehtyä automaattisesti. Vaihtoehtona on käyttää vaikka Poormanscron-modulia.

Drupal on ehdottomasti paras CMS, jota olen ikinä käyttänyt. Drupal saattaa hävitä tietyissä yksityiskohdissa jollekin toiselle (esim. WordPressissä yksittäisen kirjoituksen tekeminen on selkeästi edellä), mutta heikotkin kohdat ovat Drupalissa riittävän hyviä, ja moduleilla voi muuttaa asioita haluamaansa suuntaan.

Kokemuksia Drupal sivustosta

Kesällä julkaistu sivusto on lähtenyt ongelmitta liikkeelle. Drupalista tuntuu löytyvän toiminto tai valmis moduli kaikkiin tarpeisiin, joita on ehdotettu, tosin resurssisyistä ihan jokaisen idean perässä ei kannata juosta.

Yksittäisen artikkelin kirjoittamisessa aiempi WordPress oli parempi, mutta Drupal on ollut riittävän hyvä. Tein sisällöntuottajille lyhyen ohjeen, ja tarkoitus oli pitää porukalla pieni koulutussessio. Yhteistä aikaa ei ole löytynyt, mutta kaikki ovat ihan omatoimisesti osanneet uutisia julkaista ja sivuja päivittää.

Sivuilla ei ole ollut ainuttakaan Drupalista johtuvaa ongelmaa. Kaikkia havaitut hidastelut ovat johtuneet webbihotellista tai nettiyhteyksistä, ja löytyneet bugit ovat olleet omia kämmejä.

Ongelmia, joihin olen törmännyt

FTP-ohjelma sotki binäärit / text filet, ja Drupalin upgreidaaminen ei onnistunut. Etsin vikaa asennuksesta, webbihotellista ja vähän kaikkialta, ennen kuin huomasin päivittää FTP-clientin tuoreempaan versioon.

PHP5/PHP4-ongelma. Webhotelli tarjoaa PHP4- ja PHP5-tuen. Oletuksena on PHP4, Drupal asentui silläkin, mutta se aiheutti erikoisia ongelmatilanteita: Admin-sivuille pääsi vain satunnaisesti, cron-ajo aiheutti herjan, sivujen muokkaus aiheutti virheitä. Homma korjaantui, kun älysin, mistä on kyse ja htaccessilla määräsin hakemiston käyttämäään PHP5:ttä.

Menunavigaatio on vähän sekava käyttää, jos tekee tavallisia staattisia sivuja, niin pitää erikseen määritellä, mikä on linkin nimi ja mihin kohtaan navigaatiota pudotetaan. Tämä liittyy Drupalin perusajatukseen yhteisöllisyydestä, eli Drupal ajattelee, että lähes kaikki sisältö on uutisia, bloggauksia, kommentteja jne "ei-hierarkkisesti" näytettävää sisältöä. Hierarkkista navigaatiota varten on kuitenkin tarjolla erilaisia moduleita.

Core-tiedostoja ei pidä ronkkia. Tein joitakin muutoksia ydinmodulien CSS-tiedostoihin ja hakutuloksen listaukseen, ja sitten versiopäivityksessä muutokseni katosivat. Vahingosta viisastuneena tein muutokset oman teeman alla oleviin templateihin, jotka sitten ohittavat halutut coren, modulien ja teeman toiminnot.

Drupalin ja modulien päivityksissä kannattaa aina lukea se julkaisutiedote, varsinkin jos käyttää ei-valmiita moduleita. Ja tietokannasta kannattaa ottaa varmuuskopio ennen päivityksiä, ei ole mukava törmätä virheeseen ja lukea jälkikäteen seuraavankaltaista viestiä:

Kuva: Path redirectin päivitysversio ei ole yhteensopiva Pathauton kanssa

Mitä olisi voinut tehdä paremmin?

Jälkikäteen on harmittanut, kun en tehnyt testailuvaiheessa kunnollisia muistiinpanoja. Testasin talvella ahkerasti kaikenlaisia moduleja ja rakenteita, mutta enää en muista, miksi valitsin vaikkapa Google kalenterin moduliksi GCal Eventsin enkä suositumpaa Agendaa.

Testisaittien pyörittäminen webhotellissa oli vähän kankea ratkaisu. Toisaalta kun tiedossa oli, että lopullinen sivusto sijoitetaan tavalliseen webhotelliin, on hyvä pyörittää testitkin vastaavassa ympäristössä.

Vinkkejä muille

Harrastekäytössä webhotelli asettaa tietyt reunaehdot, jonka mukaan täytyy toimia. Esimerkiksi Imagecache (loistava työkalu kuvien hallinnoinnissa) ja monet suorituskykyä parantavat systeemit toimivat heikosti tai ei lainkaan tavallisissa webbihotelleissa.

Kuva: Webhotelli ei riitä ainakaan kaikkein hienoimpien kuvankäsittelymodulien tarpeisiin

Kaikkeen sisällön tuottamiseen ei tarvitse olla Drupal-työkalua. Esimerkiksi meillä pelaajatilastot on aina ylläpidetty Excelissä, josta ne siirretään sivuille copy-paste -menetelmällä. Samaten käytämme edelleen tuttua Google-kalenteria, mutta Google-kalenterin tapahtumatietojen näyttämiseen on tarjolla valmiita moduleita.

Kuva: Google kalenterin tapahtumat listataan etusivulle

Kaikkea mitä Drupal tarjoaa ei kannata väkisin käyttää. Drupal.orgista löytyy moduleja Tetriksestä säätietoihin ja pörssikursseihin, kannattaa silti ainakin alkuvaiheessa keskittyä ihan perusasioihin. Enemmän toimintoja = enemmän mahdollisuuksia, että jotain menee rikki.

Drupalilla saa itselleen hyvät kotisivut, mutta se vaatii joko aikaa tai rahaa. Jos tekee itse, niin projektiin kannattaa varata aikaa reilusti, sillä Drupalin suurin haaste on sen monipuolisuus. Open Sourcen yksi hyvä puoli on, että itse tekemisen ja palvelun ostamisen voi yhdistää: Drupalin voi asentaa ja testailla toimintoja omatoimisesti, vaikka varsinaisen tuotantosivuston tekemisen antaakin ammattilaisten hoidettavaksi.

Hyvä showcase!

Lisää tälläistä kaipaamme Drupal.fi:hin. Tavoitteena olisi saada myös kaupallisista palveluista saman tyyppisiä showcase-kuvauksia, mutta myös kaikki harrasteprojektien kuvaukset ovat todella tervetulleita.