40
Vierailuluento: Lyhyt johdatus Drupaliin Joonas Meriläinen ([email protected]) Tutkimusapulainen Hypermedialaboratorio Tampereen Teknillinen Yliopisto

Johdatus drupaliin

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Johdatus drupaliin

Vierailuluento:Lyhyt johdatus Drupaliin

Joonas Meriläinen([email protected])

TutkimusapulainenHypermedialaboratorio

Tampereen Teknillinen Yliopisto

Page 2: Johdatus drupaliin

Kuka Joonas?• Tutustuin Drupaliin vajaat kaksi vuotta sitten hypermedian

projektityön merkeissä• Projektityöstä tuli päivätyö → tutkimusapulaiseksi

Hypermedialabraan• Drupal ollut käytössä jokaisessa projektissa (10+)• Olen opiskellut useita ohjelmointikieliä, mutta en ole rutinoitunut

minkään kielen osaajaksi → PHP-osaaminen on parantunut vasta Drupalin moduuleja tutkiessa ja muokattaessa

• Drupal kehityksessä monialaisuus on plussaa; yksi kehittäjä voi vastata kaikesta (tietomalli, toiminnallisuus, käyttöliittymä, ulkoasu...)

• Tällä hetkellä teen diplomityötä otsikolla “Streamlining creation of social networking services”

Page 3: Johdatus drupaliin

Taustaa ja historiaa

Page 4: Johdatus drupaliin

Drupal 1.0.0 releasedon January 15, 2001“Today, drop.org announces the release of Drupal 1.00 after an extensive period of testing. Drupal is a full-featured content management/discussion engine using Apache/PHP/MySQL and suitable to setup a news-driven community or portal site similar to kuro5hin.org and slashdot.org. Current features include discussion forums, web-based administration, theme support, an open submission queue, content management, a modularized design, PHP sessions, user management with access control and username/profanity/hostname filters, error logging, a public diary module, an affiliate site module, backend/headline generation (RSS/RDF) and much more.”

Page 5: Johdatus drupaliin

Historiaa• Alkoi 2001• Dries Buytaert• Antwerp, Belgia• Dorpje (“pieni kylä”) → Drop →

Druppel → Drupal

Page 6: Johdatus drupaliin
Page 7: Johdatus drupaliin

Yhteisö• drupal.org ja groups.drupal.org

– ~300 000 käyttäjää– ~2000 moduulia– Lähes miljoona kommenttia

pingv.com/files/images/drupal-community.png

Page 8: Johdatus drupaliin

Onko Drupal oikea valinta?Ei aina:• Blogeja varten Wordpress toimii mainiosti• Wikejä voi luoda vaikka MediaWikillä• Joomlalla onnistuu yksinkertaisen sivuston luominen helposti

Mutta:• Kun valmis ratkaisu ei miellytä, Drupalia voi laajentaa melkein

rajattomasti• Erilaiset sisältötyypit, listaukset ja näkymät onnistuu helposti• Valmiita ratkaisuita eri tarpeisiin löytyy valmiina moduuleina

Page 9: Johdatus drupaliin

Toiminta5) Ulkoasu

4) Käyttöoikeudet

3) Lohkot ja valikot

2) Moduulit (ja ydin)

1) Data (tietokannassa)

http://drupal.org/getting-started/before/overview

Page 10: Johdatus drupaliin

Keskeisimmät termit• Module (moduuli)

– Toimivat ytimen kanssa laajentaen sen toimintaa PHP-koodilla

– Ytimen moduulit, muiden moduulit, omat moduulit

– Kaksi pakollista tiedostoa, .info ja .module

Page 11: Johdatus drupaliin

Keskeisimmät termit• User, permission, role (käyttäjä, oikeus, rooli)

– Jokaisella käyttäjällä on ID: Vierailijoilla ID=0, admin=1 ja muilla >1

– Käyttäjille voidaan antaa oikeuksia roolien avulla

– Moduulit voivat määritellä omia oikeuksia annettavaksi

Page 12: Johdatus drupaliin

Keskeisimmät termit• Node (“solmu”)

– Jokainen sivuston sisältökappale on solmu– Solmuille on määritetty sisältötyyppi (sivu,

uutinen, blogimerkintä jne.)• Comment (kommentti)

– Liittyy aina johonkin solmuun

Page 13: Johdatus drupaliin

Keskeisimmät termit• Taxonomy (taksonomia, luokittelu)

– Koostuu sanastoista, jotka sisältävät termejä

– Sanastot liitetään sisältötyyppeihin– Sanastot voivat olla (rakenteellisia)

listoja tai vapaita sanastoja (=tagit)

Page 14: Johdatus drupaliin

Ytimen sisältötyypit• Page (sivu)

– Staattinen perussivu, joka yleensä sijoitetaan johonkin valikkoon

• Story (juttu)– Kuten sivu, mutta ei yleensä sijoiteta

valikkoon vaan listataan blogimaiseen tyyliin esim. Etusivulla (“River of news”) ja sitä voi kommentoida

• Blog Entry (blogimerkintä)– Kuten juttu, mutta liittyy erityisesti tiettyyn

käyttäjään• Book Page (kirjan sivu)

– Kirjat koostuvat kirjan sivuista ja niillä on hierarkia sekä mahdollisesti versiohistoria.

Page 15: Johdatus drupaliin

Ytimen sisältötyypit• Forum (foorumi)

– Sisältää aiheita (topic) ja niihin liittyviä kommentteja. Aiheet järjestetään keskustelualueiksi sanastojen (taxonomy) avulla.

• Poll (kysely)– Käyttäjät voivat vastata kyselyihin ja nähdä

