Drupal

Straipsnis iš Vikipedijos, laisvosios enciklopedijos.
Peršokti į: navigaciją, paiešką
Drupal
Druplicon.vector.svg
Drupal 7 screenshot.png Pagrindinis įdiegto pagal numatymą Drupal 7 puslapis
Kūrėjas Dries Buytaert
Paskutinė versija 7.4[1] / 2011 Birželio 29
OS Cross-platform
Paskirtis TVS
Licencija GPL
Svetainė drupal.org

Drupalnemokamas ir atviro kodo[2] modulinis karkasas ir turinio valdymo sistema (TVS) parašyta PHP programavimo kalba.[3][4] Drupal naudojamas labai skirtingoms svetainėms, nuo mažų asmeninių blogų iki didelių įmonių ir politinių svetainių.[5]

Standartinis Drupal leidimas, žinomas kaip „Drupal branduolys“, turi pagrindines funkcijas kaip ir dauguma TVSų. Tai apima registraciją, paremtą individualiomis vartotojų sąskaitomis, administravimo meniu, RSS kanalus, pritaikomą išdėstymą, lanksčią vartotojų privilegijų sistemą, tinklaraščio sistemą, internetinį forumą ir galimybę sukurti klasikinę verslo svetainę ar interaktyvų bendruomenės puslapį.

Drupal taip pat buvo sukurtas tam, kad būtų galima pridėti naujų galimybių, o nestandartinis Drupal elgesys turi būti pridedamas trečių šalių. Dėl šios priežasties Drupal kartais apibūdinamas kaip „Turinio Valdymo Karkasas[3] (ang. Content Management Framework). Nors Drupal siūlo sudėtingą (patyrusiems programuotojams) programavimo sąsają kūrėjams. Jokių programavimo įgūdžių nereikalaujama pagrindiniam Drupal įdiegimui ir administravimui.[6]

Drupal galite paleisti bet kuriame kompiuteryje kuris palaiko:

  • Interneto serverį, kuriame gali veikti PHP (su versija 4.3.5+), įskaitant Apache, IIS, Lighttpd ir nginx.
  • duomenų bazę tokią kaip: MySQL arba PostgreSQL, tam, kad išsaugotų turinį ir nustatymus.[4]

Istorija[taisyti | redaguoti kodą]

Pradžioje sukurtas Dries Buytaert kaip internetinis forumas, Drupal 2001 m. tapo atviro kodo projektas.[7] Drupal yra suanglintas olandų žodis „druppel“, kuris reiškia „lašas“ (kaip „vandens lašas“).[8] Šis pavadinimas buvo paimtas iš jau išnykusios Drop.org svetainės, kurios kodas pamažu vystėsi į Drupal. Buytaert norėjo pavadinti svetainę „dorp“ (olandiškai „kaimas“, remdamasis šios bendruomenės aspektu), bet padarė gramatinę klaidą tikrinant subdomeno vardą ir pamanė, kad jis geriau skamba.[7]

Didelė bendruomenė dabar padeda plėtoti Drupal[9], ir Drupal populiarumas sparčiai auga. Nuo 2007 m. gegužės iki 2008 m. balandžio Drupal buvo atsisiųstas iš Drupal.org svetainės daugiau nei 1,4 mln. kartų, t. y., maždaug 125 % daugiau negu ankstesniais metais.[10][11]

2009 m. balandį daugiau negu 70 gerai žinomų prekės ženklų (angl. brand) ir nepelno siekiančių organizacijų naudojo Drupal. [12] Drupal yra keletą kartų pripažinta kaip geriausia Atviro Kodo TVS (Packt Open Source CMS)[13] ir tris kartus iš (eilės) laimėjo Webware 100.[14][15]

Drupal 6.19 yra naujausia versija išleista 2010 m. rugpjūtį.[16] 2009 m. kovo mėnesį Dries Buytaert paskelbė, kad Drupal 7kodo užšaldymas (code freeze)“ bus 2009 m. rugsėjo 1 d.[17] Naujausia testinė versija, DRUPAL-7-0-ALPHA-5, buvo išleista 2010 m. gegužės 23 d. [18] Kol kas nėra paskelbta Drupal 7 galutinio išleidimo data.

