Joomla!

Profesjonalne
tworzenie stron WWW
Autor: Dan Rahmel
T³umaczenie: Tomasz Przedmojski
ISBN: 978-83-246-1766-1
Tytu³ orygina³u: Professional Joomla!
(Programmer to Programmer)
Format: 172245, stron: 456

Osi¹gnij sukces razem z Joomla!
• Jak zainstalowaæ system?
• Jak wykorzystaæ w Joomla! technologiê AJAX?
• Czego Joomla! nie potrafi?
Joomla! jest systemem zarz¹dzania treœci¹ (ang. Content Management System),
wywodz¹cym siê bezpoœrednio ze znanego projektu Mambo. Pierwsza wersja ujrza³a
œwiat³o dzienne w sierpniu 2006 roku. Od tego czasu system ten cieszy siê rosn¹c¹
popularnoœci¹ i coraz wiêkszymi mo¿liwoœciami. Z uwagi na to, ¿e jest on oparty
o jêzyk PHP i bazê MySQL, jego instalacja jest niezwykle intuicyjna oraz mo¿liwa na
wiêkszoœci dostêpnych serwerów.
Autor „Joomla!. Profesjonalne tworzenie stron WWW” w pierwszej kolejnoœci zapozna
Ciê ze szczegó³ami instalacji oraz problemami, które mo¿esz napotkaæ. W kolejnych
rozdzia³ach nauczysz siê tworzyæ w³asne szablony oraz modu³y, a tak¿e wykorzystywaæ
dostêpne rozszerzenia. Z ka¿d¹ kolejn¹ stron¹ Dan wprowadza coraz bardziej
zaawansowan¹ tematykê, zwi¹zan¹ z tworzeniem komponentów, zastosowaniem
technologii AJAX czy te¿ u¿ywaniem wzorców projektowych. Porusza kwestie sposobów
prowadzenia profesjonalnej witryny, ³¹czenia z zewnêtrznymi zasobami czy te¿
pozycjonowania stron korzystaj¹cych z systemu. Niezwykle wa¿ny jest rozdzia³
poœwiêcony bezpieczeñstwu oraz rozdzia³ traktuj¹cy o rzeczach, których Joomla! nie
potrafi. Tak profesjonalne podejœcie do tematu sprawia, ¿e ksi¹¿ka jest doskona³ym
Ÿród³em informacji o systemie zarówno w rêkach amatora, jak i profesjonalisty.
• Szczegó³owe omówienie instalacji Joomla!
• Projektowanie w³asnych szablonów
• Przygotowywanie prostych rozszerzeñ -- modu³ów
• Zaawansowane rozszerzenia -- komponenty
• Wykorzystanie technologii AJAX
• Wzorce projektowe w Joomla!
• Tworzenie i u¿ywanie wtyczek
• Dobre rady w zakresie prowadzenia profesjonalnej strony
• U¿ywanie zewnêtrznych zasobów
• Pozycjonowanie i marketing z wykorzystaniem Joomla!
• Bezpieczeñstwo witryny opartej o Joomla!
• Przegl¹d stron opartych o ten CMS
Z Joomla! przygotujesz w³asn¹ stronê WWW szybko i przyjemnie!

Spis treci
O autorze ..................................................................................................................................................13
Wprowadzenie .........................................................................................................................................15
Rozdzia 1. Wprowadzenie do Joomla! ....................................................................................................21
Zapoznanie z Joomla! ................................................................................................... 22
Wpyw elastycznoci na popularno Joomla! ................................................................. 23
Dla kogo jest ta ksika ................................................................................................ 24
Webmasterzy .......................................................................................................... 24
Projektanci stron WWW ........................................................................................... 25
Deweloperzy stron WWW ......................................................................................... 27
Joomla! w wersji 1.0 a uytkownicy Mambo .................................................................... 28
Podsumowanie ............................................................................................................ 29

Rozdzia 2. Szczegóy instalacji i konfiguracji .......................................................................................31
Cztery serwery systemu Joomla! .................................................................................... 31
Decyzje podczas instalacji ....................................................................................... 32
Etapy instalacji Joomla! ........................................................................................... 37
Konfiguracja Apache Web Server .............................................................................. 40
Konfiguracja PHP .................................................................................................... 47
Konfiguracja MySQL ................................................................................................ 52
Konfiguracja Joomla! ............................................................................................... 58
Serwer testowy a serwer produkcyjny ............................................................................. 62
Ustawienia serwera testowego ................................................................................. 63
Ustawienia serwera produkcyjnego ........................................................................... 64
Podsumowanie ............................................................................................................ 65

Rozdzia 3. Tworzenie wasnych szablonów ......................................................................................... 67
Struktura szablonu ....................................................................................................... 67
Pliki i foldery ........................................................................................................... 68
Logika szablonu: plik index.php ................................................................................ 69
Prezentacja szablonu: plik CSS ................................................................................ 73
Metadane szablonu: plik templateDetails.xml ............................................................ 78
Zmienne szablonu: plik parametrów .......................................................................... 79

6

Joomla!. Profesjonalne tworzenie stron WWW
Grafika szablonu: folder images ............................................................................... 79
Miniatura szablonu .................................................................................................. 80
Tworzenie trójkolumnowego ukadu ................................................................................ 81
Tworzenie struktury szablonu ................................................................................... 82
Tworzenie pliku index.php ........................................................................................ 83
Tworzenie dystrybucyjnego pliku templateDetails.xml ...................................................... 94
Zaawansowane techniki tworzenia szablonów ................................................................. 96
Wykorzystanie grupy szablonów a CSS ...................................................................... 96
favicon.ico .............................................................................................................. 97
Modyfikacja wygldu rozszerze ............................................................................... 98
Tworzenie ukadu strony dla telefonów komórkowych ................................................. 99
Adaptowanie szablonów Mambo lub Joomla! 1.0 ..................................................... 101
Podsumowanie .......................................................................................................... 102

Rozdzia 4. Dodawanie i modyfikacja dostpnych rozszerze ...........................................................103
Katalog rozszerze ..................................................................................................... 104
Funkcjonalno i obsuga strony .................................................................................. 105
Instalacja dodatkowego edytora WYSIWYG .............................................................. 106
Dodawanie wasnych stylów do TinyMCE ................................................................. 108
Dodawanie obsugi plików i FTP .............................................................................. 109
Dodawanie mapy strony ......................................................................................... 110
Community Builder ................................................................................................ 111
Organizacje i e-commerce ........................................................................................... 117
Meneder subskrypcji ............................................................................................ 118
Sklep internetowy MicroShop z patnociami Paypal ................................................. 119
Meneder projektów Project Fork ............................................................................ 120
Rozszerzenie kart pracy ......................................................................................... 121
Dodawanie na stronie platformy aukcyjnej ............................................................... 122
Zawarto strony ........................................................................................................ 123
Podcasting w Joomla! ............................................................................................ 124
Galeria zdj na stronie Joomla! ............................................................................. 125
Komunikacja na stronie .............................................................................................. 127
Dodawanie komentarzy do artykuów ...................................................................... 128
Ksiga goci ......................................................................................................... 128
Czat na stronie Joomla! ......................................................................................... 129
Uruchamianie systemu wiki w Joomla! .................................................................... 130
eWriting ............................................................................................................... 133
Implementacja ogosze ........................................................................................ 134
Dodawanie ledzenia wyników sportowych .............................................................. 135
Dodawanie gier hazardowych ................................................................................. 137
Obsuga quizów ..................................................................................................... 138
Podsumowanie .......................................................................................................... 138

Rozdzia 5. Tworzenie prostych rozszerze: moduy ..........................................................................141
Tworzenie moduu Hello World ..................................................................................... 142
Tworzenie moduu witeczne
yczenia ........................................................................ 145
Tworzenie pliku deskryptora ................................................................................... 146
Tworzenie kodu moduu ......................................................................................... 147
Tworzenie tabeli i zapisywanie przykadowych danych ............................................... 149
Konfiguracja moduu ............................................................................................. 150
Tworzenie moduu Kontakt z Nami ............................................................................... 152
Podsumowanie .......................................................................................................... 157

Spis treci

7

Rozdzia 6. Zaawansowane rozszerzenia: komponenty ......................................................................159
Przygotowanie rodowiska programistycznego ............................................................... 159
Stosowanie systemu kontroli wersji SVN ...................................................................... 160
Instalacja SVN ...................................................................................................... 162
Tworzenie repozytorium SVN .................................................................................. 163
Korzystanie z Eclipse ............................................................................................. 164
Tworzenie komponentu Ksigi Goci ............................................................................ 166
Ochrona przed spamem ......................................................................................... 167
Cz frontowa komponentu .................................................................................. 168
Cz administracyjna komponentu ........................................................................ 171
Plik deskryptora .................................................................................................... 174
Tworzenie archiwum .............................................................................................. 176
Instalacja komponentu .......................................................................................... 176
Korzystanie z phpDocumentor ..................................................................................... 179
Instalacja ............................................................................................................. 179
Wstawianie sekcji DocBlock w kodzie ródowym ..................................................... 180
Podsumowanie .......................................................................................................... 181

Rozdzia 7. Joomla! i Ajax ......................................................................................................................183
Struktura technologii Ajax ........................................................................................... 183
Prosty komponent ajaksowy ........................................................................................ 185
Tworzenie komponentu .......................................................................................... 185
Tworzenie strony WWW .......................................................................................... 187
Tworzenie komponentu Serwer- 
danie ........................................................................ 189
Tworzenie komponentu .......................................................................................... 189
Tworzenie moduu ajaksowego ............................................................................... 192
Wady technologii Ajax ................................................................................................. 197
Niedostpno dla robotów internetowych ............................................................... 198
Gromadzenie informacji ......................................................................................... 198
Zagroenia bezpieczestwa .................................................................................... 198
Podsumowanie .......................................................................................................... 199

Rozdzia 8. Wzorce projektowe a Joomla! ...........................................................................................201
Wzorce projektowe ..................................................................................................... 202
Trzy gówne kategorie wzorców .................................................................................... 203
Wzorce konstrukcyjne ............................................................................................ 203
Wzorce strukturalne .............................................................................................. 205
Wzorce czynnociowe ............................................................................................ 206
Wzorce wspóbienoci .......................................................................................... 207
Wzorce architekturalne .......................................................................................... 207
Wzorzec Model-Widok-Kontroler ................................................................................... 209
Wykorzystanie wzorca MVC w tworzeniu komponentów ............................................. 211
Podsumowanie .......................................................................................................... 215

Rozdzia 9. Ingerencja w fundamenty Joomla!: wtyczki ......................................................................217
Przegld wtyczek Joomla! ............................................................................................ 217
Zdarzenia typu Content .......................................................................................... 219
Zdarzenia typu Editor ............................................................................................. 220
Zdarzenia typu System i Search ............................................................................. 221
Zdarzenia typu User .............................................................................................. 221

8

Joomla!. Profesjonalne tworzenie stron WWW
Wtyczka Hello World! .................................................................................................. 222
Tworzenie pliku deskryptora ................................................................................... 223
Tworzenie kodu wtyczki .......................................................................................... 224
Wtyczka Automatyczne Skróty ...................................................................................... 225
Kod deskryptora XML ............................................................................................ 226
Kod wtyczki .......................................................................................................... 227
Budowa platformy Joomla! .......................................................................................... 229
Struktura CMS Joomla! (JApplication) ..................................................................... 232
cieki Joomla! ..................................................................................................... 234
Wskazówki przydatne podczas pracy z kodem Joomla! ............................................. 235
Wykorzystywanie funkcji przeszukiwania katalogów .................................................. 235
Badanie com_content ............................................................................................ 237
SVN Joomla!: najnowsze osignicia ...................................................................... 237
Podsumowanie .......................................................................................................... 239

Rozdzia 10. Budowanie spoecznoci w Joomla! ..................................................................................241
Planowanie wirtualnej spoecznoci ............................................................................. 242
Trzy stadia wirtualnej spoecznoci ......................................................................... 243
Znaczenie stabilnoci i regularnoci ....................................................................... 246
Dlaczego warto stworzy wirtualn spoeczno ....................................................... 247
Technologie wirtualnych spoecznoci .......................................................................... 248
Ksiga goci ......................................................................................................... 249
Czat ..................................................................................................................... 253
Forum dyskusyjne ................................................................................................. 257
Sondy .................................................................................................................. 260
Komentarze .......................................................................................................... 262
Sieci spoecznociowe ........................................................................................... 266
Kalendarz wydarze ............................................................................................... 267
Systemy Wiki ........................................................................................................ 272
Uruchamianie wirtualnej spoecznoci .......................................................................... 274
Dobór moderatorów ............................................................................................... 274
Prowadzenie spoecznoci ........................................................................................... 275
Podsumowanie .......................................................................................................... 276

