Redakční systémy. doc. Ing. Miloslav Hub, Ph.D. Pardubice, listopad 2012



Podobné dokumenty
Olga Rudikova 2. ročník APIN

Redakční systém Joomla!

SOU Valašské Klobouky. VY_32_INOVACE_3_20_IKT_Tvorba_webovych_stranek_Redakcni_systemy. Mgr. Radomír Soural. Zkvalitnění výuky prostřednictvím ICT

Název: On-line tvorba webu Anotace:

Redakční systém Joomla. Prokop Zelený

Obsah. Rozdíly mezi systémy Joomla 1.0 a Systém Joomla coby jednička online komunity...16 Shrnutí...16

Drupal konference sobota,

Drupal. Svobodný redakční systém. duben 2007 Jakub Suchý 1

Současný svět Projekt č. CZ.2.17/3.1.00/32038, podpořený Evropským sociálním fondem v rámci Operačního programu Praha adaptabilita

Systém JSR představuje kompletní řešení pro webové stránky malého a středního rozsahu.

PHP PHP je skriptovací programovací jazyk dynamických internetových stránek PHP je nezávislý na platformě

Dobrý CMS Popis produktu a jeho rozšíření

Seminární práce z předmětu UPI

Kritéria pro výběr uživatelského prostředí Joomla

Na vybraném serveru vytvoříme MySQL databázi. Soubory scratch.jpa, kickstart.php a en-gb.kickstart.ini nahrajeme na vybraný server.

Dobrý SHOP Popis produktu a jeho rozšíření

SOFISTIKOVANÉ NÁSTROJE PRO JEDNODUCHOU TVORBU PROFESIONÁLNÍCH WEBOVÝCH PREZENTACÍ

DOKUMENTACE REDAKČNÍHO SYSTÉMU PINYA

Vyšší odborná škola a Střední škola,varnsdorf, příspěvková organizace. Šablona 4 VY 32 INOVACE

Popis služby MiniNET.cz. Výhody našeho řešení. Zadávání zakázky a průběh. Balíčky služeb

Dobrý FOTO Popis produktu a jeho rozšíření

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

Tvorba webu v HTML. Redakční systém. CMS Joomla! Co je Joomla

Formy komunikace s knihovnami

Manuál pro obsluhu Webových stránek

OFPMAFIA.EU - WORDPRESS MANUÁL

Tvorba webových aplikací s využitím Open Source CMS. Lukáš Dubina. Vedoucí práce. PaedDr. Petr Pexa

Databázové aplikace pro internetové prostředí PHP úvod, základní princip, vkládání skriptu, komentáře, výpis na obrazovku

Správa obsahu webové platformy

DELTA - STŘEDNÍ ŠKOLA INFORMATIKY A EKONOMIE, s.r.o. Obor informační technologie AJAX ESHOP. Maturitní projekt. Třída:

Úvod do programovacího jazyka Python

Redakční systémy 1. pro správu obsahu

Pryč jsou ty doby, kdy bylo nutné kvůli každé malé úpravě webových stránek shánět odborníka, který

PHP framework Nette. Kapitola Úvod. 1.2 Architektura Nette

Mediální komunikace. Vysoká škola mezinárodních a veřejných vztahů PhDr. Peter Jan Kosmály, Ph.D

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ /14

Střední odborná škola a Střední odborné učiliště, Hořovice

Návrh uživatelského rozhraní Jednoduchý portál s recepty D1 + D2

Nahrání webu na internet

Snadná úprava stránek, nemusím umět HTML, tvořím obsah téměř jako ve Wordu. Jak změnit obsah nástěnky: vpravo nahoře Nastavení zobrazených informací

INOVACE PŘEDMĚTŮ ICT. MODUL 11: PROGRAMOVÁNÍ WEBOVÝCH APLIKLACÍ Metodika

Příloha č. 1. Systém webových stránek města Česká Lípa. I. Vymezení předmětu VZ

Obsah. 1) Rozšířené zadání 2) Teorie zásuvných modulů a) Druhy aplikací používajících zásuvné moduly b) Knihovny c) Architektura aplikace d) Výhody

Profesionální internetové stránky dostupné pro každého. více než 100 spokojených uživatelů.

TAOX Konfigurátor potisku seznam funkcí

Systémy pro tvorbu digitálních knihoven

KAPITOLA 1 SOCIÁLNÍ SÍTĚ A PHP...17

Registrační číslo projektu: Škola adresa:

E-learningovýsystém Moodle

Manuál k systému RS4S. verze 1.2

Projekt implementace OS Linux do výuky informačních technologií

Maturitní otázka webové stránky (technologie tvorby webu) Co znamená pojem Web? Web, www stránky, celým názvem World Wide Web,

SYLABUS IT V. Jiří Kubica. Ostrava 2011

IS pro podporu BOZP na FIT ČVUT

Střední odborná škola a Střední odborné učiliště, Hořovice

Maturitní projekt do IVT Pavel Doleček

Akční nabídka marketingového řešení pro neziskové organizace

STŘEDNÍ ŠKOLA INFORMAČNÍCH TECHNOLOGIÍ A SOCIÁLNÍ PÉČE

1. Úvod do Ajaxu 11. Jak Ajax funguje? 13

OBJEDNÁVÁNÍ DÁRCŮ KRVE PŘES INTERNET Naděžda Kalužová, Zdeněk Slanina