Drupal branduolys[taisyti | redaguoti kodą]

Drupal branduolys yra „rankinis“ Drupal įdiegimas, kuris gali būti pasirinktinai išplėstas trečiųjų šalių. Numatytoje Drupal konfigūracijoje svetainės turinys gali būti įdėtas abiejų ir registruotų vartotojų ir anonimų (svetainės administratoriaus nuožiūra) ir prieinama svetainės lankytojams įvairiais pasirinkimo kriterijais, pagal datą, kategoriją, paiešką ir t. t. Drupal branduolys taip pat įtraukia hierarchinę taxonomy sistemą, kuri leidžia turinį kategorizuoti arba „pažymėti“ (tag) su raktiniais žodžiais, tam, kad vėliau lengviau jį pasiekti.[6]

Drupal pateikia išsamų branduolio galimybių pakeitimų sąrašą pagal versiją.[19]

Branduolio moduliai[taisyti | redaguoti kodą]

Drupal branduolys apima „branduolio modulius“, kurie gali būti įjungti administratoriaus tam, kad išplėsti svetainės pagrindo funkcionalumą.[20]

Drupal branduolio paskirstymas pateikia daug funkcijų[20], įskaitant:

  • Prieigos (angl. access) statistiką ir įvykių registravimą (ang. logging)
  • Išplėstinės paieškos funkciją
  • Kešavimą (angl. caching) ir sulėtinimo (angl. throttling) galimybę tam, kad pagerinti našumą esant didelėms apkrovoms
  • Komentarus, forumus ir apklausą
  • Aprašomąsias nuorodas (pvz.: „www.pavyzdys.lt/produktai“ vietoj "www.pavyzdys.lt/?q=node/432")
  • Daugialygę (angl. Multi-level) meniu sistemą
  • Daug svetainių (angl. Multi-site) palaikymas[21]
  • Daug vartotojų (angl. Multi-user) turinio kūrimas ir redagavimas
  • OpenID palaikymas
  • RSS kanalai (angl. RSS feed) ir kanalų sujungimą (angl. Feed Aggregator)
  • Apsaugą/naujai išleistų atnaujinimų pranešimus
  • Vartotojų sąskaitas (profilius)
  • Įvairius priėjimo kontroliavimo apribojimus (vartotojo vaidmuo (angl. user roles), IP adresus, el. pašto adresą)
  • Darbo įrankius (paleidiklius ir veiksmus (angl. Triggers and Actions))

Branduolio temos[taisyti | redaguoti kodą]

Spalvų redaktorius naudojamas pakoreguoti „Garland“ branduolio temą

Drupal branduolys įtraukia keletą „branduolio temų“ kuriems galima pritaikyti savo norimą svetainės estetinį jausmą. Šios temos gali būti pasirinktos administratorių per specialų meniu.[22]

Spalvų modulis įvestas nuo Drupal 5.0 branduolio tam, kad leisti administratoriams pakeisti tam tiktų pagrindinių temų spalvų schemą per Interneto naršyklės sąsają. Ši galimybė buvo pridėta tam, kad leisti didesnį pasirinkimą vidutiniam vartotojui.[23]

Vertimai[taisyti | redaguoti kodą]

2008 m. vasarį Drupal sąsaja buvo prieinama 44 kalbomis ir plius English (pagal numatymą).[24] Kai kurie skaito iš dešinės į kairę, pavyzdžiui: arabų, persų, hebrajų kalbos. Drupal 6 pateikia pagerintą turinio ir turinio administravimo skirtingose kalbose palaikymą.[25]

Automatinio-atnaujinimo pranešimas[taisyti | redaguoti kodą]

Drupal gali automatiškai pranešti administratoriui, kai pasirodo nauja versija bet kokio modulio, temos ar paties Drupal branduolio. Ši galimybė gali padėti išlaikyti įdiegtą Drupal kaip naujausią su naujausiomis galimybėmis ir saugumo pataisymais.[25]