Rozdzia 11. Prowadzenie profesjonalnej strony ................................................................................277
Programowanie i testy ........................................................................................... 277
Ustawienia diagnostyczne ...................................................................................... 278
Interfejs wiersza polece PHP ................................................................................ 280
Zautomatyzowane testy ......................................................................................... 281
Uruchamianie strony ................................................................................................... 282
Przenoszenie strony na serwer produkcyjny ............................................................. 282
Kopia zapasowa Joomla! ....................................................................................... 283
Konfiguracja wirtualnych serwerów Apache .............................................................. 284
Kontrola serwera Apache z wiersza polece ............................................................ 285
Zarzdzanie wieloma serwerami ............................................................................. 285
Testy obcieniowe ............................................................................................... 286
Równowaenie obcienia ...................................................................................... 287
Umidzynaradawianie ............................................................................................ 288
Automatyczne cenzurowanie treci ......................................................................... 289
Dostrajanie wydajnoci MySQL .................................................................................... 289
Ustawianie dysku przechowujcego dane ................................................................ 289
Wybór typu serwera ............................................................................................... 290

Spis treci

9

ródo problemów ................................................................................................. 292
Optymalizacja indeksów ......................................................................................... 292
Optymalizacja istniejcego systemu ........................................................................ 297
Administracja ............................................................................................................. 298
Uwierzytelnianie LDAP ........................................................................................... 298
Obsuga ..................................................................................................................... 300
Czyszczenie systemu ............................................................................................. 300
Bezporedni dostp do MySQL ............................................................................... 301
Podsumowanie .......................................................................................................... 303

Rozdzia 12. czenie z zasobami zewntrznymi ................................................................................305
Pobieranie zewntrznych materiaów ............................................................................ 305
Kanay RSS .......................................................................................................... 305
Rozszerzenie Auto Articles 3000 ............................................................................ 311
Zarzdzanie programami partnerskimi .......................................................................... 313
Program partnerski Google AdSense ....................................................................... 314
Program partnerski firmy Amazon ........................................................................... 316
Komunikacja biznesowa z zastosowaniem EDI .............................................................. 319
Dokumenty EDI ..................................................................................................... 320
Standardy EDI ....................................................................................................... 320
Rozszerzenie Skylark ............................................................................................. 329
Komunikacja z sieciami zewntrznymi .......................................................................... 330
Komponent typu screen scraper ............................................................................. 330
Komponent Joomlamap ......................................................................................... 336
Wyszukiwanie adresów z zastosowaniem XML ......................................................... 340
Podsumowanie .......................................................................................................... 346

Rozdzia 13. Pozycjonowanie i marketing w wyszukiwarkach internetowych ................................347
Ustawienia Joomla! .................................................................................................... 348
Proste adresy ....................................................................................................... 348
Metadane ............................................................................................................. 350
Aktywacja moduu Breadcrumbs ............................................................................. 351
Mapa strony ......................................................................................................... 353
Ogólne techniki .......................................................................................................... 354
Gówne wyszukiwarki ............................................................................................. 354
Badanie sów kluczowych ....................................................................................... 355
Tytuy stron ........................................................................................................... 359
Atrybut alt dla obrazów i innych multimediów ........................................................... 359
PageRank Google .................................................................................................. 360
System wymiany odnoników ................................................................................. 361
Ajax a SEO ........................................................................................................... 362
Google Analytics ................................................................................................... 363
Czego nie naley robi ........................................................................................... 363
Marketing w wyszukiwarkach internetowych (SEM) .......................................................... 364
Komponowanie skutecznego tekstu reklamowego .................................................... 364
Pay per click i pay per view .................................................................................... 365
Google Adsense .................................................................................................... 365
Podsumowanie .......................................................................................................... 366

Rozdzia 14. Bezpieczestwo Joomla! ..................................................................................................367
Typy ataków ............................................................................................................... 367
Ataki na hasa ...................................................................................................... 368
SQL Injection ........................................................................................................ 368

10

Joomla!. Profesjonalne tworzenie stron WWW
Niestandardowe dania — szczególnie przez Ajaksa ............................................... 371
Cross-Site Scripting (XSS) ...................................................................................... 372
Skanowanie katalogów .......................................................................................... 372
Atak Denial of Service (DoS) .................................................................................. 373
Podsuchiwanie pakietów HTTP .............................................................................. 373
Bezpieczestwo serwera WWW .................................................................................... 376
Zabezpieczanie serwera Apache ............................................................................. 376
Odmowa dostpu do plików z danym rozszerzeniem ................................................. 377
Bezpieczestwo PHP .................................................................................................. 378
PHP Safe Mode .................................................................................................... 378
PHP doc_root ........................................................................................................ 379
PHP disable_functions ........................................................................................... 379
PHP disable_classes ............................................................................................. 379
PHP display_errors ................................................................................................ 380
PHP expose_php ................................................................................................... 380
Bezpieczestwo MySQL .............................................................................................. 380
Bezpieczestwo Joomla! ............................................................................................. 381
Usuwanie plików instalacyjnych .............................................................................. 381
Edytor HTML Joomla! ............................................................................................. 381
Uruchamianie wewntrz systemu ............................................................................ 382
Rozwijanie i testowanie ......................................................................................... 382
Podsumowanie .......................................................................................................... 383

Rozdzia 15. Czego Joomla! nie potrafi .................................................................................................385
Kontrola wersji dokumentów ....................................................................................... 385
Import, konwersja i eksport plików ............................................................................... 387
Ograniczone funkcje zabezpiecze i autoryzacji ............................................................. 387
Równowaenie obciania i replikacja danych ............................................................... 388
Poziomy interfejsu uytkownika, obsuga skórek ........................................................... 388
Standardowa funkcjonalno groupware ....................................................................... 389
Funkcjonalno portalu ............................................................................................... 390
Podsumowanie .......................................................................................................... 393

Rozdzia 16. Rzut okiem na popularne strony oparte na Joomla! .......................................................395
Strony akademickie .................................................................................................... 396
Wydzia Biologii Molekularnej Princeton ................................................................... 396
The Shakespeare Birthplace Trust .......................................................................... 397
Journal of Intercultural and Interdisciplinary Archaeology .......................................... 398
Graphic User Interactive Learning and Development (GUILD) .................................... 399
Ministerstwo Edukacji na Wyspach Dziewiczych ....................................................... 400
Strony powicone zdrowiu i rodzinie ........................................................................... 401
SeniorNet ............................................................................................................. 401
KidsCHANNEL ....................................................................................................... 402
A Story for Bedtime ............................................................................................... 403
Second Wives Club ............................................................................................... 404
Better Health Here ................................................................................................ 406
Profesjonalne strony ................................................................................................... 407
Mistrzostwa wiata 2010 w Republice Poudniowej Afryki ......................................... 407
Best Association Resources and Tools ................................................................... 408
Relacje podrónicze Randalla Wooda ...................................................................... 409
Turbo Trade .......................................................................................................... 410
Sonetto ................................................................................................................ 411
John Avon Illustration ............................................................................................ 412

Spis treci

11

Media (Aktualnoci, magazyny itp.) .............................................................................. 413
MainSPOT.NET ..................................................................................................... 413
Centrum Informacji ONZ dla Europy Zachodniej ........................................................ 414
HCJB Global ......................................................................................................... 415
Asiaing.com .......................................................................................................... 416
The Chaser ........................................................................................................... 417
Creative Guy Publishing ......................................................................................... 418
Strony hobbystyczne ................................................................................................... 419
Success and Sport (S.A.S.) .................................................................................... 419
Safari Ventures ..................................................................................................... 420
Sky Systems ........................................................................................................ 421
KISSin’ UK ........................................................................................................... 422
Calialive.com ........................................................................................................ 423
Strony powicone technologii .................................................................................... 424
Strona gówna projektu Joomla! ............................................................................. 425
Open Workbench .................................................................................................. 426
Joomlahut ............................................................................................................ 427
Projekt OScar ....................................................................................................... 428
Podsumowanie .......................................................................................................... 429

Skorowidz ..............................................................................................................................................431

4
Dodawanie i modyfikacja
dostpnych rozszerze
Gama rozszerze Joomla! zaczyna si szablonami (najprostsza forma) i koczy si na dodatkach (najbardziej zaawansowana). Midzy tymi dwiema skrajnociami znajduj si moduy
i komponenty. Podczas gdy szablony wpywaj na prezentacj Joomla!, dodatki wpywaj
na dziaanie najbardziej podstawowych funkcji systemu. Komponenty i moduy s prostszymi
rozszerzeniami, które su do dodania okrelonej funkcjonalnoci (np. sondy, fora lub menu).
Wykorzystanie rozszerze trzech typów (moduów, komponentów i dodatków) moe ogromnie
zwikszy funkcjonalno systemu Joomla!.
Dla Joomla! dostpnych jest wiele rozszerze i czasem trudno wybra które z nich. Przykadowo istnieje sze rónych dodatków sucych do tworzenia galerii zdj — kady ma
swoje wady i zalety. Niektóre maj zapewnion bardzo dobr obsug klienta, inne zawieraj
wicej funkcji. Czasem wybranie waciwego rozszerzenia sprowadza si do sprawdzenia
wszystkich dostpnych z danej kategorii.
W tym rozdziale przedstawiono najbardziej zaawansowane i najpopularniejsze rozszerzenia,
które mona przypisa do nastpujcych obszarów:
Q

funkcjonalno strony;

Q

organizacje i e-commerce;

Q

zawarto strony;

Q

komunikacja na stronie.

Przegld rozszerze z powyszych kategorii uzmysowi Ci potencja tkwicy w Joomla!.
Zanim przejdziemy do sprawdzenia poszczególnych rozszerze, warto odwiedzi ich katalog,
który mona znale na stronie gównej Joomla!.

104

Joomla!. Profesjonalne tworzenie stron WWW

Katalog rozszerze
Na stronie gównej Joomla! (www.joomla.org) dostpny jest katalog rozszerze dziaajcych
z Joomla! wraz z systemem oceniania i komentowania, co pozwala uytkownikom dzieli si
ich dowiadczeniami zwizanymi z danymi rozszerzeniami. Katalog znajduje si pod adresem:
http://extensions.joomla.org
Katalog rozszerze Joomla! (ang. Joomla Extension Directory — JED) zawiera prawie
4000 pozycji (w momencie pisania tej ksiki) zarejestrowanych w systemie. Kade rozszerzenie przypisano do jednej z 23 kategorii. Na stronie gównej katalogu umieszczono take pi
najnowszych rozszerze i pi najwyej ocenianych. Kada pozycja zawiera opis i informacje
zwizane z wykorzystaniem rozszerzenia.
Typowy wpis do katalogu zawiera ponisze informacje:

1

Q

Opis — Opis danego rozszerzenia. Zazwyczaj jest to krótkie podsumowanie historii
wersji programu, a take lista zmian wprowadzonych w najnowszej wersji.

Q

Typ rozszerzenia — Wikszo wpisów to poczenie kilku rozszerze w jedn cao .
Poszczególne elementy oznaczane s ikonami: czerwon liter M w przypadku
moduów, zielon liter C w przypadku komponentów i purpurow liter P
w przypadku dodatków. Ikony wywietlane przy danym wpisie wskazuj na typy
rozszerze, które zawiera.

Q

Strona domowa (ang. Homepage) — Strona domowa rozszerzenia. Jeli dane
rozszerzenie Ci si podoba i uwaasz, e jest uyteczne, moesz wykorzysta
ten odnonik, aby przej na stron, gdzie najprawdopodobniej znajdziesz inne
rozszerzenia tego samego autora.

Q

Wersja (Version) — Wywietla oznaczenie najnowszej wersji i informacje,
kiedy zostaa upubliczniona.

Q

Deweloper i e-mail — Te dwa pola zawieraj nazw i adres e-mailowy twórcy
danego rozszerzenia.

Q

Liczba odwiedzin (Views) — Przedstawia liczb odwiedzajcych, którzy kliknli
wpis w katalogu, aby przeczyta cay opis danego rozszerzenia.

Q

Licencja (License) — Licencja, pod jak udostpniono rozszerzenie.
Najpopularniejsze licencje to GNU GPL, komercyjne i inne darmowe
lub wolne licencje.

Q

