Komunitní Služby Nad Systémem Wordpress
Total Page:16
File Type:pdf, Size:1020Kb
MASARYKOVA UNIVERZITA F}w¡¢£¤¥¦§¨ AKULTA INFORMATIKY !"#$%&'()+,-./012345<yA| Komunitní služby nad systémem WordPress DIPLOMOVÁ PRÁCE Michal Meloun Brno, 2010 Prohlášení Prohlašuji, že tato diplomová práce je mým p ˚uvodnímautorským dílem, které jsem vypra- coval samostatnˇe.Všechny zdroje, prameny a literaturu, které jsem pˇrivypracování použí- val nebo z nich ˇcerpal,v práci ˇrádnˇecituji s uvedením úplného odkazu na pˇríslušnýzdroj. Vedoucí práce: doc. RNDr. Tomáš Pitner, Ph.D. ii Podˇekování Na tomto místˇebych rád podˇekovalvedoucímu mé diplomové práce doc. RNDr. Tomáši Pitnerovi, Ph.D. za jeho ochotu a pomoc pˇripsaní této práce. Dále bych rád podˇekovalpanu Josefu Morávkovi za jeho vstˇrícnost,trpˇelivosta za to, že mi umožnil spolupráci se spoleˇc- ností Abstract s.r.o. a nabídl mi možnost podílet se na zajímavém projektu. Zajména bych ale rád podˇekovalmé rodinˇeza podporu, které se mi dostávalo bˇehemmých studií, jejich výchovu, lásku a trpˇelivost. iii Shrnutí Náplní této práce je prozkoumat možnosti redakˇcníhosystému WordPress pro implemen- taci komunitních systém ˚uv komerˇcnímprostˇredía dle specifikace konkrétního komerˇcního subjektu takový systém s použitím uvedené platformy implementovat. Ctenáˇrjeˇ nejdˇríve seznámen s pojmem komunitní systém a systém redakˇcní,respektive pro správu obsahu. Následuje nahlédnutí na souˇcasnéalternativní platformy jevící se jako vhodné ˇrešenípro implementaci komunitní webové aplikace respektující principy bˇežnépro Web 2.0. Dále je v práci pˇriblíženredakˇcnísystém WordPress a jeho rozšíˇreníWordPress MU, respektive ko- munitní nadstavba Buddypress. Práce seznamuje ˇctenáˇres tˇemitoplatformami, základními datovými modely a metodikou pro jejich další rozšiˇrování.Prostor je vˇenovántaké komu- nitním službám Facebook a Twitter, jelikož navržená webová aplikace dle specifikace zada- vatele tyto služby urˇcitýmzp ˚usobemintegruje. Obsahem další kapitoly je popis postupu pˇrinávrhu výsledného systému a seznámení s ním. V rámci závˇeru jsou shrnuty získané poznatky týkající se možností platformy WordPress pro ˇrešenízadaného úkolu. iv Klíˇcováslova WordPress, BuddyPress, komunitní systém, sociální programové vybavení, redakˇcnísys- tém, CMS, API, Web 2.0, Facebook, Twitter v Obsah 1 Úvod ............................................. 1 2 Komunity .......................................... 3 2.1 Pojem komunita .................................... 3 2.2 Komunitní programové vybavení .......................... 4 2.3 Komunikaˇcnínástroje ................................ 5 3 Redakˇcnísystémy ..................................... 7 3.1 Pˇredpokladypro kvalitní redakˇcnísystém ..................... 7 3.2 Funkcionalita redakˇcníchsystém ˚u ......................... 8 3.3 Klasifikace ....................................... 8 3.3.1 Cena . 9 3.3.2 Systémové požadavky . 9 3.3.3 Bezpeˇcnost. 9 3.3.4 Výkon . 10 3.3.5 Podpora . 11 3.3.6 Jednoduchost použití . 11 4 WordPress .......................................... 13 4.1 Nadstavby systému .................................. 14 4.1.1 Wordpres MU . 14 4.1.2 BuddyPress . 14 4.2 Technologie a technické požadavky ......................... 15 5 Výbˇerplatformy pro implementaci ........................... 16 5.1 Drupal ......................................... 17 5.2 ImpressCMS ...................................... 18 5.3 Elgg ........................................... 18 5.4 Shrnutí ......................................... 19 6 Vývoj a implementace systému WordPress ....................... 21 6.1 Organizace zdrojového kódu ............................ 21 6.1.1 WordPress MU a BuddyPress . 22 6.2 Datový model ..................................... 23 6.2.1 WordPress . 23 6.2.2 WordPress MU . 25 6.2.3 BuddyPress . 26 6.3 Aplikaˇcnírozhraní .................................. 28 6.3.1 Vývoj zásuvných modul ˚u . 28 6.3.2 Háˇcky . 29 6.3.3 Štítky šablon . 32 6.3.4 Ukládání dat do databáze a mechanizmus voleb . 33 7 Vybrané komunitní systémy ............................... 35 7.1 Facebook ........................................ 35 7.2 Twitter ......................................... 36 vi 8 Komunitní systém portálu Bydlení.cz .......................... 38 8.1 Analýza ........................................ 38 8.1.1 Uživatelé systému a pˇrípadyužití . 38 8.1.2 Formy komunikace . 41 8.1.3 Integrace služeb Twitter a Facebook . 43 8.1.4 Komponenty systému . 43 8.2 Implementace ..................................... 46 8.2.1 Konfigurace systému . 47 8.2.2 Rozšíˇreníkonceptu uživatelských skupin . 48 8.2.3 Zavedení redakˇcnískupiny . 50 8.2.4 Rozšíˇrenío koncept stránek a jejich propojení se skupinami . 51 8.2.5 Profily uživatel ˚u . 52 8.2.6 Zasílání zpráv do sítˇeTwitter . 54 8.2.7 Zasílání pˇríspˇevk˚una stránku aplikace Facebook . 55 8.2.8 Pˇrihlašovánía registrace uživatel ˚us použitím Facebook úˇctu . 57 9 Závˇer ............................................. 58 Literatura . 61 A Administraˇcnípˇríruˇcka .................................. 62 A.1 Kroky instalace a základní nastavení systému ................... 62 A.2 Zásuvné moduly ................................... 63 B Obsah pˇriloženéhoCD .................................. 70 vii Kapitola 1 Úvod Dnešní webové technologie jsou stále složitˇejší,uživatelé o poznání nároˇcnˇejšía tv ˚urci web ˚u mají ménˇeˇcasunež dˇríve.Pomíjí doba, kdy i relativnˇerozsáhlé webové stránky byly psány v jednoduchém textovém editoru. Nastoupil svˇetsložitých a komplexních ˇrešení.Možnosti, které poskytuje služba World Wide Web1, se od dob jejího vzniku rozšiˇrujía rozšiˇrovatbu- dou i nadále. Zmínˇenáslužba byla ve svých poˇcátcíchzaložena na obsahu statického cha- rakteru, návštˇevnícinemˇelipˇrílišmnoho d ˚uvod˚use na takové stránky vracet a jejich inter- aktivita byla témˇeˇrnulová, stejnˇejako vliv tˇechtoˇctenáˇr˚una obsah. Všechny uvedené vlast- nosti se již stávají minulostí. V rámci souˇcasnéslužby WWW obsah není utváˇrenvýhradnˇe jeho vlastníkem, na jeho tvorbˇese mohou podílet i ˇradovínávštˇevníci,vlastník m ˚užebýt pˇresunutdo role moderátora. Typickým jevem pro souˇcasnýstav služby je vysoká interakce návštˇevník˚unapˇríkladve formˇediskuzí, s pomocí takzvaných chat ˚u,ale tˇrebai s použitím aplikací, které umožˇnujísdílet sociální profil. D ˚uležitýmaspektem je návštˇevník,který již není pouze pasivním pˇríjemceminformací, ale je mu umožnˇenostát se souˇcástíkomunity a m ˚užeutváˇretvlastní profil. Aby mohla souˇcasnáslužba WWW takovéto možnosti nabízet, je zapotˇrebítechnolo- gií, s jejichž pomocí m ˚užebýt vytvoˇrenopatˇriˇcnéprostˇredí.Naštˇestíjsou již k dispozici nástroje umožˇnujícírelativnˇejednoduše zvládnout i složité úlohy. Nejen tvorba, ale i ná- sledná správa webových aplikací je tak pˇrístupnábˇežnýmzruˇcnˇejšímuživatel ˚umosobních poˇcítaˇc˚u.V souˇcasnédobˇejiž existuje nepˇrebernémnožství pˇripravenýchsystém ˚u,které umožˇnujísnadno a efektivnˇewebový obsah spravovat. Takovéto systémy jsou obecnˇeozna- ˇcoványjako systémy pro správu obsahu, v jazyce ˇceskémˇcastojako systémy redakˇcní,aˇc- koliv vzhledem k jejich souˇcasnýmmožnostem je již toto oznaˇcenímírnˇezavádˇející.Do- ménˇeredakˇcníchsystém ˚ubude vˇenovánacelá jedna kapitola. Je však na tomto místˇenutné poznamenat, že tato práce byla ˇrešenave spolupráci se spoleˇcnostíAbstract s.r.o., komerˇc- ním subjektem a pr ˚umyslovýmpartnerem Fakulty informatiky Masarykovy univerzity. Tato skuteˇcnostje d ˚uležitázejména z toho d ˚uvodu,že zadavatel kladl urˇcité nároky na technolo- gie použité pˇriimplementaci systému a upˇrednostˇnovalpoužití redakˇcníhosystému Wor- dPress pro implementaci komunitního systému. Aˇcklivexistují robustní a široce škálova- telné redakˇcnísystémy stavˇenéna nejmodernˇejšíchtechnologiích, ne vždy je jejich využití vhodné a žádoucí. V rámci této práce tedy bude kladen d ˚urazzejména na systémy, které jsou vystavˇenyna relativnˇejednoduchých, nicménˇev praxi široce využívaných technologi- 1. <www.w3.org/History.html> 1 1. ÚVOD ích. Pˇrínosempráce tak bude mimojiné ukázat jejich praktické využití. V rámci úvodu bude dále pˇriblíženaoblast komunitních systém ˚u,nebot’ implemento- vaný systém spadá právˇedo této kategorie. Po následujícím nahlédnutí do oblasti systém ˚u pro správu obsahu bude pˇriblíženavybraná platforma, tedy systém WordPress a jeho další rozšíˇrení.V této ˇcástipráce bude kladen d ˚urazna vhodnou metodiku pro implementaci a rozšiˇrováníuvedeného systému, uvedeny budou datové modely a nahlédnuto bude i do organizace zdrojového kódu. Poté následuje kratší kapitola vˇenovanákomunitním službám Twitter a Facebook, nebot’ dle zadavatele by mˇelybýt do implementovaného systému tyto služby urˇcitým zp ˚usobemintegrovány. V posledních kapitolách je vˇenovánprostor navrho- vanému systému a v rámci závˇeru jsou shrnuty získané poznatky. 2 Kapitola 2 Komunity 2.1 Pojem komunita Jelikož v rámci této práce je operováno s termíny komunitní služba a komunita, je vhodné je alespoˇnstruˇcnˇedefinovat. Pro hlubší seznámení s tˇemitopojmy lze doporuˇcitˇclánek[11] od Davida Antoše, který vyˇcerpávajícímzp ˚usobempopisuje problematiku komunit a také tak- zvaných komunitních server ˚u.Komunitu zde definuje jako jakoukoliv skupinu lidí, která mezi sebou urˇcitýmzp ˚usobemkomunikuje ˇciprovádí jiné interakce. Každá komunita ob- vykle potˇrebujenˇejakýd ˚uvod,proˇcse v konkrétním složení zformovala. M ˚užeto být fy- zická blízkost, stejné zájmy, škola, práce atp. Vˇetšinalidí je ˇclenemr ˚uznýchkomunit. Lze také specifikovat pojem internetová komunita jako komunitu osob, které se spolu nˇejakým zp ˚usobemdoruzumívají prostˇrednictvímsítˇeInternet.