Automatinio atnaujinimo modulis yra identiškas savo funkcionalumu senesnėje 5.x versijoje, bet jis nebuvo įtrauktas į Drupal branduolio paketą.[26]

Išplečiamas Drupal branduolys[taisyti | redaguoti kodą]

Drupal branduolys suprogramuotas taip, kad būtų modulinis su sistema „hooks“ ir „callbacks“ kurie prieinami per API.[27] Ši konstrukcija leidžia trečiųjų šalių modulius ir temas tam, kad išplėsti arba perrašyti Drupal numatytuosius nustatymus nekeičiant Drupal branduolio kodo.

Drupal modulinė konstrukcija, kuri izoliuoja Drupal branduolio failus nuo papildomo modulio arba temos, o tai padidina lankstumą, saugumą ir leidžia Drupal administratoriams tvarkingai atnaujinti į naujausią versiją neperrašant svetainės nustatymų. Siekiant išlaikyti šį atskyrimą, Drupal administratoriai yra išmokyti vengti keisti Drupal branduolį.

Pagalbiniai moduliai[taisyti | redaguoti kodą]

Pagalbiniai Drupal moduliai siūlo įvairias funkcijas, įskaitant paveiksliukų galerijas, nestandartinio turinio tipų ir turinio sąrašų, WYSIWYG redaktorius, privačias žinutes, 3 šalių integracijos įrankius ir kita. Drupal svetainėje yra 2332[28] nemokamų modulių (2008 m. Birželio 1 d.), sukurtų Drupal bendruomenės.

Du moduliai yra ypač svarbūs tipiniams Drupal įdiegimams:[29][30]

  • Turinio Statybos Įrankis (angl. Content Construction Kit) (CCK)[31] leidžia svetainės administratoriui dinamiškai sukurti turinio tipus. Turinio tipas apibūdina bet kokios rūšies informaciją kuri turi būti saugoma svetainės duomenų bazėje. Tai gali būti pvz.: įvykiai, kvietimai, straipsniai, produktai ir kt.
  • Peržiūra (angl. Views)[32] palengvina paiešką ir turinio atvaizdavimą svetainės lankytojams.

CCK API buvo integruotas į Drupal kaip branduolio modelis į dar neišleistą Drupal 7, ir Peržiūra (angl. Views) (be jo vartotojo sąsajos) bus tam tikru momentu ateityje.[33]

Pagalbinės temos[taisyti | redaguoti kodą]

Pagalbinės temos leidžia adaptuoti arba pakeisti numatytąjį Drupal svetainės apipavidalinimą.

Drupal temos naudoja standartizuotus formatus, kurie gali būti sukurtos trečių šalių dizainerių. Daugelis Drupal temų yra užrašytos pasinaudojant PHPTemplate varikliuku[34] arba kiek mažiau su XTemplate varikliu.[35] Keletas šablonų naudoja sunkiai suprantamą (angl. hard-coded) PHP.

Nors pradinės Drupal temų sistema buvo sukritikuota[36], kad yra mažiau orientuota į dizainą ir labiau komplikuota negu Mambo, Joomla ir Plone, įtraukimas PHPTemplate ir XTemplate variklių į Drupal išsprendė kai kurias problemas. Naujojo Drupal 6 dizaino temų sistema naudoja šablonų varikliuką tam, kad atskirti HTML/CSS nuo PHP. Naujasis Drupal plėtros modulis siūlo pagalbą temų dizainų autoriams, kurie naudojasi Drupal 6.

Drupal bendruomenės sukurtos temos[37] Drupal svetainįje yra išleistos pagal GPL licenziją (nemokamai), ir daugelis jų demonstruojami „Drupal Theme Garden“[38].