Kompatybilno (Compatibility) — Wersja Joomla!, z któr dziaa rozszerzenie.
Obecnie moliwe jest okrelenie kompatybilnoci z wersj Joomla! 1.0, Joomla 1.5
i obiema wersjami1.

Q

Data dodania (Date added) — Data wczenia rozszerzenia do katalogu.

Oznaczone odpowiednio 1.0 Native, 1.5 Native i 1.0 Native, 1.5 Legacy — przyp. tum.

Rozdzia 4.
Q

Q

Dodawanie i modyfikacja dostpnych rozszerze

105

Komentarze i oceny uytkowników (User Reviews) — Prawdopodobnie
najuyteczniejszy element wpisu. Zawiera nadesane przez uytkowników
dowiadczenia, komentarze i opisy rónych problemów zwizanych z rozszerzeniem.
Czsto znajduj si tutaj, poza komplementami, take informacje odnonie
do funkcjonalnoci i instalacji lub rekomendacje innych rozszerze, które
speniaj to samo zadanie — tylko lepiej.

Na stronie wyszczególniono 23 kategorie rozszerze, a kada z nich zawiera podkategorie.
Dla uatwienia w kolejnych podrozdziaach kategorie podzielono na cztery gówne aspekty:
Q

funkcjonalno i obsuga strony;

Q

organizacje i e-commerce;

Q

zawarto strony;

Q

komunikacja na stronie.

Powyszy podzia uproci wyszukiwanie rozszerze, które dodaj okrelone funkcje do
Joomla!.
Katalog rozszerze zawiera wyszukiwark, chocia czsto jest ona mao pomocna
w znajdowaniu rozszerze z okrelonymi cechami. Podczas wyszukiwania powiniene
ogranicza si do pojedynczych sów, poniewa masz wtedy najwiksz szans znale 
wpisy, które bd zawiera wymagan funkcj. Wyszukiwanie przy wpisaniu wielu sów
zwraca zazwyczaj zbyt wiele wpisów niezwizanych z interesujcymi moliwociami.

Funkcjonalno i obsuga strony
Rozszerzenia funkcjonalno i obsugi strony rozbudowuj kluczowe funkcje, które mona
znale w interfejsie administratora. Rozszerzenia tego typu umoliwiaj np. ustalenie dokadniejszej hierarchii artykuów ni tylko kategorie i sekcje czy dodanie opcji wyszukiwania.
Poniewa ten typ zmian dotyczy kluczowej funkcjonalnoci systemu, najczciej konieczne
jest instalowanie dodatków.
Rozszerzenia dla tego obszaru pogrupowano w JED w nastpujce kategorie:
Q

Administracja (ang. Administration) — Rozszerzenia dla zaplecza. Zawiera
podkategorie: Rozszerzenia dla administratorów (Admin Addons), Interfejs
administracyjny (Admin Interface), Zmiana formatów danych (Data Coversion),
Zarzdzanie baz danych (Database Management), Zarzdzanie plikami
(File Management), Serwer (Server).

Q

Rozbudowywanie podstawowej funkcjonalnoci (Core Enhancements)
— Wzbogacenie podstawowej funkcjonalnoci systemu Joomla!. Zawiera
podkategorie: Zarzdzanie treci (Content Management), Tworzenie raportów
(Data Reports), Wstawianie i doczanie (Embed & Include), Instalatory
(Installers), Menu (Menu Systems), Funkcjonalno dla kilku stron (Multiple
Sites), Sekcje i kategorie (Sections & Categories), Nawigacja (Site Navigation).

106

Joomla!. Profesjonalne tworzenie stron WWW
Q

Wyszukiwarki i indeksowanie (Search & Indexing) — Zawiera podkategorie:
Wyszukiwanie domen (Domain Search), Wyszukiwanie rozszerze (Extensions
Search), Powizane wpisy (Related Items), Wyniki wyszukiwania (Search Results),
Wyszukiwanie na stronie (Site Search) i Chmury znaczników (Tags & Clouds).

Q

Jzyki (Languages) — Rozszerzenia dla instalacji Joomla! zorientowanych
na inne jzyki ni angielski. Zawiera podkategorie: Automatyczne tumaczenie
(Automatic translations), Treci w wielu jzykach (Multi-lingual Content)
i Tumaczenia Joomla! (Translations for Joomla!).

Q

Narzdzia (Tools) — Lista zewntrznych rozszerze, np. rozszerzenie dla programu
Dreamweaver do obsugi stron Joomla!, programy instalacyjne dla rónych
platform, rodowiska programistyczne PHP i inne.

Q

Obsuga strony (Site Management) — Rozszerzenia zwizane z obsug strony
i zarzdzaniem ni. Zawiera podkategorie: Pami podrczna (Cache), Statystyki
treci (Content Statistics), Informacje autorskie (Credits), Ranking (Ranks),
Przyjazne adresy (SEF), Pozycjonowanie i metadane (SEO & Metadata), Statystyki
strony (Site Analytics), Mapa strony (Site Map), Statystyki ruchu na stronie (Site
Traffic Statistics), Przekierowywanie (URL Redirection) i Odwiedzajcy (Visitors).

W poniszym podrozdziale opisano instalacj alternatywnego edytora w systemie Joomla!.

Instalacja dodatkowego edytora WYSIWYG
System Joomla! zawiera dwa edytory: TinyMCE i XStandard Lite. Domylnym edytorem
jest TinyMCE, za pomoc którego mona wprowadza formatowany tekst, wybiera fonty,
styl (pogrubiony, pochylony itd.), rozmiar i inne. Wprowadzony tekst pojawi si w tej samej
formie na stronie. XStandard Lite take zawiera funkcje WYSIWYG2. Rónica midzy dwoma
edytorami polega na tym, e XStandard Lite w przeciwiestwie do TinyMCE tworzy w peni
poprawny kod XHTML i HTML.
Jeli nie okrelono domylnego edytora, wszystkie artykuy bd wprowadzane jak
zwyky tekst. Poniewa Joomla! jest systemem opartym na HTML, zwyky tekst oznacza
w praktyce kod HTML.
Edytor TinyMCE zosta napisany w JavaScripcie, a jego poprawne dziaanie potwierdzono
na wielu rónych przegldarkach (Internet Explorer, Firefox, Opera i Safari). Pozwala na
tworzenie kodu XHTML 1.0, a take instalacj dodatkowych jzyków (w tym polskiego),
tematów i wtyczek (wczajc w to Adobe Flash Player). XStandard Lite jest edytorem
dostpnym w postaci skompilowanej, co oznacza, e obecnie mona go stosowa tylko
w systemie Windows. Pomijajc przewag funkcjonalnoci XStandard, uruchamianie skompilowanego kodu oznacza ogromn przewag pod wzgldem wydajnoci nad TinyMCE.
Oba wymienione edytory nie s jedynymi, które doczono do Joomla!. Istnieje kilkanacie
innych edytorów w katalogu JED, które mona pobra i zainstalowa . Szeroki wybór edytorów oznacza rónorodno dodatkowej funkcjonalnoci, np. profile ustawie uytkowników,
2

Ang. What You See Is What You Get — To, co widzisz, jest tym, co otrzymasz — przyp. tum.

Rozdzia 4.

Q

Dodawanie i modyfikacja dostpnych rozszerze

107

formatowanie kodu ródowego, obsuga wtyczek, zarzdzanie dokumentami, edytowanie
arkuszy stylów i wiele innych.
Przykadowo moesz zainstalowa rozszerzenie JoomlaFCK, które zawiera mniej funkcji ni
TinyMCE lub XStandard, ale jest duo mniejsze i szybsze ni standardowe edytory. Rozszerzenie JoomlaFCK, przedstawione na rysunku 4.1, oparto na skrypcie FCKeditor, stworzonym przez Frederico Caldeira Knabbena. Jest to jeden z pierwszych edytorów dostpnych
za porednictwem przegldarki WWW, który mia pen funkcjonalno WYSIWYG bez
koniecznoci instalacji dodatkowego oprogramowania.
Rysunek 4.1.
Edytor JoomlaFCK
ma niewielki kod,
dziki czemu
dziaa sprawnie

JoomlaFCK skada si z pojedynczego dodatku, który mona zainstalowa w zapleczu administracyjnym. Jedn z najbardziej uytecznych (i unikatowych) funkcji JoomlaFCK jest
moliwo wykorzystania szablonów dla wprowadzanych artykuów — w podobny sposób
jak Microsoft Word zawiera szablony dla résumé, prezentacji itd. Szablony powinny zosta
zapisane w katalogu, który znajduje si najprawdopodobniej (w odniesieniu do gównego
katalogu Joomla!) w:
\plugins\editors\fckeditor
Szablony zapisywane s w formacie XML w pliku fcktemplates.xml. Domylnie dostpne s
dwa szablony. Poniej kod pierwszego z nich:
<Template title="Image and Title" image="template1.gif">
<Description>One main image with a title and text that surround the
image.</Description>
<Html>
<![CDATA[
<img style="MARGIN-RIGHT: 10px" height="100" alt=" " width="100" align="left" />
<h3>Type the title here</h3>
Type the text here
]]>
</Html>
</Template>

108

Joomla!. Profesjonalne tworzenie stron WWW
Zauwa, jak proste jest w tym przypadku zastosowanie szablonów. Projektowanie szablonów
dla wprowadzanych treci moe by szczególnie przydatne, jeli Twoja strona ma kilku
redaktorów. W ten sposób moesz nada artykuom jednakow form, jednoczenie oferujc
wicej funkcji ni za pomoc prostego formularza. Przykadowo jeli prowadzisz stron
telewizyjnego programu o gotowaniu i chciaby, eby przepisy byy dodawane na stron przez
pracowników programu, szablon przepisu znaczco przyspieszyby wprowadzanie wpisów.

Dodawanie wasnych stylów do TinyMCE
Istnieje moliwo dodania wasnych stylów do listy w edytorze TinyMCE, jak zilustrowano
na rysunku 4.2, dziki czemu redaktorzy mog korzysta ze stylów odpowiadajcych funkcjom
strony. Przykadowo strona powicona programowaniu bdzie zawiera artykuy z elementami kodu ródowego. Mona wtedy stworzy styl, który powodowaby automatyczne wywietlanie kodu ródowego fontem Courier z szarym tem, oddzielajc go od reszty tekstu.
Rysunek 4.2.
Dodanie jednego
lub kilku stylów
TinyMCE
umoliwia lepsze
dopasowanie
treci i strony

TinyMCE pozwala wykorzysta wasny plik CSS zamiast domylnego. Dobrym pomysem jest
skopiowanie domylnego pliku CSS i dodanie do niego swoich nowych stylów. Domylnie
plik znajduje si, wzgldem gównego katalogu Joomla!, w:
\plugins\editors\tinymce\jscripts\tiny_mce\themes\advanced\css\editor_content.css
Skopiuj plik editor_content.css do innego katalogu. Generalnie najprociej jest skopiowa
ten plik do katalogu \css dla wybranego szablonu, dziki czemu style mona bdzie lepiej
dopasowa do wygldu strony. Dla uproszczenia skopiowaem ten plik do gównego katalogu
serwera WWW i nazwaem go mytinymce.css.
Wprowad do tego pliku style, których potrzebujesz na stronie. Ja dodaem kilka stylów, by
podwietli tre :
.purplehighlighter {
background: purple;
color: #000000;
}
.bluehighlighter {
background: blue;
color: #000000;
}

Rozdzia 4.

Q

Dodawanie i modyfikacja dostpnych rozszerze

109

.yellowhighlighter {
background: yellow;
color: #000000;
}

Aby doczy stworzony arkusz stylów, otwórz opcj Dodatki w interfejsie administratora
Joomla!. Kliknij Editor — TinyMCE 2.0, aby przej do ustawie dodatku. W polu Wasny
arkusz stylów wprowad adres URL, który prowadzi do utworzonego wczeniej pliku, pliku
CSS, jak przedstawiono to na rysunku 4.3.
Rysunek 4.3.
Wprowad
kompletny adres
URL nowego
pliku CSS w pole
Wasny arkusz
stylów

Na zdalnym serwerze adres moe przypomina poniszy:
http://www.przyklad.com/mytinymce.css
Kliknij przycisk Zapisz, aby wprowadzi zmiany. Od teraz, po otwarciu artykuu w edytorze
TinyMCE, dodane style bd dostpne w menu.