Administrační rozhraní Drupalu

WNC::WebNucleatCreator

DOKUMENTACE. L A TEX

rychlý vývoj webových aplikací nezávislých na platformě Jiří Kosek

1 Webový server, instalace PHP a MySQL 13

WORKWATCH ON-LINE EVIDENCE PRÁCE A ZAKÁZEK

Internetové služby isenzor

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework

Uživatelská příručka. Vytvořte jedničku mezi stránkami v několika jednoduchých krocích

O projektu Nasazení OpenOffice.org v praxi

UNIVERZITA PALACKÉHO V OLOMOUCI

schopni vysvětlit, co znamená protokol NFS a k čemu se používá; umět rozpoznat autorské dílo a znát autorská práva;

webmarketin Základní moduly aplikace

O projektu OpenOffice.org a IBM OS/2 OS/2 a Open Source

Individuální projekt z předmětu webových stránek 2012/ Anketa

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Software programové vybavení. 1. část

Základní pojmy spojené s webovým publikováním ~ malý slovníček pojmů~ C3231 Základy WWW publikování Radka Svobodová, Stanislav Geidl

Nabídka internetového obchodu

CZ.1.07/1.5.00/

Název materiálu: Open Office

Úvod do programovacího jazyka Python

AudioKnihovna. Harvie's JuKe!Box. ~Tomáš Mudruňka~ codename. Maturitní projekt SSPŠ 4.I 2008/2009

Moodle uživatelská příručka

Linuxové distribuce. Michal Dočekal

Alternativní operační systémy. Martin Drlík, Daniel Krotil OSY2A, ITV

nástroj pro jednoduchou správu a vedení agendy studentských počítačových sítí na kolejích SU OPF Karviná Ing.

Obsah Redakční systém Wordpress

1. Webový server, instalace PHP a MySQL 13

Úvodem 9. Zpětná vazba od čtenářů 10 Zdrojové kódy ke knize 10 Errata 10. Než začneme 11

Internet Information Services (IIS) 6.0

9. Software: programové vybavení počítače, aplikace

SRSW4IT Inventarizační SW. Prezentace aplikace. Vedoucí DP: ing. Lukáš Macura Autor: Bc. Petr Mrůzek

Redakční systém WordPress MU Manuál pro uživatele

ABRA Software a.s. ABRA on- line

Webové stránky Webové aplikace WebDesign Internet Marketing VAFRO CMS MODUL REALITY

MODULÁRNÍ REDAKČNÍ SYSTÉM (CMS), SE ZAMĚŘENÍM PRO FIREMNÍ

Obsah. Úvod... 9 Použité zdroje... 9 O autorovi... 10

1 Administrace systému Moduly Skupiny atributů Atributy Hodnoty atributů... 4

Transkript:

Redakční systémy doc. Ing. Miloslav Hub, Ph.D. Pardubice, listopad 2012 Tento studijní materiál byl vytvořen s podporou projektu FRVŠ 375/2012 s názvem "Inovace studijního předmětu Tvorba WWW stránek".

Co je to Redakční systém? Program zajišťující správu dokumentů (nejčastěji webového obsahu). Známé pod zkratkou CMS - Content management system (Systém pro správu obsahu). Systém, který je dostupný přes webové rozhraní a umožní jednoduše spravovat články, fotografie a další multimediální obsah bez znalosti skriptovacího jazyka typu PHP či ASP (je i pro laickou veřejnost). Úpravy jsou prováděny pomocí jednoduchého online WYSIWYG editoru. 2

Komerční vs. Open Source Existuje tisíce systémů, které jsou k dispozici zdarma nebo na komerční bázi. Nejúspěšnější a nejpoužívanější systémy jsou šířeny pod svobodnou licencí (nejčastěji GPL nebo LGPL) a obvykle jsou k dispozici zdarma. Open Source (software s otevřeným zdrojovým kódem, otevřený software, svobodný software) - otevřenost znamená technickou dostupnost kódu a legální dostupnost licenci softwaru, která umožňuje, při dodržení jistých podmínek, uživatelům zdrojový kód využívat, např. prohlížet a upravovat. Software pod touto licencí je možno dále šířit. Na druhé straně je však i mnoho komerčních programů či řešení přímo na míru danému zákazníkovi nebo uživateli. 3

Rozhraní CMS Systém má obvykle dvě části, které nazýváme: uživatelská (frontend, označováno FE) část webu, viditelná běžným uživatelům např. u internetového obchodu jde o katalog se zbožím správcovská (backend, označováno BE) část webu sloužící k administraci a zpracování dat např. u internetového obchodu jde o vkládání nového zboží Pro uživatele je důležité uživatelsky přívětivé rozhraní. Podle odbornosti uživatele je možné zajistit přístup k jedné nebo druhé části rozhraní a umožnit tak správu a úpravu obsahu www stránek. 4