Kritika[taisyti | redaguoti kodą]

  • Naudojimas (angl. Usability): Kai kurie Drupal administravimo sąsaja aspektai gali būti klaidinantys ir bauginantys, ypač naujiems administratoriams.[39] Atsižvelgiant į dizainą sąveiką ir informacijos architektūros programą Baltimorės universiteto, Drupal trūksta intuityvumo, lengvos administracijos sąsajos.[40][41][42] Administracijos vieta laikoma paslaptinga Drupal 5 ir 6 versijų, tačiau lengvo naudojimo pagerinimas yra planuojamas su 7 versija. Pagal Dries Buytaert, Drupal 7 nebus išleistos tol, kol nebus išspręsta 90 % problemų kurias identifikavo Minesotos [43][44] ir Baltimorės universiteto[42]. Naudojimas bus vienas iš pagrindinių Drupal 7 pagerinimų tam, kad sumažinti atotrūkį tarp kitų lengvesnių TVS.[45]
  • Mokymasis: Drupal yra galingas, bet kartu jis ir sudėtingas. Svarbiausia yra nugalėti sunkų pradinį mokymosi kursą.[46][47][39] Daugelis nerūpestingų vartotojų viliasi paaukoti galimybes lengvo naudojimo padarant Drupal mažiau populiarų suprantamesnį TVS nepaisant didelio funkcionalumo.[48]

Saugumas[taisyti | redaguoti kodą]

2008 m. 11 saugumo pažeidimų buvo pranešta ir ištaisyta Drupal branduolyje.[49] Saugumo skylės taip pat buvo rastos ir ištaisytos 64-iuose iš 2243 vartotojų sukurtų modulių.[49]

Kai saugumo skylės atrandamos, Drupal branduolys reguliariai atnaujinimas į naują versiją. Drupal svetainių administratoriai automatiškai pranešami apie naują versiją per „Atnaujinimų statuso“ (angl. Update Status) modulį.[50] Be to, Drupal.org skelbia saugumo pranešimus per el. paštų konferencijas „mailing list“, visą saugumo rekomendacijų istoriją,[49] saugumo vadovą[51], saugumo komandos pagrindinį puslapį, ir RSS srautą su naujausiais saugumo patarimais.[52]

Distribucijos[taisyti | redaguoti kodą]

Individualius Drupal paskirstymus apima kai kurie trečių šalių moduliai, kai kurie pakeitimai branduolyje, įskaitant vbDrupal, kuris yra Drupal integracija su vBulletin.

Drupal 4.2 [53] buvo naudojamas DeanSpace, kurie rėmė talpinimu daug nepriklausomų svetainių palaikančių 2004 m. U.S. prezidento kampaniją Howard Dean. Po Dean kampanijos pabaigos, DeanSpace projektas išaugo į CivicSpace, Drupal paremtą „liaudies organizuojamą platformą kuri apjungia kolektyvinius veiksmus viduje bendruomenių ir rišlumą jungia nuotolinės mėgėjų grupės.“

Acquia[taisyti | redaguoti kodą]

2007 m. Drupal orientuota bendrovė Acquia buvo sukurta Drupal projekto lyderių Dries Buytaert ir Jay Batson. Acquia paskelbė prenumerata pagrįstą paslaugą Drupal'ui Drupalcon Bostone 2008 m. ir pradėjo paslaugas su Acquia Drupal, distribucija paremta Drupal 6, 2008 m. rugsėjį. Prenumerata apimą vieną ir daugiau Drupal distribucijų, nustatyti laimėtoją tinklo tiekiamose pridėtinės vertės paslaugos ir prieigą prie techninės pagalbos centro.[54]

Bendruomenė[taisyti | redaguoti kodą]

Drupal turi didelę bendruomenę vartotojų ir programuotojų. Daugiau negu 500 000 registruotų narių yra Drupal.org ir virš 2000 žmonių užsiregistravo kaip programuotojai. Paskutinė pagrindinė konferencija JAV „Drupalcon Washington DC 2009“ pritraukė daugiau nei 1400 žmonių.[55] Paskutinė Europos konferencija Drupalcon Szeged 2008, kuri vyko 2008 metų rugpjūčio pabaigoje ir ją aplankė 500 žmonių.

Yra daug aktyvių Drupal forumų,[56] el. pašto konferencijų (angl. mailing lists)[57], ir diskusijų grupių.[58] Drupal taip pat palaiko keletą IRC kanalų Freenode tinkle.[59]