Dodawanie obsugi plików i FTP
Czasem konieczny jest bezporedni dostp do strony Joomla! za pomoc przegldarki, kiedy
niedostpny jest klient FTP, szczególnie wówczas, gdy korzystasz z urzdzenia przenonego
lub publicznego dostpu do sieci (np. w kawiarence internetowej lub bibliotece). Dziki
rozszerzeniu joomlaXplorer moesz doda funkcjonalno zarzdzania plikami do Joomla!.
Po zainstalowaniu dostpu do joomlaXplorer (zobacz rysunek 4.4) mona klikajc opcj
w menu Komponenty, w interfejsie administratora. W joomlaXplorer wywietlana jest
kompletna lista katalogów i plików w danym folderze serwera WWW, a nawet pasek stanu
informujcy o wolnym miejscu. Obecnie joomlaXplorer jest wydany prawie w 20 jzykach,
m.in. angielskim, duskim, niemieckim, francuskim, hiszpaskim i rosyjskim3.

3

Niestety, nie jest dostpny po polsku — przyp. tum.

110

Joomla!. Profesjonalne tworzenie stron WWW

Rysunek 4.4.
Za pomoc
rozszerzenia
joomlaXplorer
mona zarzdza
plikami, a take
symulowa
poczenie FTP
z poziomu
przegldarki
internetowej

Rozszerzenie mona wykorzysta do wyszukiwania, edytowania, usuwania, kopiowania,
zmieniania nazw, tworzenia i rozpakowywania archiwów plików oraz katalogów. Pozwala
na wysyanie i pobieranie plików za pomoc dostarczonego interfejsu lub symulacji FTP.
JoomlaXplorer umoliwia uytkownikom zmienianie praw dostpu do plików i katalogów za
pomoc narzdzia przypominajcego chmod. Komponent moe zosta wykorzystany tylko
przez uytkownika z uprawnieniami superadministratora.
Komponent joomlaXplorer mona pobra z poniszej strony:
http://joomlacode.org/gf/project/joomlaxplorer/frs/

Dodawanie mapy strony
Dodanie mapy strony jest czsto jedn z najlepszych metod uproszczenia nawigacji na niej.
Mapy strony brakuje czsto na mniejszych witrynach, poniewa rczne stworzenie jej jest
trudne, a zarzdzanie mczce. Na szczcie dla uytkowników Joomla! istnieje wiele rozszerze, które maj moliwo automatycznego tworzenia mapy strony. Czas instalacji
i konfiguracji jest krótki, a zmiany wprowadzane s automatycznie i zawsze odpowiadaj
aktualnemu stanowi strony WWW.
Najpopularniejszym narzdziem do tworzenia mapy strony jest rozszerzenie Joomap, które
przedstawiono na rysunku 4.5. Mapa strony skada si m.in. z menu, kategorii i sekcji. Joomap
potrafi take stworzy map strony w formacie Google Sitemap XML, co pozwala na lepsz
integracj z systemem Google. Joomap jest prostym komponentem, który mona zainstalowa
dziki opcji Rozszerzenia, a nastpnie doda jako ostatni wpis do Main Menu.

Rozdzia 4.

Q

Dodawanie i modyfikacja dostpnych rozszerze

111

Rysunek 4.5.
Rozszerzenie
Joomap umoliwia
tworzenie
dynamicznej
mapy strony,
która
odzwierciedla
organizacj strony

W rozdziale 13. zawarto wicej informacji na temat map strony (i Joomap). Znajdziesz tam
take opisy innych rozszerze, których dziaanie wpywa na pozycj strony w wyszukiwarkach
internetowych.

Community Builder
Community Builder (CB) jest rozszerzeniem o otwartym kodzie ródowym, które znaczco
zwiksza moliwoci Joomla! w zakresie zarzdzania uytkownikami. Jest to jedno z najpopularniejszych rozszerze w wiecie Joomla!. Funkcje CB to m.in.:
Q

zarzdzane hasa i grupy;

Q

ustawianie przez uytkowników wasnego awatara;

Q

dodatkowe pola w profilach uytkowników;

Q

listy uytkowników;

Q 

cieki pocze midzy uytkownikami;

Q

wasne zakadki;

Q

zarzdzanie przebiegiem procesów, takich jak potwierdzenie Warunków korzystania
z serwisu, wysyanie wiadomoci e-mailowych z daniem aktywacji konta,
informowanie administratora o nowych uytkownikach, moliwo zdefiniowania
wiadomoci e-mailowych wysyanych do nowych uytkowników, które mog
zawiera dowolne informacje z profilu uytkownika, w formacie tekstowym
lub HTML;

Q

integracja z innymi komponentami, takimi jak systemy wiadomoci prywatnych
(PMS — Personal Mail System), galerie i wiele innych.

112

Joomla!. Profesjonalne tworzenie stron WWW
Rozszerzenie Community Builder mona znale pod adresem:
www.joomlapolis.com/
Jedn z wad CB (ale to jednoczenie zaleta) jest cakowicie odmienny system rejestracji
i logowania ni standardowy w Joomla!. Oznacza to czciowe oddzielenie funkcji zwizanych
z zarzdzaniem uytkownikami od reszty interfejsu Joomla!.

Struktura Community Buildera
Rozszerzenie CB posiada, podobnie jak Joomla!, wasn struktur wtyczek4. Gówny komponent nadal nosi oryginaln nazw Community Buildera (comprofiler). Wikszo funkcji
zawarta jest w jednym z trzech kluczowych moduów doczonych do CB.
Podstaw CB jest system logowania — odpowiada za zoony proces rejestracji oraz logowania — który moe zosta rozszerzony przez administratora. Za pomoc CB mona doczy
pola z dodatkowymi informacjami do profilu uytkownika, co przypomina rozszerzalny
system zarzdzania kontaktami. Platforma logowania dostpna jest take za pomoc interfejsu
rozszerze Joomla!, dziki temu moliwa jest wymiana informacji z innymi dodatkami Joomla!.
System logowania CB mona zintegrowa (midzy innymi) z poniszymi rozszerzeniami
Joomla!:
Q

Simpleboard lub JoomlaBoard,

Q

myPMS,

Q

Mamboblog,

Q

Yanc tab newsletter,

Q

zOOm Gallery,

Q

uddelM (prywatne wiadomoci),

Q

CB Gallery,

Q

PHPBB bulletin board system,

Q

GroupJive.

Strona gówna komponentu w interfejsie administratora zawiera list wtyczek, które s
domylnie dostpne, co zilustrowano na rysunku 4.6. Gdy zainstalujesz nowe rozszerzenie
CB, pojawi si ono na licie.
Podstawowy ekran ustawie uytkownika, przedstawiony na rysunku 4.7, skada si prawie
z tych samych opcji, co zwyky system rejestracji Joomla!. Na tym kocz si podobiestwa.
W przypadku CB istnieje moliwo okrelenia dodatkowych parametrów dla wybranych
grup lub wszystkich uytkowników.

4

Wtyczki (ang. plug-ins) nazywane s w Joomla! dodatkami — przyp. tum.

Rozdzia 4.

Q

Dodawanie i modyfikacja dostpnych rozszerze

Rysunek 4.6.
Gówny ekran
interfejsu
Community
Buildera
przedstawia list
zainstalowanych
wtyczek

Rysunek 4.7.
Podstawowe
ustawienia profilu
uytkownika
s podobne
do tych
z systemu
Joomla!

Dodatkowe pola mog przyj jeden z 11 typów:
Q

przycisk wyboru,

Q

data,

113

114

Joomla!. Profesjonalne tworzenie stron WWW
Q

adres e-mailowy,

Q

obszar edycyjny,

Q

pole tekstowe,

Q

wielowierszowe pole tekstowe,

Q

przycisk opcji,

Q

adres WWW,

Q

lista rozwijalna,

Q

przyciski wyboru dla kilku opcji,

Q

ogranicznik pól.

Dla kadego z pól CB mona wybra dowolny z powyszych typów. Przykadowo jeli chcesz
da uytkownikom moliwo okrelania preferowanego typu CMS w swoich profilach,
moesz wykorzysta rozwijaln list. Pola moesz dodawa za porednictwem opcji Field
Management, dostpnej w menu Community Buildera, co przedstawiono na rysunku 4.8.
Rysunek 4.8.
Dodawanie
nowego pola,
które pozwala
uytkownikowi
okreli
preferowany
system CMS

Po zapisaniu pola musisz je opublikowa . Nastpnie, jeli przejdziesz do ekranu ustawie
profilu uytkownika, przedstawionego na rysunku 4.7, zobaczysz, e pojawio si nowe pole.
Moliwo dostosowania profilów uytkownika (wczajc w to nawet „wymagane” pola)
daje efekt w postaci zbierania najwaniejszych informacji o odwiedzajcych.
By moe zauwaye, e na rysunku 4.7 wszystkie informacje o uytkowniku pojawiy si
w jednej zakadce, zatytuowanej Contact Info. By moe zauwaye take, e podczas
tworzenia nowego pola wybrana bya opcja umieszczenia go wanie w tej zakadce. System

Rozdzia 4.

Q

Dodawanie i modyfikacja dostpnych rozszerze

115

CB umoliwia stworzenie dodatkowych zakadek, zawierajcych nie tylko informacje o uytkownikach, ale take poczonych z innymi rozszerzeniami, których funkcje zwizane s
z profilem uytkownika, np. blog uytkownika.
Wszystkie zakadki w profilu uytkownika wywietlane s w Tab Manager (przedstawiono
to na rysunku 4.9). Korzystajc z tej opcji, moesz zmieni nazw zakadki, jej pozycj i typ
wywietlania. Jeli jest to zakadka szczególnego typu (na przykad zakadka menu), zostanie
wywietlony panel zawierajcy dodatkowe parametry.
Rysunek 4.9.
Opcja Tab
Manager
przechowuje
list zakadek,
które mona
doda do profilu
uytkownika

Wtyczki CB
Community Builder zawiera obsug wasnych wtyczek. Wikszo z nich czy system autoryzacji CB z innymi rozszerzeniami. Na rysunku 4.10 zilustrowano ekran Plugin Manager,
który przedstawia list wtyczek zainstalowanych domylnie. Cz z nich jest oznaczona
w kolumnie Type jako templates, co oznacza, e wpywaj na wygld CB.
Wtyczka typu user odpowiada za kluczowe funkcje systemu lub za poczenie z innymi
rozszerzeniami Joomla!. Zauwa, e domylna instalacja zawiera wtyczki czce z Simpleboard Forum, Mamblog Blog, YaNC Newsletters, PMP MyPMS i Pro. Wicej wtyczek tego
typu mona znale na stronie internetowej CB.

Awatar uytkownika
Jedn z kluczowych opcji, które sprawiaj, e uytkownicy odwiedzajcy stron angauj si
w jej funkcjonowanie, jest moliwo ustawienia okrelonego awatara (obrazka), ich graficznej
wizytówki. Obrazek ten wywietlany jest w profilu uytkownika. Chocia wybrana nazwa
uytkownika moe go wystarczajco reprezentowa , to jednak may obrazek pozwala w wikszym stopniu zakomunikowa wasn osobowo .

116

Joomla!. Profesjonalne tworzenie stron WWW

Rysunek 4.10.
Ekran Plugin
Manager
przedstawia
list wtyczek
zainstalowanych
w systemie CB

Wysyanie obrazków moe by dodatkowo moderowane, aby awatary byy wywietlane,
dopóki nie zostan zaakceptowane. Opcja moderacji moe by bardzo przydatna w przypadku
strony o tematyce rodzinnej lub ochrony przed naruszaniem praw autorskich do obrazków.
Prawa autorskie i wykorzystanie obrazków w internecie to temat peen kontrowersji. Bez
wtpienia kopiowanie treci chronionych prawem autorskim jest naruszeniem praw
waciciela — fakt ten nie podlega dyskusji. Jest wielu autorów i posiadaczy praw autorskich, którzy nie maj nic przeciwko publikowaniu ich obrazków, o ile nie s wykorzystane do dziaalnoci zarobkowej, a take nie s przedstawiane w sposób negatywny.
Fanfilmy inspirowane rónymi produkcjami tworzone s od lat, a tylko kilka studiów
zabrania tworzenia takich dzie. Jeli martwi Ci status prawny, powiniene skontaktowa si z prawnikiem.

Aby umoliwi uytkownikom dodawanie obrazków, zaloguj si na stron, na której masz
zainstalowany CB. Przejd do profilu uytkownika, gdzie zobaczysz pust ikon. Kliknij j,
a nastpnie wybierz pozycj My CB Profile w User Menu. Nastpnie moesz wybra opcj
Update Your Image w Edit menu, eby doda wasny obrazek. Nie zostanie on jednak wywietlony do momentu zatwierdzenia przez administratora.