muiden vastaukset• Comment (kommentti)

– Voi liittyä lähes mihin tahansa sisältötyyppiin

Page 16: Johdatus drupaliin

TeknologiaVaatimukset:• Palvelin: Apache (suositus) tai Miscrosoft IIS (versiot 5-7)• PHP: Versio 4.3.5 tai uudempi, suositus 5.2.x (Drupal7 vaatimus)• Tietokanta: MySQL 4.1 tai 5.0 (suositus) tai PostgreSQL 7.4 → Selaintuki:• Internet Explorer 6.x ja uudemmat• Firefox 2.x ja uudemmat• Opera 7 ja uudemmat• Safari 1.x ja uudemmat (+Chrome)• Camino 1.x ja uudemmat

http://www.nurweb.biz/wp-content/uploads/2009/06/browsers-icons.jpg

Page 17: Johdatus drupaliin

Drupal ja moduulitValitseminen, asentaminen, asetukset...

Page 18: Johdatus drupaliin

Mitä moduulit ovat?• Ydin tarjoaa vain

perustoiminnallisuuden ja hyvät “palvelut” moduulien käyttöön (api.drupal.org)

• Moduulit laajentavat ytimen ominaisuuksia tai toteuttavat täysin uuden toiminnallisuuden

• Toimivat vain tietyssä ytimen versiossa (Drupal6 vaatii 6.x-version moduulin)

• Saattavat käyttää muita moduuleja toimintaansa (riippuvaisuudet) http://technbiz.blogspot.com/2009_06_01_archive.html

Page 19: Johdatus drupaliin

“Moduulia mä metsästän...”Moduulien etsimiseen on useita tapoja• Lukemalla moduulien ohjeita

http://drupal.org/handbook/config/contribmodules saa käsityksen niiden toiminnasta

• Selaamalla moduulien sivuja http://drupal.org/project/modules• Googlella (esim. “drupal podcast module”)

Page 20: Johdatus drupaliin

Yleisimmät moduulit• Administration menu

– Helpottaa ylläpitäjän elämää• CCK (Content Construction Kit)

– Uusia kenttiä olemassaoleviin sisältötyyppeihin• Pathauto

– Automaattiset polut sääntöjen ja “tokenien” avulla (esim. www.lehti.fi/blogit/joonas/2009/08

• Views– Erilaisia listauksia

• Panels– Omien näkymien määrittely

Page 21: Johdatus drupaliin

Administration menu

http://drupal.org/node/523640

Page 22: Johdatus drupaliin

Administration menu

Page 23: Johdatus drupaliin

Asentaminen1. Lataa oikea versio moduulista2. Pura paketti3. Lue ohjeet (varsinkin

riippuvaisuudet)4. Kopioi palvelimelle oikeaan

kansioon (esim. sites/all/modules)5. Kytke moduuli päälle Drupalin

valikosta6. Säädä moduulin asetukset ja

oikeudet7. Testaa toiminta

gadgetmaniac.mail2web.com/2006/07/ikea-buster/

Page 24: Johdatus drupaliin

CCK (Content Construction Kit)• Mahdollistaa uusien kenttien luomisen sisältötyyppiin• Laajennettavissa alimoduuleilla (email, link, number jne.)

Page 25: Johdatus drupaliin

Views• Tarjoaa käyttöliittymän erilaisten (tietokanta)näkymien luomiseen ja

muokkaamiseen

Page 26: Johdatus drupaliin

Useita eri näyttöjä

Page 27: Johdatus drupaliin

Oletusasetuksia ja näyttökohtaisia asetuksia

Page 28: Johdatus drupaliin

Sisällön rajaaminen

Page 29: Johdatus drupaliin

Mitä halutaan näyttää?

Page 30: Johdatus drupaliin

Tulosjoukon laajentaminen

Page 31: Johdatus drupaliin

Sisällön järjestäminen

Page 32: Johdatus drupaliin

Panels• Mahdollistavat monipuolisten näkymien rakentamisen

http://drupal.org/project/panels

Page 33: Johdatus drupaliin

Panels – ominaisuuksia• Valmiita oletusnäkymiä• Voi luoda kokonaan uusia “paneeleita”, joihin voi sijoittaa

haluamaansa sisältöä (esim. Lohkoja)• Viewsin avulla voi listata haluamansa sisällön ja panelsilla sen voi

esittää haluamallaan tavalla

Page 34: Johdatus drupaliin

Asettelun voi valita valmiista vaihoehdoista...

Page 35: Johdatus drupaliin

… tai luoda kokonaan uuden (flexible)

Page 36: Johdatus drupaliin

Jonka jälkeen sisällön voi sijoittaa haluamaansa alueeseen

Page 37: Johdatus drupaliin

Jonka jälkeen sisällön voi sijoittaa haluamaansa alueeseen

Page 38: Johdatus drupaliin

Yhteenveto• Drupal tarjoaa

monipuolisen ytimen, jota yleensä joutuu laajentamaan moduulien avulla vastaamaan tarpeita

http://developmentseed.org

Page 39: Johdatus drupaliin

Yhteenveto• Ohjelmointia ei

tarvitse osata yleisesti ottaen moduulien käyttämiseen, mutta moduulien ohjeisiin tutustuminen on pakollista

• HTML/CSS/PHP-taidot ovat hyödyksi, jos haluaa luoda räätälöidyn kokonaisuuden

http://developmentseed.org

Page 40: Johdatus drupaliin

Yhteenveto• Uuden sivuston rakentaminen vaatii määrittelyä,

suunnittelua ja toteutustyötä, Drupal ei tarjoa valmista ratkaisua oikeastaan minkäänlaiseen sivustoon

http://developmentseed.org