Drupal.org yra daugiau nei 20 nacionalinių bendruomenių kurios vartoja savo kalbą.

Užrašai[taisyti | redaguoti kodą]

  1. CHANGELOG.txt
  2. Drupal licenzijos DUK
  3. 3,0 3,1 Drupal apžvalga
  4. 4,0 4,1 Drupal sistemos reikalavimai
  5. 45 svetainės apie kurias net nesusimąstėte, kad jos gali būti paremtos Drupal
  6. 6,0 6,1 Drupal galimybės
  7. 7,0 7,1 Drupal'o oficialus istorijos puslapis
  8. Vertimas Druppel (Olandų) į anglų
  9. Koenig, Josh. "Augimo grafikas." Groups.Drupal. Nuoroda tikrinta 2009-04-08.
  10. "Drupal parsisiuntimų statistika (2008)," http://buytaert.net/drupal-download-statistics-2008
  11. "Drupal parsisiuntimų statistika (2007)," http://buytaert.net/tag/statistics
  12. "Who is Using Drupal?." Us&V. Nuoroda tikrinta 2009-04-08.
  13. "OSS CMS Award anskesni laimėtojai." Packt Publishing. Nuoroda tikrinta 2009-04-08.
  14. Drupal is a Webware 100 winner for the third year in a row
  15. Cnet.com
  16. "Drupal Project downloads." drupal.org. Nuoroda tikrinta 2009-09-16.
  17. Buytaert.net
  18. Drupal 7.0 Alpha 5 released
  19. Drupal pasikeitimai (changelog)
  20. 20,0 20,1 Drupal branduolio moduliai
  21. Daug svetainių palaikymas Drupal
  22. Drupal paskelbė, kad „garland“ tema įtraukta į branduolį
  23. Drupal.org spalvų modulio aprašymas
  24. Drupal vertimai (Vasario 18, 2008)
  25. 25,0 25,1 Drupal 6.0 naujų galimybių aprašymas
  26. Drupal atnaujinimo statuso modulio puslapis
  27. Drupal API puslapis
  28. Drupal moduliai
  29. http://blog.venture-skills.co.uk/2007/01/08/cck-views-the-ultimate-combination-part-1/
  30. http://learn.awakenedvoice.com/2007/07/30/drupal-cck-and-views-tutorial/
  31. Turinio Statybos Įrankis (angl. Content Construction Kit)
  32. Peržiūra (angl. Views)
  33. Mano Drupal pranašavimai 2008 metams | Dries Buytaert
  34. "PHPTemplate temų varikslis", Drupal.org.
  35. "XTemplate temų varikslis", Drupal.org.
  36. "Drupal lyginimas su Mambo" diskusijų tema, Drupal.org. - Sena, bet vis dar įdomi
  37. Drupal temos
  38. Drupal Theme Garden
  39. 39,0 39,1 "Drupal Addresses Security In 6.3, Usability in 7." 2008-07-10.
  40. "Drupal Usability Research Report." (PDF) 2008-05-01.
  41. "Drupal usability tests from the University of Baltimore with community solutions." 2008-06-26.
  42. 42,0 42,1 "Usability, usability, and usability." 2008-07-03.
  43. "First results from usability testing." 2008-03-10.
  44. "Report from Formal Drupal." (PDF) 2008-03-03.
  45. "Starting to work on Drupal 7." 2008-02-04.
  46. "Harnessing Drupal for Citizen Journalism." 2007-01-25.
  47. "CMS Review: Drupal." 2007-2008.
  48. "Dries Buytaert's Vision of Drupal." 2008-03-31.
  49. 49,0 49,1 49,2 Saugumo announcements | drupal.org
  50. „Atnaujinimų statuso“ modulis
  51. Drupal saugos vadovas
  52. Apsaugos RSS feed
  53. Predictions for 2004 | drupal.org
  54. Acquia DUK
  55. DrupalCon DC By the Numbers: Community, Profit, and Sustainability
  56. Drupal forumai
  57. Drupal el. pašto konferencijos (angl. mailing lists)
  58. Drupal grupės
  59. Drupal IRC kanalai