Pobieranie i instalacja
Po pobraniu Community Buildera zauwa, e nie jest to pojedynczy plik, lecz zestaw plików,
które naley zainstalowa . W zestawie tym znajduj si nastpujce elementy:
Q

comprofiler — To archiwum zawiera waciwy komponent CB, który naley

zainstalowa w Joomla!.
Q

cblogin — Modu logowania, który naley doda do gównej strony Joomla!.

Rozdzia 4.

Q

Dodawanie i modyfikacja dostpnych rozszerze

Q

mod_comprofilermoderator — Przypisuje poszczególnym moderatorom moliwo
zatwierdzania procesu rejestracji.

Q

mod_comprofileronline — Wywietla list uytkowników CB, którzy wanie

117

odwiedzaj stron.
Wymagane s tylko dwa elementy: komponent comprofiler — odpowiada za zarzdzanie
systemem z poziomu interfejsu administracyjnego, i modu cblogin — pozwala uytkownikom zalogowa si do systemu CB. Comprofiler to take oryginalna nazwa Community
Buildera, do której odwoania znajdziesz w wielu miejscach zaplecza.
Przy pierwszym uruchomieniu CB powiniene wybra opcj Tools z menu. Jak zilustrowano
na rysunku 4.11, doczone narzdzia pozwalaj zainstalowa przykadowe dane, skopiowa
dane uytkowników z obecnego systemu rejestracji, a take sprawdzi poprawno danych
w bazie CB.

Rysunek 4.11. Na stronie narzdzi CB moesz wybra opcj instalacji przykadowych danych, skopiowania
danych uytkowników Joomla! do systemu CB, a take sprawdzi poprawno danych w bazie CB

Organizacje i e-commerce
Rozszerzenia zwizane z organizacjami i e-commerce czsto su do poczenia systemu
Joomla! z zasobami zewntrznymi (na przykad zewntrznymi sieciami), dziki którym mona
skorzysta z programów partnerskich, systemów elektronicznej patnoci i innych. Rozszerzenia tego typu wykorzystywane s gównie przez organizacje, koordynuj oraz uatwiaj
komunikacj wewntrz i na zewntrz organizacji.
Rozszerzenia dla tego obszaru pogrupowano w JED w nastpujce kategorie:
Q

Reklamy i programy partnerskie (ang. Ads & Affiliates) — Zawiera podkategorie:
Programy partnerskie (Affiliate Advertising), Amazon, Zarzdzanie bannerami
(Banner Management), Ogoszenia (Classified Ads), Bannery naronikowe
(Corner Banners), Reklamy Google (Google Ads), Odnoniki i reklamy tekstowe
(Text & Link Ads).

Q

E-Commerce — Zawiera podkategorie: Handlowe programy partnerskie
(Affiliate Carts), Aukcje (Auction), Bilingi i faktury (Billing & Invoices),
Darowizny (Donations), Patny dostp (Paid Access and Content), Systemy
patnoci (Payment systems), Sklepy internetowe (Shopping Cart).

118

Joomla!. Profesjonalne tworzenie stron WWW
Q

Dla poszczególnych rozszerze (Extension Specific) — Zawiera podkategorie
dla rozszerze i wtyczek: AdsManager, AlphaContent, BannersManager,
Community Builder, dcsFlashGames, DOCMan, ECJC, Fireboard Forum,
Freeway, Hot Property, JCE, JContent Subscription, jDownloads, Jomres,
Joom!Fish, JoomLeague, JoomSEF, nBill, Pages-and-Items, Phoca, PUArcade,
RSGallery2, SEF Service Map, Seyret, SOBI2, VirtueMart.

Q

Klienci i oprogramowanie do pracy grupowej (Clients & Groupware) — Zawiera
podkategorie: Autorzy (Authors), CRM, Pomoc uytkownikom (Help desk),
Status internetowy (Online Status & Profile), Zarzdzanie projektem i zadaniami
(Project & Task Management), Social Bookmarking, Wiki.

Q

Rynki branowe (Vertical Markets) — Zawiera podkategorie: Samochody i inne
pojazdy (Auto & Vehicles), odzie i jachty (Boat & Yachting), Ksiki i biblioteki
(Books & Libraries), Edukacja (Education), Jedzenie i napoje (Food & Beverage),
Nieruchomoci (Real Estate), Podatki i zastawy hipoteczne (Taxes & Mortgages).
Niektóre z moliwoci oferowanych przez rozszerzenia z tych kategorii potrafi
zmieni prost stron Joomla! w profesjonaln i (lub) komercyjn witryn. Opcja
subskrypcji jest przykadowo jedn z popularniejszych funkcji.

Meneder subskrypcji
Jedn z wbudowanych funkcji Joomla! jest moliwo ograniczenia treci dla poszczególnej
grupy lub po prostu uczynienia artykuów niewidocznymi dla niezarejestrowanych uytkowników. Niestety, nie istnieje funkcja ograniczania dostpu do treci do poszczególnych
uytkowników w ograniczonym czasie. Takie moliwoci ma rozszerzenie Open Source
Account Expiration Control & Subscription Manager (AEC).
Jak przedstawiono na rysunku 4.12, powyszy komponent dodaje na stronie Joomla! funkcjonalno patnego dostpu do treci. Rozszerzenie AEC mona poczy z innymi (np. CB),
co pozwala na korzystanie z takich systemów patnoci, jak: Paypal, Authorize.Net, 2Checkout,
Allopass, viaKLIX i inne. Umoliwia okrelenie rónorodnych planów patnoci, na przykad
darmowe okresy próbne, patne i doywotnie oraz darmowe próbki.
Za pomoc interfejsu administratora mona w prosty sposób skonfigurowa opcje patnoci
za treci, a take poczenie z rónymi usugami patnoci. Moliwe jest take ustawienie
subskrypcji dla rónych kont uytkowników Joomla!.
Twórcy AEC cigle dodaj nowe systemy patnoci, dlatego upewnij si, e dysponujesz
najnowsz wersj. Dodatkowo na stronie rozszerzenia znajduje si forum5, na którym mona
uzyska pomoc. Odwied stron AEC pod adresem:
https://globalnerd.org/index.php/AEC1.html

5

Dostpne po uiszczeniu opaty — przyp. tum.

Rozdzia 4.

Q

Dodawanie i modyfikacja dostpnych rozszerze

119

Rysunek 4.12.
Komponent AEC
umoliwia
kontrolowany
dostp trec
w oparciu
o model
subskrypcyjny

Sklep internetowy MicroShop z patnociami Paypal
MicroShop jest wygodnym i prostym sklepem internetowym (zobacz rysunek 4.13), który
umoliwia dodawanie przedmiotów i skadanie zamówie. Jest w peni zintegrowany z systemem patnoci Paypal, co upraszcza zamówienie.
Rysunek 4.13.
Rozszerzenie
MicroShop
umoliwia
na stronie
dodawanie
przedmiotów
do koszyka

Interfejs administratora, który umoliwia ustawienie opcji systemu patnoci, a take skadania
zamówie, przedstawiono na rysunku 4.14.

120

Joomla!. Profesjonalne tworzenie stron WWW

Rysunek 4.14.
Zaplecze
rozszerzenia
MicroShop
umoliwia
ustawienie
systemów
patnoci takich
jak Paypal

Meneder projektów Project Fork
Koordynacja ludzi pracujcych nad danym projektem moe by trudna i frustrujca, jeli nie
zostan uyte waciwe narzdzia. Programy takie jak Microsoft Project lub Copper doskonale
nadaj si do zarzdzania duymi projektami, ale ich sztywno ogranicza praktyczne wykorzystanie przy maych i rednich projektach. Dla systemu Joomla! istnieje rozszerzenie
o nazwie Project Fork, które umoliwia zarzdzanie projektami z poziomu przegldarki.
Jak zilustrowano na rysunku 4.15, rozszerzenie Project Fork jest narzdziem do zarzdzania
projektami, a dokadniej — do kontroli nad wieloma zadaniami i ludmi. Poniewa dziaa
w ramach systemu Joomla!, dostp do Project Fork moliwy jest w kadym miejscu, w którym
mona przeglda strony internetowe. Rónorodne opcje tworzenia raportów pomocne s
w analizie obecnej i wczeniejszej wydajnoci. Funkcja obsugi dokumentów i plików powizanych z projektem sprawia, e to rozszerzenie staje si miniaturow aplikacj do pracy grupowej.
Nowy projekt tworzy si, klikajc przycisk New Project po wybraniu zakadki Projects. Po
utworzeniu projektu mona przypisa do niego zadania. Kade z nich ma nazw, opis w postaci
formatowanego tekstu, stan (np. anulowany, kompletny, opóniony itd.), dat rozpoczcia,
dat ukoczenia, aktualny postp (np. w procentach) i uytkownika, który jest odpowiedzialny
za to zadanie. Dodatkowo uytkownik przypisany do zadania moe by automatycznie powiadamiany, kiedy ulegnie ono zmianie.
Wikszo funkcji zarzdzania projektami w Project Fork (wczajc w to konfiguracj uytkowników) dostpna jest z poziomu strony Joomla!. Rozszerzenie zostao pomylane w ten
sposób, poniewa w przeciwiestwie do innych zada zwizanych z zarzdzaniem stron
administrator projektu nie musi mie uprawnie administratora strony. Interfejs administracyjny umoliwia cakowit kontrol nad prawami dostpu i aktualnymi projektami.

Rozdzia 4.

Q

Dodawanie i modyfikacja dostpnych rozszerze

121

Rysunek 4.15. Strona gówna rozszerzenia Project Fork przedstawia list projektów, do których dany
uytkownik ma dostp

Rozszerzenie kart pracy
Aby zarzdza czasem w projekcie (a szczególnie zlicza patny czas), moesz wykorzysta
rozszerzenie TimeWriter. Interfejs tego rozszerzenia, który pozwala rejestrowa czas pracy,
zilustrowano na rysunku 4.16. Dostpne s dwa sposoby prowadzenia rejestru: czas przeznaczony na klientów lub czas przeznaczony na projekty. Mona tworzy powtarzalne zadania,
a take wywietla karty pracy.
Rysunek 4.16.
Strona gówna
rozszerzenia
TimeWriter
umoliwia
wygodne
notowanie
wszystkich
czynnoci
zwizanych
z projektem
lub klientami

Podobnie jak w przypadku Project Fork, wikszo funkcji rozszerzenia TimeWriter dostpna
jest za porednictwem strony gównej. Aby uzyska dostp do tych funkcji, kliknij odnonik
Reports (lekko niefortunna nazwa) w prawym górnym rogu. Zostanie wywietlona lista
odnoników do nastpujcych funkcji:
Q

Timesheet Report by Company (Przegld kart pracy wedug firm);

Q

Timesheet Report by Project (Przegld kart pracy wedug projektów);

122

Joomla!. Profesjonalne tworzenie stron WWW
Q

Report Total Hours by Project (Przegld cakowitej liczby godzin dla poszczególnych
projektów);

Q

Report Total Mileage (Przegld caego przebiegu);

Q

Set User Preferences (Ustawienia uytkownika);

Q

Show Vehicles (Poka list pojazdów);

Q

Mileage Log Form (Formularz notowania przebiegu);

Q

Manage Companies (Zarzdzaj firmami);

Q

Manage Projects (Zarzdzaj projektami).

Zanim utworzysz projekt, musisz najpierw utworzy firm — dopiero wtedy moesz zacz
notowa liczb godzin. Kliknij odnonik Manage Companies, aby doda now firm. Nastpnie
moesz klikn odnonik Manage Projects, aby stworzy nowy projekt. Kolejnym krokiem
jest kliknicie ikony Assign na licie projektów, aby przypisa uytkowników Joomla! do
danego projektu.
Funkcje tworzenia raportów umoliwiaj ogólne zarzdzanie, a take tworzenie raportów
tygodniowych dla okrelonych parametrów. Z poziomu zaplecza moesz zaimportowa
dane Mambotastic Timesheets.