Základní administrátorské funkce Tvorba, publikace, editace www stránek a dokumentů s využitím online WYSIWYG editoru pro snadné formátování textu a obsahu stránky. Tvorba, publikace, editace článků, příspěvků a aktualit s využitím online WYSIWYG editoru pro snadné formátování textu a obsahu příspěvku. Správa vzhledu webu s využitím volně šiřitelných či vlastních šablon. Správa uživatelů, nastavení uživatelských oprávnění a přístupových práv. Správa dokumentů a řízení přístupu prostřednictvím práv. Další funkce, jež se do CMS instalují formou rozšíření (tj. podle daného redakčního systému to může být např.: modul (WordPress, Drupal, Joomla!); komponenta a pluginy (Joomla!), či jazykové balíčky jedná se např. o fotogalerie, diskusní fóra, ankety a další. 5

Typy redakčních systémů Při tvorbě a programování CMS se používají různé programovací jazyky a platforemy. Ty nejjednodušší, které se v současné době již téměř nevyužívají jsou naprogramovány v jazyce JavaScript (např. TiddlyWiki). Nejběžněji se při programování CMS využívá jazyk PHP často s kombinací databázového systému MySQL (např.: WordPress, Joomla!, Drupal, aj.). Některé PHP systémy se obejdou bez využití jakékoliv databáze. Jako další programovací jazyk pro tvorbu CMS můžeme zařadit Javu nebo řešení společnosti Microsoft - platforma ASP a její novější nástupce ASP.NET, které využívají programovací jazyky VBScript a Jscript. 6

Základní pojmy HTML CSS JavaScript PHP 7

GNU General Public License Jedná se o tzv. svobodnou licenci GNU GPL, zaručující uživatelům jistá práva pro šíření a úpravy software za určitých podmínek. Uživatel tak má právo na tzv. zdrojové kódy, které mu umožní studovat funkčnost daného programu a upravovat ji, jak potřebuje. Pokud se později rozhodne vlastní, upravený produkt šířit dále, je nutné dodat vlastní zdrojový kód se všemi úpravami, které v něm byly provedeny. Toto je hlavní zásada této licence nikdo v tomto řetězci nesmí být ochuzen o možnost studovat, šířit a upravovat. Pokud je produkt vytvořen jako odnož z jiného, šířeného pod GNUGPL, musí daný produkt automaticky použít GNU GPL licenci. Toto se označuje jako virálnost GNU GPL licence. 8

HTTP server / webový server Je softwarový webový server, který může být dostupný na různých platformách operačních systémů, např.: GNU/Linux, BSD, Solaris, Mac OS X, Microsoft Windows a dalších platformách a který dodává prohlížečům internetových stránek obsah. Webový server je počítač, zodpovědný za vyřizování požadavků HTTP od klientů. Vyřízení požadavků znamená odeslání webové stránky. 9

Výhody redakčního systému (1) Značná automatizace a efektivnost práce s daty, nezávislost ve smyslu použití operačního systému a webového prohlížeče, uživatel má přístup k redakčnímu systému kdykoliv a odkudkoliv s internetovým připojením, uživatel není závislí na specializovaném tvůrci internetových stránek, stránky si sám vytváří a spravuje, jednoduché ovládání celého redakčního systému obvykle s nenáročnou a příjemnou administrací, 10

Výhody redakčního systému (2) jednoduchá správa webu s využitím online WYSIWYG editoru, díky kterému má uživatel možnost s jednotlivými stránkami a příspěvky pracovat jako ve standardním textovém editoru, které jsou obsaženy například v MS Office či OpenOffice, velký rozsah funkčnosti CMS systému (v samostatném CMS nebo formou komponent, modulů, pluginů a dodatečných programů), výstupem je validní XHTML kód webových stránek podle konsorcia W3C (pokud uživatel sám nestandardně neupravujeme kód) snadné přidávání nového obsahu, 11

Výhody redakčního systému (3) nenáročnost na softwarové vybavení webového serveru, kde jsou stránky s redakčním systémem nainstalovány (v dnešní době již téměř každý webový server redakční systémy podporuje), u volně distribuovaných systémů (tj. Open Source) nejsou žádné pořizovací náklady - jsou zdarma. podpora implementace jakékoliv vzhledu stránek, jednoduchá práce s obrázky a soubory nástroje SEO (optimalizace pro vyhledávače) jsou obvykle součástí a další 12

Příklady použití Microsite (malý web doplňující hlavní www prezentaci), osobní stránky, komerční a firemní webové stránky, komunitní weby, blogy, portály, časopisy a noviny, stránky institucí (knihovny, obecní a městské weby, neziskové organizace a další), galerie, katalogy. 13

Kde CMS použít? CMS systémy se používají zejména tam, kde je potřeba častá aktualizace stránek. V případě, že uživatel nemá dostatečné finanční prostředky na programátora. Na webu, kde nejsou potřeba speciální funkce. Jestliže stránky nejsou často neaktualizovány a jsou prováděny pouze malé počty úprav na stránkách, stačí naprogramovat statické webové stránky bez použití těchto systému. 14

Schéma funkcionality webového serveru 15

Zákl. funkce webového serveru Webový prohlížeč vyžádá stránku z webového serveru. Webový server získá obsah (kód HTML) požadovaného statického souboru HTML (např. http://test.cz/index.html) a vrátí ho prohlížeči. Soubor se označuje jako statický, protože je obsah vrácený prohlížeči totožný s obsahem souboru uloženého na serveru. 16

Schéma webového serveru s použitím CMS (1) všeobecné schéma pro fungování redakčního systému na server (Joomla! = redakční systém) 17

Schéma webového serveru s použitím CMS (2) Webový prohlížeč vyžádá stránku (např. http://test.cz/index.php) webového serveru. Požadavek způsobí načtení části redakčního systému webovým serverem a jeho provedení v interpreteru PHP tohoto serveru. Redakční systém analyzuje požadavek za účelem určení toho, jaký obsah se požaduje, poté vytvoří spojení s databázovým serverem a vyžádá daný článek z databáze. 18

Schéma webového serveru s použitím CMS (3) Poté, co se obsah článku načte, naformátuje redakční systém článek s použitím zvoleného stylu v podobně uživatelské šablony. Redakční systém vytvoří obsah ve formátu HTML a odešle ho zpět prohlížeči, který ho uživateli prezentuje stejným způsobem, jako by se jednalo o statický soubor HTML. Redakční systém dynamicky poskytne webovému prohlížeči obsah získaný z databáze (naformátovaný s použitím šablon webu). Protože se obsah článku ukládá ve formě textu, je možné prezentaci změnit pouhou úpravou šablony systému redakčního systému. 19

Technické požadavky CMS na server (webhosting) Každý CMS má jiné požadavky na verze a typy daných programových vybavení serveru. Většina programových požadavků na server se však u nejpoužívanějších Open Source CMS shoduje, jsou to: webový server Apache, podpora jazyka PHP, databázový systém MySQL. Důvod je jasný jedná se také o Open Source vybavení serveru, které jsou oproti komerčním programovým vybavením serverů licence užívání těchto CMS je zdarma platí se pouze za provoz webhostingu. Samozřejmostí je i podpora FTP serveru, aby bylo možné stránky na vzdálený server nahrát. 20

Co je (web)hosting? Webhosting je pronájem prostoru pro webové stránky na cizím serveru. Pronajímatel serveru bývá označován jako poskytovatel webhostingu (webového prostoru). Díky webhostingu je možné webové stránky umístit na internet, aniž by bylo nutné mít vlastní server. Ceny za webhosting se pohybují od pár Kč až po několik tisíc Kč za měsíc. Existuje i bezplatná varianta, tzv. freehosting. Freehosting obvykle nezahrnuje žádné záruky ohledně funkčnosti, má omezenou technickou podporu. Často je s freehostingem spojeno umisťování reklamy na stránkách. 21

CMS na lokálním prostředí počítače Prostředí AMP (Apache MySQL PHP balíček) pro testování a budování stránek v lokálním prostředí PC. Záleží na platformě PC. Nejznámější a nejoblíbenější AMP: XAMPP Mac, Win, Linux, Solaris - v angličtině, složitější ovládání oproti WampServeru (http://www.apachefriends.org/en/xampp.html) WampServer Win - obsahuje i češtinu, jednoduchý na správu (http://www.wampserver.com/en/) 22

Nejpoužívanější CMS na webu 23

Nepoužívanější CMS v ČR Jak vyplývá z diagramu nasazení Open Source i komerčních CMS, tak mezi 3 nejpoužívanější patří Open Source produkty, které mají i v ČR nějvětší zastoupení a podporu komunit kolem těchto systémů. Jedná se o: WordPress Joomla! Drupal 24

Výběr CMS (1) Vybrat z několika desítek volně CMS systému ten nejlepší je zcela nemožné. Každý z nich má svá pro a proti. Velmi podstatné je, k jakému účelu má web s daným redakčním systémem sloužit a co od něj očekává jak administrátor, tak uživatelé. Například na firemní stránky jsou jiné nároky než na malý osobní blog, stejně tak pro elektronický magazín nebo školní web. Důležitou podmínkou pro zvolení vhodného CMS je i určitá nezávislost na platformě redakční systémy by mely fungovat pod různými operačními systémy. 25

Výběr CMS (2) Vhodný redakční systém pro školní webové stránky: Je k dispozici česká lokalizace pro daný redakční systém? Bude instalace a správa redakčního systému jednoduchá a nenáročná? Mohou do něj být doinstalovány funkce tj. rozšíření? Existují knihy a manuály v češtině o daném redakčním systému? Existuje česká komunita okolo daného redakčního systému? Používá se daný redakční systém v České republice? Lze v něm jednoduše spravovat webové stránky? Po zodpovězení všech otázek a následném hledání se výběr vhodného CMS systému zúžil na: Wordpress Joomla! Drupal Jedná se o 3 nejpoužívanější CMS na světě (viz. Diagram) 26

Výběr CMS (3) Pro školní prostředí bude nejvhodnější systém Joomla! pro svou filozofii administrace, přehlednost, jednoduchost a rozšířenost. V základní instalaci obsahuje několik základních rozšíření. Joomla! se hodí pro mále a střední weby. Ovšem při dobrém nastavení je vhodná i pro velké weby. WordPress je v základní instalaci vhodný především pro blogy a menší weby. Rozšíření tohoto systému znamená umět trochu programovat v PHP, CSS a HTML. Drupal je vhodný pro velké weby. Využívají ho především zkušení programátoři. V základní instalaci je podobný jako WordPress. 27

WordPress Oficiální web: http://wordpress.org/ Česká komunita: http://www.separatista.net/ Česká verze WP ke stažení: http://cs.wordpress.org/ Rozšíření: http://wordpress.org/extend/plugins/ Základní šablony: http://wordpress.org/extend/themes/ Ukázka (tzv. DEMO): http://www.opensourcecms.com/scripts/details.php?scriptid=88&na me=wordpress 28

WordPress - historie WordPress byl poprvé vydán v květnu 2003 pod názvem b2/cafelog. Napsal jej Michel Valdrighi, jenž je nyní vývojářem WordPressu, v jazyce PHP s využitím MySQL. Přestože je WP přímý nástupce, projekt b2evolution se stále aktivně vyvíjí. WordPress se poprvé objevil také v roce 2003 jako společný projekt Matta Mullenwega a Mikea Littlea, kteří pracovali pro b2. Jméno WordPress navrhl Christine Selleck Tremoulet, přítel Mullenwega. V roce 2009 se WordPress stal nejlepším volně distribuovaným CMS systémem na světě. Zajímavostí je, že jednotlivé verze jsou pojmenovávány po jazzových hudebnících - Strayhorn, Mingus, Coltrane, Gershwin, Sonny, a další. 29

WordPress základní informace Je zdarma (GNU GPL), založený na PHP, podporuje databázový server MySQL, webserver Apache nebo nginx. Ukázka veřejné části webu 30

WordPress přihlášení do administrace 31

WordPress administrace 32

Drupal Oficiální web: http://drupal.org/ Česká komunita: http://www.drupal.cz/ Česká lokalizace: http://localize.drupal.org/translate/languages/cs Rozšíření: http://drupal.org/download Ukázka (tzv. DEMO): http://www.opensourcecms.com/scripts/details.php?scriptid=191&na me=drupal 33

Drupal - historie Drupal začal vyvíjet už v roce 2000 belgický programátor Dries Buytaert a 15. ledna 2001 vydal verzi 1.0. Poptávka po tomto redakčním systému rostla zejména po roce 2003, kdy v něm byl vytvořen web amerického kandidáta na prezidenta Howarda Deana. Komunita okolo Drupalu se začala rychle rozrůstat, a tak je Drupal v dnešní době jedním z nejúspěšnějších redakčních systému na světě, který nyní využívají stovky tisíc webmasterů. Pro jeho komplexnost se využívá zejména na velkých webech. 34

Drupal základní informace Je zdarma (pod GNU GPL), založený na PHP, podporuje databázový server MySQL a PostgreSQL, SQLite, webserver Apache 1.3 nebo vyšší ci Microsoft IIS. Ukázka veřejné části webu 35

Drupal přihlašení do administrace 36

Drupal administrace 37

Joomla! Oficiální web: http://www.joomla.org Česká komunita: www.joomlaportal.cz Česká lokalizace: http://joomlacode.org/gf/project/joomlacz/frs/ Rozšíření: http://extensions.joomla.org/ Ukázka (tzv. DEMO): http://www.opensourcecms.com/scripts/details.php?scriptid=39&na me=joomla 38

Joomla! historie (1) Přestože systém Joomla! debutoval ve verzi 1.0 v roce 2005, jeho kořeny sahají až do roku 2000, kdy spatřil světlo světa systém CMS s názvem Mambo. Mambo vznikl jako interní systém CMS vytvořený inženýry australské společnosti Miro Corporation. Původně byl vyvíjen jako closed source projekt, ale protože vývoj váznul, byl v dubnu 2001 kód otevřen pro open-source komunitu. Na svou dobu se jednalo o velmi pokročilý systém CMS, volně dostupný s kompletními zdrojovými kódy. V roce 2002 s příchodem verze 4.0.x se objevila i první čeština. Systém Mambo si získal popularitu po celém světě a dal vznik celému průmyslu dodavatelů poskytujících rozšíření a šablony. Mambo se ve své době skutečně stal nejpopulárnějším CMS, dostal hodně cen a měl v podstatě jen příznivé recenze. 39

Joomla! historie (2) 2005 neshody mezi open source vývojáři systému Mambo a neziskovou organizací bdící nad vývojem systému Mambo. V srpnu 2005 se komunita a vývojáři rozdělili na dva tábory. Jeden zůstal u Mambo, druhý začal tvořit vlastní fork (odnož) Mamba = Joomla!. Vznik Joomla 1.0. V jádru byl nový CMS kompatibilní s mnoha aspekty systému Mambo, uživatelské rozhraní a správa webu se dočkaly modernizace. Problémy s organizací systému Mambo, způsobily, že se open source komunita tohoto produktu stranila a s veškerou vervou se vrhla na vývoj systému Joomla!. Od svého příchodu systém Joomla! zaznamenal rapidní nárůst v počtu uživatelů i vývojářů. Během prvního roku od svého uvedení systém Joomla! dosáhl počtu 2,5 milionu stažení. Ještě více udivující je mezinárodní rozšíření systému Joomla!. Používá se od Brazílie až po Nizozemí, od Spojených států až po Itálii a od Austrálie až po Čínu. 40

Joomla! základní informace Je zdarma (GNU GPL), Založena na PHP, podporuje databázový server MySQL, webserver Apache 2.X nebo vyšší či Microsoft IIS. Ukázka veřejné části webu 41

Joomla! přihlášení do administrace 42

Joomla! administrace 43

Název Joomla! Název joomla je anglický fonetický přepis svahilského slova jumla (vyslov džumla), které znamená všichni dohromady nebo v celku. Tento název byl vybrán jako závazek vývojářského týmu a komunity k tomuto projektu. První verze projektu Joomla! (Joomla! 1.0.0) byla vydána 17. září 2005. Tato verze byla identická s produktem Mambo 4.5.2.3, byly pouze opraveny některé bezpečnostní chyby. 44

Lokalizace Lokalizace je specifický druh odborného překladu s přidanou hodnotou, kdy kromě samotného překladu dochází k přizpůsobení lokalizovaného produktu zvyklostem a potřebám lokálních uživatelů, tj. časovému pásmu, měně, svátkům, geografii aj. Důležité je zachování celého obsahu, formy a požadovaného efektu textu. Lokalizace proto není běžným odborným překladem, který často zachovává význam jednotlivých slov či spojení. Joomla! je lokalizována do řady jazyků. Aktuálně je to 64 jazyků. To je další důvod, proč je Joomla! tak oblíbená. Samozřejmě nechybí ani čeština, kterou připravil překladatelský tým JoomlaPortalu. Odkazy na nastavení češtiny je uveden dále v prezentaci. 45

Veřejná část vs. administrace Joomla! má 2 části. VEŘEJNOU ČÁST (FE) a ADMINISTRACI (BE). Většinou se setkáte s anglickými názvy, které jsou uvedeny v závorkách. Pojem FE pochází z oblasti programování webových aplikací, kde slouží k označení části webu viditelné běžným návštěvníkům. Např. u internetového obchodu slouží jako FE katalog zboží, nákupní košík a objednávkový formulář. Opakem FE je BE, část webové aplikace sloužící k administraci. Zde se určuje a ovlivňuje obsah, který pak FE zobrazuje. Na rozdíl od BE, FE bývá většinou mnohem lépe propracován po všech stránkách, zejména z hlediska přístupnosti, použitelnosti a vzhledu. 46

Rozšíření v Joomla! Jedním z hlavních důvodů proč je systém Joomla! tak populární je velké množství dostupných rozšíření (ve většině případů zdarma). Pomocí komponent, modulů, zásuvných modulů (pluginů), šablon, jazyků je možné do webu zakomponovat jakoukoliv funkcionalitu, která uživatele napadne. V podstatě je možné systém Joomla! rozšířit tak, aby plnil jakoukoli funkci spojenou s webem. Na stránce projektu Joomla!, na adrese http://extensions.joomla.org, je uveden rozsáhlý seznam rozšíření. Je jich bezmála 10 000. 47

Komponenty, moduly, zásuvné moduly Začínající uživatelé systému Joomla! mají často problém vidět rozdíly mezi jednotlivými typy rozšíření. Vzhledem k tomu, že existují různé typy rozšíření a jejich funkcionalita se může do určité míry překrývat, je důležité mít jasno v tom, jaké jsou jejich možnosti a omezení. Mnoho instalačních balíčku rozšíření obsahuje více jak jeden typ, což může vést k dalším nejasnostem. Např. balíček Ankety používá modul pro zobrazení uživatelského rozhraní, zatímco odpovídající komponenta umožňuje konfiguraci a administraci anket. Podobně funguje i balíček Bannery. Na domovské stránce projektu Joomla! v repositáři (http://extensions.joomla.org) je uvedeno vždy u každého instalačního balíčku typ nebo typy rozšíření. 48

Typy rozšíření - komponenty Komponenty - mohou zobrazovat více článků, modifikovat vzhled stránky, editovat obsah článku (je-li dostatečné oprávnění) anebo nabízet kompletní uživatelské rozhraní (např. diskuse). Komponenta generuje v podstatě celou stránku. Nejlépe je to viditelné na komponentě hlavní stránky, která zobrazuje úvod jednoho či více článků včetně formátování. Stránka může obsahovat pouze jednu komponentu, zatímco modulů obsahuje zpravidla mnoho. Na komponentu může být nahlíženo jako na miniaturní generátor stránky. Komponenty často disponují složitým administračním rozhraním s několika záložkami, které umožňuje úplnou konfiguraci funkcionality i prezentace. 49

Typy rozšíření - moduly Moduly - moduly jsou primárně určené pro zobrazení obsahu, zatímco komponenty slouží jako miniaplikace. Modul se standardně stará pouze o zobrazení anebo akceptuje pouze minimum vstupu. Modul může např. zobrazovat aktuální burzovní informace anebo jednoduchou anketu. Stránka může obsahovat mnoho modulů, ale pouze jednu komponentu. Modul se může nacházet na pozici specifikované v šabloně (např. dole, nahoře, vlevo, vpravo, atd.). Moduly mají jednoduché nastavení, zatímco možnosti nastavení komponent jsou zpravidla značné. 50

Typy rozšíření - pluginy Pluginy (zásuvné moduly) - pluginy jsou nejpokročilejším typem rozšíření, protože pracují se systémem Joomla! na té nejnižší úrovni, a proto mohou nejvýznamněji ovlivnit funkčnost systému. Z funkčního hlediska pracují pluginy na rozhraní mezi systémem Joomla! a uživatelem. Mezi nejvýznamnější pluginy patří editory (např. TinyMCE, JCE). Plugin může přerušit výstup ze systému Joomla! a modifikovat ho před jeho předáním prohlížeči uživatele. V opačném směru má plugin přístup k uživatelskému vstupu ještě předtím, než se systému Joomla! předá ke zpracování. To znamená, že plugin může modifikovat data jak příchozí, tak odchozí. 51

Typy rozšíření jazykové balíčky Jazyk - od Joomla! verze 1.5 a výše je možno jej instalovat. Jazyky jsou v Joomla! buď jako základní balíček nebo jako rozšíření. Rozšířit Joomla! o jazyk umožňuje jak jádro, tak i další rozšíření jako jsou: komponenty, moduly, pluginy. Jazykové balíčky umožňují jednoduše systém lokalizovat do patřičného jazyka. Mnoho překladů pro rozšíření najdete např.: Fenris.cz http://www.fenris.cz Bongovo!.cz http://www.bongovo.cz JardaR.eu http://www.jardar.eu Joomlaportal.cz http://www.joomlaportal.cz 52

Typy rozšíření Nástroje - jsou externí aplikace, které pomáhají s vytvořením nebo řízením obsahu stránky Joomla! Specifický plugin (zásuvný modul) - Jedná se o zvláštní druh rozšíření se specifickým účelem. Tato rozšíření nejsou vlastně rozšíření pro jádro Joomla!, ale pro dané rozšíření (např. editor JCE). Většina z těchto speciálních pluginů je instalována přes rozhraní Joomla! nebo přes rozhraní toho rozšíření pro které je určena. 53

Rozšíření a bezpečnost Kvalita rozšíření, která se dodatečně do Joomla! instaluje, se může lišit (to platí i pro ostatní CMS). Rozšíření, která jsou v základním instalačním balíčku Joomla!, jsou prověřená, a tudíž bez problémů. Pokud je stahováno rozšíření, je jedno jestli jde o rozšíření, které je ke stažení zdarma nebo placené. V minulosti díky "různé" kvalitě bylo mnoho webů hacknuto. Rozšíření může extrémně zatěžovat webový server. Na severu Joomla.org existuje seznam zranitelných rozšíření (záleží na verzi seznam není často aktulizován). Vulnerable Extensions List (česky "Seznam zranitelných rozšíření"): http://docs.joomla.org/vulnerable_extensions_list 54

Vývojový plán (1) Na podzim roku 2011 bylo rozhodnuto o změně číslování verzí Joomla!. Hlavní verze (tj. s dlouhodobou podporou = LTS) je označena číslem např. 2.5 (x.5). Hlavní verze budou mít za tečkou číslovku 5 (tj. 1.5, 2.5, 3.5), která bude označovat LTS verzi. Podpora bude nejméně 1,5 roku. Vedlejší verze (verze krátkodobou podporou = STS). Mají označení např. 3.0, 3.1 (x.0, x.1). Za tečkou bude následovat 1 nebo 0 (3.0, 3.1, 4.0, 4.1). Tyto verze jsou pro testování nových funkcí a jsou určeny především pro vývojáře a nadšence. x označuje rok (např. 2012, LTS verze, 2.5) 55

Vývojový plán (2) 56

Verze Joomla! Větev 1.0.x - s LTS podporou, podpora ukončena, vydávána od 17. září 2005 do 22. února 2008 Větev 1.5.x - s LTS podporou, podpora ukončena, vydávána od 21. ledna 2008 do 27. března 2012 Větev 1.6.x - s STS podporou, podpora ukončena, vydávána od 10. ledna 2011 do 26. července 2011 Větev 1.7.x - s STS podporou, podpora ukončena, vydávána od 19. července 2011 do 2. února 2012 Větev 2.5.x - s LTS podporou, podporováno, vydávána od 24. ledna 2012 a vývoj pokračuje Větev 3.0.x - s STS podporou, podporováno, vydávána od 27. září 2012 a vývoje pokračuje 57

Technické požadavky Joomla! na server 58

Mýty o Joomla! (1) 1. Joomla je vhodná pouze pro osobní stránky Joomla! je velmi jednoduchá, co se týká ovládání, ale to automaticky neznamená, že by se na ní nedaly postavit velké a složité stránky. Že tomu tak je, je ostatně možné zjistit v článku popisujícím nasazení Joomla! v různých projektech. 2. Architektura Joomla! je zastaralá Joomla! byla vždy o trochu více, než jen redakční systém. Její jádro vždy obsahovalo základní funkčnost, která se rozšiřuje dalšími doplňky. Navíc došlo v roce 2011 k rozdělení projektu na dvě části a to frameworku a vlastního redakčního systému. Byla tak oddělena aplikační logika od části, která má na starosti zobrazení výstupu. Vše je postaveno na objektovém PHP kódu (tohle může být označováno jako zastaralé). 59

Mýty o Joomla! (2) 3. Joomla! není bezpečná a snadno se hackuje Každý systém je stejně silný, jako jeho nejslabší článek. Díky tomu, že je Joomla! dobře dostupná, snadno se instaluje a používá, je samozřejmě v hledáčku začátečníků, kteří ji instalují na různé hostingy zdarma a s minimálním zabezpečením. Nelámou si hlavu s hesly, aktualizací jádra či rozšíření, které používají nebo nevěnují pozornost základním bezpečnostním standardům. Je vhodné rozlišovat, zda bylo napadeno vlastní jádro Joomla! nebo byl útok veden přes "děravý" doplněk. Pokud profesionál (nebo poučený amatér) věnuje zabezpečení patřičnou pozornost, není Joomla! o nic méně bezpečná, než konkurence. S celosvětovou popularitou tohoto redakčního systému také souvisí to, že se stává lákavější pro případné útočníky. Když se totiž něco používá, může být zajímavé pokusit se to napadnout. 60

Mýty o Joomla! (3) 4. Stránky postavené na Joomla! jsou označené jako malware a proto jsou často nedostupné Pokud k něčemu takovému dochází, je to patrně způsobeno rozšířením třetí strany. Toto potom není problém Joomla!. Toto je problém, kdy obvykle hacker (robot) vloží do aktuálně používané šablony kód navíc, který obsahuje skryté odkazy na jiné stránky. Potom je stránka označena jako zavirovaná, nebo plná malvare - opět jde tedy o problém nedostatečného zabezpečení např. CHMOD 777 v kombinaci se slabým admin heslem. 5. Moduly v Joomla! jsou postaveny na tabulkovém vzhledu Tohle již několik verzí není pravda. Samozřejmě se najdou výjimky v podobě rozšíření třetích stran. Pokud má modul nedostatečně upravený výstup, lze jej korigovat pomocí template overrides. 61

Mýty o Joomla! (4) 6. Joomla! je příliš velká, příliš robustní a neohrabaná Vzpomínáte si na mýtus o tom, že je Joomla! jen pro osobní stránky? A teď je zase robustní? Máme-li to znovu komentovat, tak neexistuje jeden univerzální a nejlepší redakční systém. Každý si musí vybrat ten, který mu vyhovuje. Pokud to vezmeme čistě pragmaticky - Joomla! je zbytečně robustní na stránky, které mají asi 5 podstránek... 7. WYSIWYG editor v Joomla! je jenom pro experty Každý CMS zajišťuje komplexní správu stránek a WYSIWYG editor je používán pro správu formátování obsahu. V základu je Joomla! dodávána s editorem TinyMCE a Codemirror. Navíc je možno Joomla! vybavit i dalšími např. editorem JCE. Navíc je možno instalovat několik editorů a umožnit všem uživatelům stránek vybrat si ten jejich. Každý editor má své výhody a nevýhody, ale psaní ve všech je stejné jako psaní v textovém editoru. 8. Joomla! není vyvíjena dostatečně rychle S příchodem verze 2.5 byl vývojový cyklus stabilizován. Nové verze jsou vydávány v souladu s naplánovanými termíny. Nutno přiznat, že zvláště v minulosti se na nové verze čekalo i několik let. To se však změnilo a je jasné, kdy vyjde verze nová. Důležité je však také to, že jisté věci nelze uspěchat a bylo by spíše na škodu něco urychlovat. 62

Mýty o Joomla! (4) 9. Joomla! není flexibilní Toto je příliš obecné tvrzení. Co tím chtěl autor říct? Obecně lze říci, že pokud je zjištěno, že nějaká funkčnost chybí, je vhodné se poohlédnout po doplňcích třetí stran. 10. Správa uživatelských práv v Joomla! je hodně komplikovaná a neumí využívat tzv. workflows S příchodem verze 1.6 přišla Joomla! s velmi propracovaným systémem správy a možností nastavení přístupových práv. Je pravda, že na velmi rozsáhlých stránkách s velkým množstvím autorů a správců je třeba se řádně prokousat dokumentací, protože možnosti jsou široké, ale v běžném provozu nebude mít uživatel s přidělováním práv větší problém. 63

Podpora Joomla! v budoucnu Joomla! je jeden nejpopulárnější Open Source redakční systém. V současné době jsou k dispozici rostoucí komunity uživatelů a přibývá stále více talentovaných vývojářů. Joomla! kořeny sahají do roku 2000 a s více než 200.000 uživatelů a přispěvatelů budoucnost vypadá jasně pro projekt Joomla! 64

Kdo Joomla! používá Peugeot (http://www.peugeot.com/) Univerzita Harvard (http://gsas.harvard.edu/) Ebay (http://www.ebay.com) McDonald s (http://www.mcdonalds.com) ProŽeny.cz (www.prozeny.cz) a další 65

Kde začít (1) Download Joomla (http://www.joomla.org/download.html) - oficiální místo pro stažení Joomla! Technical Requirements (http://www.joomla.org/technicalrequirements.html) - technické požadavky Joomla! Joomla! Demo (http://demo.joomla.org/) ukázka instalace Joomla! (tzv. Demo) Joomla! Extensions Directory (http://extensions.joomla.org/) - oficiální katalog a adresář s rozšířeními pro Joomla! Joomla! Documentation (http://docs.joomla.org/) dokumentace pro Joomla! Joomla! Official News (http://www.joomla.org/announcements.html) oficiální místo ohlášení nové verze Joomla! 66

Kde začít (2) The Joomla! Forum (http://forum.joomla.org/) - oficiální podpora/forum pro Joomla! (převážné v anglickém jazyce, část i v jiných světových jazycích) The Joomla! Community Showcase (http://community.joomla.org/showcase/) - přehled a ukázka webů založených na Joomla! Joomla! Developer Network (http://developer.joomla.org/) Web vývojářů Joomla! JoomlaCode.org (http://joomlacode.org/) hosting pro rozšíření Joomla! (některá) The Joomla! Resource Directory (http://resources.joomla.org/) - odkazy na různé články/informace o Joomla a rozšíření 67

Instalace Joomla! na server (1) 68

Instalace Joomla! na server (2) 69