Dodawanie na stronie platformy aukcyjnej
Strona serwisu aukcyjnego eBay jest jedn z najpopularniejszych witryn internetowych. Wielu
ludzi yje ze sprzeday produktów za porednictwem tego serwisu. Jeli chciaby zosta
jednym z nich, Joomla! moe pomóc! Dostpna jest spora liczba rozszerze, które umieszcz
informacje o aukcjach na Twojej stronie Joomla!. W praktyce oznacza to, e moesz zaoy
wirtualny sklep na stronie Joomla!, a ogldajcych kierowa na aukcje w serwisie eBay.
Wikszo udanych przedsiwzi biznesowych opiera si na powracajcych klientach. Nie
inaczej jest w przypadku przedsiwzi uruchomionych w serwisie aukcyjnym eBay. Dziki
wstawieniu na stronie sklepu aukcyjnego stworzysz dla regularnych odwiedzajcych miejsce,
w którym bd mogli kupowa produkty i usugi.
Istnieje kilka rozszerze aukcyjnych, które dosownie dodaj funkcj prowadzenia
aukcji na stronie Joomla!. Jest to opacalne tylko w sytuacji, kiedy wielu kupujcych
przebija swoje oferty, podnoszc cen do akceptowalnego poziomu. Poniewa eBay
pozwala dotrze dosownie do milionów potencjalnych klientów, przy czym zapewnia
ochron przed faszywymi przebiciami, zastosowanie wasnej implementacji serwisu
aukcyjnego jest kiepskim wyborem dla wikszoci webmasterów. Jeli mimo wszystko
chciaby doda takie funkcje, sprawd zawarto kategorii Auction w JED.
Rozszerzanie My EBay Store, przedstawione na rysunku 4.17, umoliwia zaprezentowanie
oferty Twojego sklepu w serwisie eBay na stronie Joomla!. Informacje na temat poszczególnych
aukcji s dynamicznie aktualizowane i zawieraj najwiesze informacje. Rozszerzenie wywietla informacje o produkcie, doczone zdjcia, aktualn cen i dat zakoczenia aukcji.
Bez problemu przedstawia informacje o wicej ni 150 aukcjach.

Rozdzia 4.

Q

Dodawanie i modyfikacja dostpnych rozszerze

123

Rysunek 4.17.
Rozszerzenie
My EBay Store
wywietla
aktualne
informacje
na temat
wybranych aukcji

Modu My EBay Store moe zosta umieszczony w dowolnym panelu na stronie Joomla!.
Jego pooenie, a take pozostae ustawienia moesz zmieni , wybierajc modu na licie
opcji Moduy. Ekran parametrów przedstawiony na rysunku 4.18 pozwala ustawi dobór
wywietlanych przedmiotów.
Rysunek 4.18.
Parametry
moduu
umoliwiaj
okrelenie
doboru
przedmiotów

Zawarto strony
Sercem kadej strony opartej na CMS jest jej zawarto . Rozszerzenia przedstawione w tym
podrozdziale pozwol Ci wzbogaci typ treci zarzdzanych za pomoc Joomla! o podcasty,
kartki elektroniczne, mapy i inne. Istniej nawet rozszerzenia potrafice zmieni stron Joomla!
w rozszerzalny system wiki.

124

Joomla!. Profesjonalne tworzenie stron WWW
Rozszerzenia dla tego obszaru pogrupowano w JEB w nastpujce kategorie:
Q

Zawarto i newsy (ang. Content & News) — Rozszerzenia, które umoliwiaj
import lub tworzenie treci wykraczajcych poza standardowe artykuy Joomla!.
Zawiera podkategorie: Lista artykuów (Article Listing), Pokaz slajdów dla artykuów
(Article Slideshow), Blog, Newsy na stronie gównej (Frontend News), Najnowsze
wiadomoci (Latest News), Mikroblogi (Microblogging), Paski z wiadomociami
(News Tickers & Scrollers), Losowe newsy i artykuy (Newsflash & Random),
Popularne treci (Popular Content), Cytaty (Quotes), Oceny i przegldy (Ratings
& Reviews), Kanay RSS (RSS Syndicate).

Q

Katalogi i dokumentacja (Directory & Documentation) — Rozszerzenia,
które umoliwiaj tworzenie dokumentacji na stronie. Zawiera podkategorie:
Bibliografia (Bibliography), Katalog (Directory), Pobieranie plików (Downloads),
FAQ, Sowniki (Glossary & Directory), Portfolio i katalogi (Portfolio & Catalog),
Odnoniki (Weblinks).

Q

Grafika i multimedia (Images & Multimedia) — Rozszerzenia, które dodaj obsug
treci multimedialnych. Zawiera podkategorie: Grafiki dla artykuów (Article Images),
Odtwarzacze audio i galerie (Audio Players & Galleries), Kartki elektroniczne
(eCards), Grafiki (Images), Pokaz slajdów (Image Slideshow), Mapy (Maps),
Wywietlanie multimediów (Multimedia Display), Panoramy (Panorama), Galerie
zdj (Photo Galleries), Dodatki do galerii (Photo Galleries — extras), Podcasting,
Radio internetowe (Radio & Shoutcast), Streaming i nadawanie (Streaming
& Broadcasting), Galeria filmów (Video Gallery), Odtwarzacze wideo
(Video Players), Rzeczywisto wirtualna i 3D (Virtual Reality & 3D).

Podcasting w Joomla!
Podcasting to nowe znaczce medium. Najnowsze badania Bridge Ratings pokazuj, e liczba
ludzi, którzy pobieraj podcasty, wzrosa z 820 000 w 2004 roku do 4,8 miliona ludzi w 2005.
Prognozy na rok 2010 przewiduj poszerzenie grupy odbiorców do 45 milionów. Wedug
„Business Week” przez ostatnie sze miesicy roku 2004 i pierwsze sze miesicy 2005
liczba podcastów wzrosa o 2500 procent.
Podcasting to wersja audio kanaów RSS. By moe zauwaye ikon odpowiadajc za
RSS na ulubionej stronie z newsami. Za pomoc aplikacji zwanej czytnikiem kanaów mona
subskrybowa (zapisa si do) dany kana. Program bdzie na bieco automatycznie pobiera
najnowsze wiadomoci na Twój komputer do póniejszego przeczytania. RSS to umowne
oznaczenie dla grupy formatów opartych na jzyku XML, które zawieraj informacje o subskrypcji.
Podcasty wykorzystuj praktycznie identyczne pliki RSS, co upodabnia czytniki podcastów do
czytników kanaów. Najnowsze pliki audio pobierane s przez czytnik podcastów (najczciej
w formacie MP3 lub AAC) na dysk komputera lub urzdzenie przenone. Nastpnie moesz
odsucha ich zawarto na komputerze (czciej bdzie to odtwarzacz MP3 lub iPod). Najpopularniejsz stron zawierajc podcasty jest iTunes — witryna firmy Apple.

Rozdzia 4.

Q

Dodawanie i modyfikacja dostpnych rozszerze

125

Joomla! umoliwia doczenie podcastów na stronie, tak eby dodanie nowego pliku audio
powodowao jego automatyczne pojawienie si na odpowiednim kanale RSS. W ten sposób
uytkownicy bd mogli pobra go automatycznie. Rozszerzenie Podcast Suite, które dodaje
funkcje obsugi podcastów, mona pobra pod adresem:
http://www.jlleblanc.com/joomla/Articles/Podcast_Suite,_Version_1.1_Stable/
Powyszy pakiet skada si z komponentu, moduu i dodatku, które poczone daj pen
funkcjonalno podcastów w Joomla!. Rozszerzenie umoliwia take integracj z serwisem
iTunes. Modu z pakietu Podcast Suite, zilustrowany na rysunku 4.19, wywietla odnonik
do dynamicznie tworzonego kanau RSS.
Rysunek 4.19.
Modu Podcast
Suite zawiera
odnonik
umoliwiajcy
dodanie
subskrypcji
podcastów

Kana tworzony jest na podstawie ustawie okrelanych w interfejsie administracyjnym, na
ekranie konfiguracji komponentu, co przedstawiono na rysunku 4.20. Rozszerzenie automatycznie wyszukuje nowe pliki w okrelonym folderze i tworzy kana na podstawie jego
zawartoci.
Niestety, to rozszerzenie nie ma funkcji obsugi wideo, czyli vodcastingu (video-on-demangcasting). Biorc pod uwag znaczcy wzrost vodcastingu, to niedocignicie powinno zosta
wkrótce poprawione.

Galeria zdj na stronie Joomla!
Galerie zdj (pryede wszystkim zawierajce zdjcia z rodzinnych albumów) zaczynaj
dominowa w sieci. Wiele krcych w sieci dowcipów dotyczy liczby przesyanych zdj
maych dzieci — z powodu skali zjawiska dojdzie do przecienia czy. Potrzeba dzielenia
si cyfrowymi zdjciami i wydarzeniami ze swojego ycia midzy rozdzielonymi o setki czy
tysice kilometrów czonkami rodzin sprawia, e galerie zdj staj si bardzo atrakcyjnym
narzdziem.

126

Joomla!. Profesjonalne tworzenie stron WWW

Rysunek 4.20.
Konfiguracja
pakietu przebiega
za pomoc
komponentu
doczonego
do Podcast Suite

Niezalenie od tego, czy chcesz przedstawi profesjonalne portfolio, czy tylko umieci ujcia
pierwszych kroków Twojej córeczki, Joomla! moe by odpowiednim rozwizaniem. Funkcj
galerii zdj moe spenia kilka rónych rozszerze. Wedug ostatnich wylicze wyszukiwanie Google prowadzio do 50 rónych rozszerze dodajcych galerie na stronach Joomla!,
zarówno komercyjnych, jak i darmowych.
Rozszerzenie RSGallery2 jest najwyej ocenianym wród aplikacji przeznaczonych dla Joomla!
i cechuje si bogactwem funkcji. Umoliwia profesjonalne zarzdzanie galeriami i obrazkami.
System kontroli dostpu, zintegrowany z systemem rejestracji uytkowników Joomla!, wystpuje w kilkudziesiciu jzykach.
Jeli masz zamiar zarzdza du liczb zdj cyfrowych, sprawd system Gallery2.
Jest to jedna z najpopularniejszy aplikacji do tworzenia galerii, zawiera wiele
profesjonalnych funkcji. Automatycznie tworzy kanay RSS, zawiera obsug komentarzy,
wielu typów multimediów (nie tylko zdj), a take dziaa nawet na popularnych
(duych) stronach internetowych. Chocia jest to oddzielna aplikacja PHP, moe
zosta poczona ze stron Joomla! za pomoc specjalnej wtyczki Gallery 2 Bridge.
Rozszerzenie RSGallery2 (zobacz rysunek 4.21) napisano z myl o Joomla!. Tworzone pliki
HTML i CSS s zgodne ze standardami. Posiada take kompletn obsug Joomfish, przez
co moe dziaa w wybranym jzyku. Dodatkow funkcj stanowi zarzdzanie animacjami
Flash!. Zanim zainstalujesz to rozszerzenie, upewnij si, e przynajmniej jedna z popularnych
bibliotek graficznych (GD2, ImageMagick lub Netpbm) dostpna jest na Twoim serwerze PHP.

Rozdzia 4.

Q

Dodawanie i modyfikacja dostpnych rozszerze

127

Rysunek 4.21.
Profesjonalny
interfejs
RSGallery2
upraszcza
zarzdzanie
zdjciami

RSGallery2 zawiera panel sterowania, z którego mona zarzdza kadym aspektem rozszerzenia: od konfiguracji systemu, przez dodawanie zdj (pojedynczo lub w pakietach),
zarzdzanie galeriami, zmian opcji wywietlania, po zarzdzanie baz danych zdj . Dodatkowo opcja wprowadzania zmian w CSS umoliwia dopasowanie galerii do wygldu aktualnego
szablonu.
Warto odwiedzi stron domow RSGallery2 (http://rsgallery2.net/). Moesz tam znale
przykadow implementacj galerii, pobra najnowsz wersj rozszerzenia, czyta i wysya
wiadomoci na forum powiconym rozszerzeniu lub uczy si na podstawie zamieszczonych
przewodników. Dostpne s przewodniki opisujce wszystkie aspekty — od instalacji, przez
wasne szablony dla galerii, po tworzenie moduów. Strona zawiera take kompletn dokumentacj API, opis wszystkich klas, z których skada si platforma RSGallery2.

Komunikacja na stronie
Istniej rozszerzenia Joomla!, które pozwalaj doda róne funkcje komunikacji midzy
uytkownikami, np. czat, kalendarz imprez lub nawet wspólnie redagowane przepisy. Komunikacja jest kluczowym elementem stron, które pretenduj do tytuu Web 2.0. Kilka rozszerze,
które poszerzaj Joomla! o funkcje budowania wirtualnych spoecznoci, przedstawiono
w rozdziale 10.
Rozszerzenia dla tego obszaru pogrupowano w JED w nastpujce kategorie:
Q

Komunikacja (ang. Communications) — Zawiera podkategorie: Zakadki i polecane
(Bookmarks & Recommended), Czat (Chat), Komentarze (Comments), Kontakty
(Contacts), E-mail, Formularze (Forms), Fora (Forums), Integracja z forami
(Forum Bridges), Dodatki do forów (Forum extras), Ksigi goci (Guest Book),

128

Joomla!. Profesjonalne tworzenie stron WWW
Listy mailingowe (Mailing & Distribution Lists), Newsletter, Sondy (Polls),
Quizy i badania (Quiz & Surveys), Shoutbox, SMS & PMS, Komunikacja
z uytkownikami (User interaction).
Q

Kalendarze i wydarzenia (Calendars & Events) — Zawiera podkategorie:
Urodziny i wydarzenia historyczne (Birthdays & Historic Events), Rezerwacja
(Booking & Reservations), Kalendarze (Calendars), Zegarki (Clocks), Odliczanie
(Countdown), Data i czas (Date & Time), Wydarzenia (Events), Uroczystoci
(Festivities).

Dodawanie komentarzy do artykuów
Jedn z najpopularniejszy metod budowania wirtualnych spoecznoci jest umoliwienie
uytkownikom nadsyania wasnych komentarzy zwizanych z danym artykuem lub wpisem
na blogu. Fora internetowe s czsto puste, poniewa brakuje na nich prowokatorów piszcych
nowe wiadomoci, które skaniaj innych do odpowiedzi. Funkcja dodawania komentarzy
do istniejcej treci moe by solidn motywacj dla uytkowników. Prawie kady lubi od
czasu do czasu dorzuci swoje trzy grosze.
Posiadanie sekcji komentarzy wymusza konieczno moderacji. Ludzie czsto nadsyaj
treci zabronione, atakuj innych, zdradzaj informacje osobiste, dodaj reklamy, materiay obra liwe i obsceniczne, a take (co jest najgorsze) krytyk pod adresem autora
strony. Zgoda na komentarze wymaga od administratora wikszej uwagi odnonie do
tego, co dzieje si na stronie ni w przypadku braku komentarzy. Musisz zdawa sobie
spraw, e powicenie dodatkowego czasu jest niezbdne, o ile nie chcesz, eby Twoja
strona przerodzia si w Dziki Zachód rzdzony mentalnoci „wszystko wolno”.

Dodatek Akocomment umoliwia uytkownikom Joomla! dodawanie komentarzy pod kadym
artykuem. Rozszerzenie Akocomment (omówione dokadniej w rozdziale 10) jest jednym
z najczstszych rozszerze dodajcych komentarze w systemie Joomla!. Poprawnie obsuguje
komentarze w rónych jzykach, np. angielskim, chiskim czy norweskim. Najczciej stosowana wersja rozszerzenia to Akocomment Tweaked Special Edition.
Interfejs administracyjny umoliwia dokadn konfiguracj rozszerzenia, wczajc w to
zakadki, dodawanie, powiadomienia, zgaszanie, ulubione i szablony.

Ksiga goci
Jedn z funkcji najczciej pojawiajcych si na hobbystycznych stronach WWW jest ksiga
goci. Ksigi goci zaliczane s do pierwszy funkcji komunikacyjnych, które sigaj pocztku
samych stron internetowych. Umoliwiay odwiedzajcym zamieszczanie komentarzy (najlepiej komplementów) lub sugestii zwizanych z zawartoci strony.
Ksiga goci jest nadal bardzo popularna. Jedn z najlepszych funkcji dynamicznego systemu
takiego jak Joomla! jest fakt, e zmienia si automatycznie. Dziki temu wyglda na cigle
aktualizowan — nawet jeli nie bya odwieana od jakiego czasu. Wyszukiwarka Google
wykorzystuje okolicznociowe bannery, aby zmienia wygld strony gównej. A gdyby Twoja

Rozdzia 4.

Q

Dodawanie i modyfikacja dostpnych rozszerze

129

witryna wywietlaa losowy wpis z ksigi goci na stronie gównej? Oczywicie musiaby
wprowadzi moderacj ksigi goci, aby zapobiec pojawianiu si reklam, spamu i treci obscenicznych na stronie. Moderacja wymagaaby co prawda dodatkowej pracy, ale za to
mielibymy stron WWW, która za kadym razem wita odwiedzajcego zacht, wyraon
sowami poprzednich uytkowników.
Zanim napiszesz modu, który pobiera losowy cytat z ksigi goci, musisz zainstalowa dodatek odpowiedzialny za zbieranie opinii uytkowników. W rozdziale 10. znajdziesz wicej
informacji na ten temat.

Czat na stronie Joomla!
Czat moe by doskonaym dodatkiem na stronie WWW, ale moe take okaza si trudny
w promocji i jeszcze trudniejszy w zarzdzaniu. Wikszo stron WWW ogranicza dostp
do czatu, jest on uruchamiany tylko na specjalne okazje, np. obecno gocia, co moe by
najrozsdniejszym wyborem. Biorc pod uwag ilo drapieników i ludzi z niejasnymi
intencjami w sieci, czat pozbawiony monitoringu i ogranicze jest prost recept na katastrof
dla webmastera.
Joomla Live Chat, przedstawiony na rysunku 4.22, jest czatem administrator-uytkownik,
który pozwala na komunikacj jeden-do-jednego z odwiedzajcymi Twoj stron. Rozszerzenie to doskonale nadaje si do pomocy technicznej zwizanej ze stron. Wykorzystuje
technologi Ajax do dynamicznego uaktualniania okna rozmowy, pozwala na alerty dwikowe i dania sesji.
Rysunek 4.22.
Interfejs Joomla
Live Chat
przypomina
wygldem
klasyczny czat

130

Joomla!. Profesjonalne tworzenie stron WWW

Uruchamianie systemu wiki w Joomla!
Ward Cunningham wynalaz w latach osiemdziesitych now metod wspópracy zwan wiki,
co odpowiada stronie internetowej, na której odwiedzajcy mog dodawa , zmienia , rozszerza i usuwa artykuy. Najbardziej znanym przykadem tego systemu jest internetowa
encyklopedia o nazwie Wikipedia (www.wikipedia.org). Uytkownicy samej tylko angielskiej
wersji stworzyli dotychczas ponad 2,5 miliona artykuów.
W cigu ostatniego dziesiciolecia fenomen wiki zanotowa ogromny wzrost. Spoeczno
open source szczególnie skorzystaa na istnieniu stron wiki, poniewa wielu programistów
aplikacji open source nie ma czasu, aby tworzy dokumentacj dla swojej pracy. Strona wiki
stworzona dla danej aplikacji (np. narzdzie do tworzenia mapy myli FreeMind) pozwala
pasjonatom programu dodawa uyteczne informacje, wskazówki, a take opisywa te czci,
których wykorzystanie nie jest oczywiste.
Joomla! umoliwia stworzenie systemu wiki dziki komponentowi o nazwie OpenWiki.
OpenWiki jest adaptacj projektu DokuWiki (stworzonego przez Adreasa Gohra) na potrzeby
Joomla!. Jest to aplikacja PHP zawierajca funkcje wiki, zaprojektowana z myl o szybkoci
i prostocie. Chocia inne aplikacje wiki posiadaj wikszy zasób opcji (np. projekt open source
MediaWiki wykorzystywany przez Wikipedi), OpenWiki zajmuje mniej zasobów i dziaa
duo szybciej.
OpenWiki mona pobra na poniszej stronie:
http://www.joomla.sk/rozsirenia/startdown/294/
Po zainstalowaniu OpenWiki zostanie wywietlony ekran pocztkowy. Uprawnienia edycji
poczone s z kontrol dostpu Joomla!, take moliwe jest ustawienie praw odczytu (Read),
edycji (Edit), tworzenia (Create) i usuwania (Delete) dla kadej grupy uytkowników.
Po klikniciu przycisku Edit This Page na górze ekranu zostanie wywietlone okno edytora
zawierajce tre artykuu (zobacz rysunek 4.23) w standardowej notacji wiki. Odnoniki
kierujce do innych czci strony zapisane s w postaci podwójnych nawiasów kwadratowych
( [[ ]] ), a odnoniki zewntrzne umieszcza si w pojedynczych nawiasach kwadratowych
( [ ] ). Przyciski znajdujce si nad oknem edytora pozwalaj wstawia kod dla obrazków
lub nagówków.
Poszczególne strony wiki przechowywane s w postaci plików tekstowych w katalogu \pages
komponentu:
\com_openwiki\data\pages
Ze wzgldu na format plików edycja stron moliwa jest za pomoc kadego zwykego edytora
tekstu. Rozszerzenie OpenWiki wykorzystuje format DocBook. Jest to jzyk znaczników
podobny do HTML. Ma on uatwi tworzenie dokumentacji dla systemów open source, takich
jak FreeBSD, KDE, GTK+, Gnome i Linux. Format zosta zaprojektowany z myl przechowywania danych, a nie o ich prezentacji, dlatego jest zgodny z wzorcem Model-WidokKontroler (MVC).
Temat wzorca MVC zosta szerzej opisany w rozdziale 8.

Rozdzia 4.

Q

Dodawanie i modyfikacja dostpnych rozszerze

131

Rysunek 4.23.
Na ekranie
edycji wywietla
si tekst
wykorzystujcy
standardowe
formatowanie
wiki

Poczwszy od wersji 4, sposób przechowywania danych oparty jest na formacie XML.
Przykadowy fragment kodu DocBook:
<book id="pro_joomla">
<title>Professional Joomla!</title>
<chapter id="rozdzial_1">
<title>Rozdzia 1. Wprowadzenie<title>
<para>Jeli czytasz t ksik...</para>
<para>Sposób na opanowanie Joomla!...</para<
</chapter>
<chapter id="rozdzial_2">
<title>Rozdzia 2. Szczegóy instalacji</title>
<para>Joomla! opiera si na 4 rónych technologiach serwerowych...</para>
</chapter>
</book>

Dziki przechowywaniu informacji w takim formacie dane mog by modyfikowane przez
oprogramowanie niezwizane z systemem wiki. Oznacza to, e artykuy stworzone w OpenWiki mog zosta przetworzone na dowolny typ treci statycznych6.
Przy wprowadzaniu zmian na stronie zostaj zapisane take rónice, dziki czemu moliwe
jest odtworzenie poprzednich wersji. Na rysunku 4.24 przedstawiono przykadowy ekran
porównania wersji. Wstawiony tekst oznaczony jest znakiem plusa (+) po lewej stronie nowej
wersji, wywietlanej w prawej kolumnie. Dodatkowo zmiany s podwietlane, co uatwia ich
lokalizacj.

6

Takich jak pliki HTML w przypadku Joomla! — przyp. tum.

132

Joomla!. Profesjonalne tworzenie stron WWW

Rysunek 4.24.
W rozszerzeniu
OpenWiki jest
funkcja
porównywania
wersji pliku

OpenWiki ma jednak kilka cech, które mog sprawia problemy operatorom adaptujcym
to rozszerzenie. Dla wielu uytkowników mylcy moe by brak przycisku New Page (Nowa
strona). Poniewa wszystkie strony musz by ze sob poczone, aby doda now, musisz
najpierw stworzy odnonik na istniejcej stronie. Przykadowo nowe odwoanie, które naley
wstawi w tre istniejcego artykuu, moe wyglda tak:
[[joomla_jumpstart]]

Po klikniciu odnonika zostanie wywietlony ekran tworzenia nowej strony, co zilustrowano
na rysunku 4.25.
Rysunek 4.25.
Kliknicie
odnonika
prowadzcego
do nieistniejcej
strony spowoduje
wywietlenie
ekranu tworzenia
nowej strony

Kilka ogranicze OpenWiki:
Q

Wszystkie pliki kodowane s jako UTF-8 — Dokumenty dostpne s tylko w formie
zakodowanej w UTF-8, niezalenie od zestawu znaków ustawionego w Joomla!.
Dlatego, niektóre artykuy napisane w innych jzykach ni angielski (np. inne pliki
DocBook) mog sprawia problemy w systemie.

Rozdzia 4.

Q

Dodawanie i modyfikacja dostpnych rozszerze

Q

Brak czci administracyjnej — Z tego powodu systemem wiki nie mona
zarzdza jak zwyczajnym rozszerzeniem Joomla!, caa konfiguracja musi
przebiega z poziomu strony gównej.

Q

Oddzielna wyszukiwarka — Artykuy OpenWiki nie s dostpne dla reszty
systemu Joomla!, z tego powodu wymagaj oddzielnej wyszukiwarki. Dlatego
artykuy Joomla! s niewidoczne dla wyszukiwarki wiki, a artykuy wiki
dla wyszukiwarki Joomla!.

133

eWriting
Przedstawione na rysunku 4.26 rozszerzenie eWriting umoliwia dodawanie artykuów przez
odwiedzajcych stron. Rozszerzenie stworzono z myl o stronach powiconych fan fiction
(na których umieszczane s autorskie romanse lub historie zwizane ze Star Trekiem). W interfejsie przewidziano moliwo dodawania obrazków i automatycznego przydzielania do
kategorii.
Rysunek 4.26.
Strona
rozszerzenia
eWriting,
na której
uytkownicy mog
dodawa wasne
opowiadania

Zanim umoliwisz dodawanie opowiada, najpierw musisz okreli kilka kategorii, do których
mog by przydzielane. Kategorie rozszerzenia eWriting przypominaj kategorie Joomla!,
mona im przypisa obrazek i nada opis.
Po utworzeniu kategorii opowiadania mona dodawa w interfejsie administracyjnym lub
z poziomu strony gównej. Opowiadania zapisywane s w postaci rozdziaów i mog by
wprowadzane z klawiatury lub wysyane w postaci plików tekstowych (.txt) lub plików HTML
(.htm albo .html) — istnieje jednak moliwo okrelenia dodatkowych typów plików w interfejsie administracyjnym.
Na stronie gównej mona te wstawi modu, który wywietla statystyki. W interfejsie
administracyjnym mona zarzdza dodanymi opowiadaniami, docza nowe i tworzy
rozdziay. Istnieje take moliwo dodawania obrazów do galerii uytkownika, integracji
z rozszerzeniem Community Builder, Joomlaboard Forum lub systemami prywatnych wiadomoci (PMS), takimi jak Missus lub MyPMSII.

134

Joomla!. Profesjonalne tworzenie stron WWW
Twórcy eWriting s jednoczenie autorami rozszerzenia Missus, które dodaje
moliwo wysyania prywatnych wiadomoci na stronie Joomla!. Wiadomoci
wysyane midzy uytkownikami mog zawiera zaczniki. Rozszerzenie Missus
moesz pobra ze strony internetowej eWriting.

Implementacja ogosze
Wprowadzenie na stronie moliwoci umieszczania ogosze moe by dobrodziejstwem dla
Twoich uytkowników. Wielu ludzi myli o eBayu jako gównym miejscu sprzeday uywanych przedmiotów, ale istniej te strony, takie jak www.photo.net, które robi wietny interes,
trafiajc w nisz rynkow, której grupa odbiorców skada si ze specjalistów. W przypadku
rynków niszowych osoby odwiedzajce stron nale do konkretnej, okrelonej grupy, co
moe zwikszy dochody z wymiany.
Oczywicie ogoszenia nie musz by ograniczone wycznie do sprzeday produktów. Oferty
usug, informacje o wydarzeniach, anonse towarzyskie itp. — wszystko to mona umieci
jako ogoszenie. Biura ogosze nabray nowego znaczenia w dobie internetu dziki takim
stronom jak cragslist7.
Rozszerzenie Noah’s Classifieds, przedstawione na rysunku 4.27, umoliwia tworzenie hierarchicznych kategorii bez ograniczenia liczby zagniede, doczanie zdj do ogosze,
okrelanie dodatkowych pól dla wybranych kategorii, a take powiadomienia e-mailem.
Rysunek 4.27.
Strona gówna
rozszerzenia
Classifieds

7

Najwiksza na wiecie strona internetowa powicona publikacji ogosze — przyp. tum.

Rozdzia 4.

Q

Dodawanie i modyfikacja dostpnych rozszerze

135

Jeli klikniesz odnonik Home w menu Noah Classifieds, pojawi si opcja Create New Category (Utwórz now kategori). Nastpnie moesz ustawi parametry kategorii, aby umoliwi
zwykym uytkownikom dodawanie ogosze. Wtedy, po wybraniu danej kategorii, zostanie
wywietlona opcja Submit Ad (Dodaj ogoszenie).
Za pomoc interfejsu administracyjnego, pokazanego na rysunku 4.28, mona w peni kontrolowa rozszerzenie, np. zablokowa dan kategori (eby nie mona byo dodawa do niej
nowych ogosze) lub przypisa dodatkowe pola dla danej kategorii.
Rysunek 4.28.
Cz
administracyjna
pakietu
Classifieds

Upewnij si, czy w sekcji ogosze umiecie informacj, e nie ponosisz odpowiedzialnoci za adne transakcje zawarte za jej porednictwem. Dodatkowo umie
owiadczenie, e zastrzegasz sobie prawo do usunicia dowolnego ogoszenia z dowolnego powodu, jeli w Twoim mniemaniu godzi ono w dobro strony. Doskonaym przykadem
s „Terms of Use” („Warunki uycia”) na stronie www.craigslist.org.

Dodawanie ledzenia wyników sportowych
Dziki rozszerzeniu JoomLeague, które zilustrowano na rysunku 4.29, moesz umieci
na stronie ledzenie wyników sportowych z rónych dyscyplin, np. piki nonej, baseballu,
futbolu amerykaskiego itd. Moliwe jest ledzenie statystyk wybranych druyn lub caej ligi.
System punktów jest elastyczny, co pozwala na prowadzenie tabeli wyników prawie dla kadej
dyscypliny. Istnieje te funkcja dodawania obrazków danej druyny, np. zdj , logotypów,
herbów itp.

136

Joomla!. Profesjonalne tworzenie stron WWW

Rysunek 4.29.
Rozszerzenie
JoomLeague
pozwala ledzi
wyniki
z wikszoci
dyscyplin
sportowych

ledzenie wyników podzielone jest na projekty, co w praktyce opowiada danym ligom.
Nastpnie okrelane s druyny i gracze.
Oprócz gównego komponentu odpowiedzialnego za ledzenie wyników pakiet zawiera take
kilka moduów:
Q

Events Statistic Module (Statystyki wydarze) — Wywietla list eventtype
dla wybranego projektu.

Q

Next Match Module (Nastpny mecz) — Wywietla nastpny mecz dla wybranej
lub ulubionej druyny.

Q

Random Player Module (Losowy gracz) — Wywietla losowego gracza
dla wybranego projektu i wybranej druyny.

Q

Ranking Module (Ranking) — Przedstawia aktualne zestawienie dla wybranego
projektu.

Q

Results Module (Wyniki) — Przedstawia ostatnie wyniki dla wybranego projektu.

Q

Results Tab Module (Zakadki wyników) — Przedstawia ostatnie wyniki pogrupowane
za pomoc JavaScriptu w trzy pojedyncze zakadki.

Q

Team Players Module (Gracze z druyny) — Wywietla list graczy Twojej ulubionej
druyny wedug pozycji graczy.

Q

Navigation Menu Module (Nawigacja) — Dostarcza dodatkowego menu
nawigacyjnego, które umoliwia szybki dostp do zapisanych informacji.

Rozdzia 4.

Q

Dodawanie i modyfikacja dostpnych rozszerze

137

W czci administracyjnej mona skonfigurowa miejsca docelowe
dla poszczególnych pozycji menu.
Z poziomu interfejsu administratora mona w peni skonfigurowa system ledzenia wyników.

ledzi mona wedug projektów, klubów, druyn, graczy, pozycji graczy, wydarze i sdziów
wydarze.
Odwied stron domow rozszerzenia, aby pobra najnowsz wersj wraz kilkoma przykadowymi konfiguracjami. Cz strony jest w jzyku niemieckim, dlatego znajomo tego
jzyka uatwi Ci pene wykorzystanie moliwoci rozszerzenia. Stron domow moesz
odwiedzi pod adresem:
www.joomleague.de

Dodawanie gier hazardowych
Jedn z propozycji poprawy atrakcyjnoci strony Joomla! s gry dla odwiedzajcy. Korzystajc z pakietu rozszerze Joomla Casino, mona doda na stronie jedn z nastpujcych
gier: bakarat, jednorki bandyta, video poker, ruletka i blackjack (zobacz rysunek 4.30). Joomla
Casino to platforma stale poszerzana o nowe gry, dlatego do czasu, kiedy bdziesz czyta t
ksik, moga wzbogaci si o dodatkowe pozycje.
Rysunek 4.30.
Gra Joomla
Casino blackjack
ma pikny
interfejs
uytkownika

Aby zainstalowa gr, musisz najpierw doda komponent bazowy o nazwie com_casinobase,
który zawiera gówn bibliotek. Nastpnie moesz zainstalowa jedn lub wicej gier. Gry dostpne s take w wersji Flash, co przekada si na atrakcyjniejszy wygld i ywsz rozgrywk.
Gr, która dostarcza najwicej emocji, jest prawdopodobnie ruletka. atwo popa w uzalenienie, dlatego moe si okaza , e odwiedzajcy bd cigle wraca na Twoj stron.

138

Joomla!. Profesjonalne tworzenie stron WWW

Obsuga quizów
Quiz moe przybra wiele form — od prostej zagadki, po próbne podejcie do SAT-u8.
Dodatki typu quiz wykazuj spory potencja na polu edukacji — zarówno formalnej, jak
i samodzielnej. Wyobra sobie, e jeste nauczycielem angielskiego, który umieci na stronie
internetowej prosty test z gramatyki, aby uczniowie mogli po wiczy przed gównym sprawdzianem. Inny przykad — prowadzisz stron internetow promujc zalety Peru, a na niej
umieszczasz prosty quiz dotyczcy pooenia gównych prowincji.
Dziki komponentowi Quiz 2.0, przedstawionemu na rysunku 4.31, moesz tworzy quizy
rónego rodzaju: od najprostszych, zawierajcych odpowiedzi tak lub nie albo prawda lub
fasz, po test wyboru (take wielokrotnego). Po ukoczeniu quizu zostanie wywietlony jego
wynik wraz z informacj o powodzeniu lub niepowodzeniu, w zalenoci od ustawie
w interfejsie administracyjnym.
Rysunek 4.31.
Cz
uytkownika
rozszerzenia
Quiz 2.0
przedstawia
aktualnie
wybrany quiz

Interfejs administracyjny Quiz 2.0 skada si z dwóch opcji: edycji quizów i edycji kategorii
quizów. Edycja quizów umoliwia stworzenie nowego lub modyfikacj istniejcego.
Statystyki zawierajce informacje o liczbie udanych lub nieudanych prób, cznej liczbie
quizów i punktacji dostpne s po wpisaniu adresu podobnego do:
www.przyklad.com/index.php?option=com_quiz&task=stats
Rozszerzenie umoliwia wywietlanie quizów w rónych jzykach: angielskim, woskim,
francuskim, duskim, norweskim i szwedzkim.

Podsumowanie
Rozszerzenia to jeden z kluczowych powodów szerokiego wykorzystania Joomla!. Wród
prawie 4000 mona znale niemale dowoln funkcj wzbogacajc system. W tym rozdziale
przedstawiono rónorodne rozszerzenia, które wzbogacaj Joomla!, a w szczególnoci:
8

SAT — ustandaryzowany test dla uczniów szkó rednich w USA, odpowiada polskiej maturze — przyp. tum.

Rozdzia 4.

Q

Dodawanie i modyfikacja dostpnych rozszerze

Q

Udoskonalanie kluczowych funkcji strony WWW i rozbudowywanie interfejsu
administracyjnego o bogatsze opcje wyszukiwania, specjalistyczne edytory
WYSIWYG, zarzdzanie plikami, automatyczne tworzenie mapy strony i wiele
innych.

Q

Wzbogacanie funkcjonalnoci zwizanych z prowadzeniem organizacji i e-commerce
przez implementacj sklepu internetowego, patnych subskrypcji, zarzdzania
projektami, ledzenia kart pracy, prezentacji aukcji.

Q

Poszerzanie zawartoci strony Joomla! o dodatkowe media, np. podcasty
i galerie zdj .

Q

Ulepszanie komunikacji na stronie przez wprowadzenie systemu komentarzy,
czata, ksigi goci lub funkcjonalnoci wiki.

Q

Dodawanie ledzenia wyników sportowych i gier, co zwiksza atrakcyjno .

139

Sporód setek dostpnych rozszerze masz spor szans znale takie, które speni wikszo Twoich potrzeb. Jeli jednak szukasz czego specjalnego, dotychczas niedostpnego,
moesz napisa wasne rozszerzenie. Pierwszy krok w tworzeniu rozszerze, poczwszy od
najprostszego typu — moduu, opisano w rozdziale 5.

Sign up to vote on this title
UsefulNot useful