Idź do
• Spis treści
• Przykładowy rozdział
• Skorowidz
Helion SA
ul. Kościuszki 1c
44-100 Gliwice
tel. 32 230 98 63
e-mail: helion@helion.pl
© Helion 1991–2011
Katalog książek
Twój koszyk
Cennik i informacje
Czytelnia
Kontakt
Drupal 7 w praktyce.
Własna strona WWW
w jeden dzień
Autor: Krzysztof Palikowski
ISBN: 978-83-246-2711-0
Format: 158×235, stron: 192
Stwórz stronę WWW z Drupalem – zrealizuj dowolny pomysł!
• Przygotowania i instalacja, czyli jak zacząć pracę z Drupalem na własnym komputerze.
• Projekt i budowa strony, czyli jak zadbać o strukturę i prezentację treści.
• Przenosiny do internetu, czyli jak uniknąć szkolnych błędów i głupich pomyłek.
Rozwijany od 2001 roku Drupal jest jednym z najlepszych dostępnych obecnie systemów
zarządzania treścią. Kolejne wersje tego CMS-a zjednywały sobie rzesze nowych entuzjastów,
a ostatnia z nich zasługuje na wyjątkową uwagę wszystkich – początkujących i zaawansowanych
– twórców stron WWW. Drupal 7 odznacza się ogromną elastycznością, a ponadto oferuje swoim
użytkownikom ponad 1500 modułów, pozwalających niezwykle precyzyjnie zaprojektować
platformę zarządzania treścią i stworzyć mechanizmy sprawnego zarządzania serwisem.
Książka „Drupal 7 w praktyce. Własna strona WWW w jeden dzień” pozwoli Ci zapoznać się z tym
systemem, oswoić z jego założeniami i możliwościami oraz efektywnie wykorzystać jego potencjał
do własnych celów. Jej autor poprowadzi Cię od zupełnych podstaw, przez proces przygotowań
i instalacji systemu, po kwestie poświęcone budowaniu strony dla klienta bądź dla siebie.
Ponadto skupi się na zagadnieniach dotyczących rozmaitych uprawnień użytkowników witryny,
przenoszenia jej do internetu i dalszej rozbudowy serwisu. Jeśli interesuje Cię pełne spektrum
możliwości Drupala 7 i chcesz zastosować je w praktyce, nie mogłeś trafić lepiej!
• Drupal i inne systemy zarządzania treścią
• Przygotowania do instalacji systemu
• Instalacja i pierwsze kroki
• Struktura i prezentacja treści
• Uprawnienia i administracja
• Przenosiny gotowej strony WWW do internetu
• Utrzymanie i rozbudowa serwisu
Drupal 7 – Twoja przepustka do internetu!
Spis treci
Wstp ................................................................................................................. 9
Rozdzia 1. Drupal i inne systemy zarzdzania treci ........................................ 11
Co to jest CMS? ............................................................................................................. 11
Jaki CMS wybra? .......................................................................................................... 12
Budowa CMS ................................................................................................................. 12
Jakie s charakterystyczne cechy CMS? ......................................................................... 13
Czy potrzebuj CMS? ..................................................................................................... 14
Dlaczego Drupal? ........................................................................................................... 14
Skd czerpa informacje o Drupalu? .............................................................................. 14
Podsumowanie ................................................................................................................ 15
Rozdzia 2. Przygotowania ................................................................................ 17
Nasz projekt .................................................................................................................... 17
Nazewnictwo rodowisk ................................................................................................. 18
rodowisko lokalne ........................................................................................................ 18
Pobieranie i instalacja XAMPP ................................................................................ 18
Zarzdzanie XAMPP ................................................................................................ 19
Poprawki konfiguracji XAMPP ................................................................................ 21
Konfiguracja katalogu ze stron ............................................................................... 21
Narzdzia na komputerze lokalnym ............................................................................... 21
Edytor kodu i plików tekstowych ............................................................................. 21
Firefox i wtyczki ...................................................................................................... 22
rodowisko produkcyjne ................................................................................................ 22
Hosting dla Drupala 7 ............................................................................................... 22
Domena i katalog z plikami na serwerze .................................................................. 23
Konfiguracja katalogu ze stron ............................................................................... 25
Rozdzia 3. Instalacja i pierwsze kroki .............................................................. 27
Pobranie waciwych plików .......................................................................................... 27
Praca z instalatorem ........................................................................................................ 28
Konfiguracja bazy danych ........................................................................................ 30
Dokoczenie instalacji ............................................................................................. 31
Zainstalowalimy Drupala i...? ....................................................................................... 32
Co wida na uruchomionej stronie? ......................................................................... 32
Pierwszy artyku ....................................................................................................... 34
Pierwsza strona ......................................................................................................... 40
6
Drupal 7 w praktyce
Wicej rodzajów zawartoci ..................................................................................... 43
Wczamy pierwszy nowy modu ............................................................................. 43
Poznajemy i konfigurujemy forum ........................................................................... 44
Podsumowanie ................................................................................................................ 47
Rozdzia 4. Budowa strony ............................................................................... 49
Zanim zaczniemy administrowa ................................................................................... 49
Spotkanie z klientem i gówne wymagania .............................................................. 49
Diabe tkwi w szczegóach ....................................................................................... 50
Dobre praktyki administratora .................................................................................. 51
Jak dostosowa system Drupal do naszych potrzeb? ...................................................... 52
Idea maych moduów .............................................................................................. 52
Skd pobiera moduy? ............................................................................................ 53
Zasada: „Nie bdziesz zmienia kodu rdzenia Drupala” ........................................... 53
A co z wygldem? .................................................................................................... 54
Moduy dla administratora .............................................................................................. 54
Devel ........................................................................................................................ 54
Demonstration site .................................................................................................... 55
Localization client i Localization update .................................................................. 56
Features .................................................................................................................... 56
Module Filter ............................................................................................................ 57
Wybieramy moduy do realizacji wymaga klienta ........................................................ 57
Views ....................................................................................................................... 58
Token ....................................................................................................................... 58
Display suite, Context, Panels .................................................................................. 59
Date, Link ................................................................................................................. 61
IMCE ........................................................................................................................ 61
WYSIWYG .............................................................................................................. 62
Inne moduy ............................................................................................................. 62
Jak instalujemy moduy? ................................................................................................ 62
Instalacja za pomoc moduu Update manager ........................................................ 62
Problemy z instalowaniem duych moduów ........................................................... 64
Instalacja rczna ....................................................................................................... 65
Wczanie moduów ................................................................................................. 65
Konfigurujemy strony statyczne ..................................................................................... 66
Nowe pole — Minigaleria ........................................................................................ 67
Poprawka etykiety pola Title .................................................................................... 69
Pierwsza strona z minigaleri ................................................................................... 70
Poprawki w ustawieniach wywietlania pola ........................................................... 71
Wywietlanie zdj moduem Colorbox ................................................................... 72
Poprawki w CSS ....................................................................................................... 73
Skórka potomna ....................................................................................................... 76
Wasny modu .......................................................................................................... 79
Strona z formularzem kontaktowym ........................................................................ 80
Tworzymy rodzaj zawartoci Inicjatywa ........................................................................ 81
Nowe moduy ........................................................................................................... 83
Nowy rodzaj zawartoci ........................................................................................... 83
Nowe sowniki kategorii .......................................................................................... 84
Nowe pola ................................................................................................................ 85
Gotowe ..................................................................................................................... 87
Rozmieszczenie pól na formularzu dodawania zawartoci ....................................... 90
Tryby wywietlania zawartoci ................................................................................ 92
Zmiana szablonu wywietlania zawartoci ............................................................... 94
Spis treci
7
Modu Display suite ................................................................................................. 95
Kilka pierwszych inicjatyw ...................................................................................... 98
Budujemy widok Katalog inicjatyw ............................................................................... 99
Wczamy modu Views .......................................................................................... 99
Tworzenie widoku .................................................................................................... 99
Pierwsze spotkanie z interfejsem Views ................................................................. 101
Formaty wywietlania ............................................................................................ 101
Pierwsze poprawki formatu Strona ......................................................................... 102
Filtry i ich udostpnianie ........................................................................................ 105
Nagówek i stopka .................................................................................................. 106
Blok z ostatnimi inicjatywami ................................................................................ 107
Widok Moje inicjatywy ................................................................................................ 110
Duplikujemy widok ................................................................................................ 110
Filtr kontekstowy ................................................................................................... 110
Konfigurujemy wiadomoci ......................................................................................... 111
Instalujemy edytor WYSIWYG ............................................................................. 111
Obrazki doczone do wpisów ................................................................................ 114
Obrazki w polu Tre ............................................................................................. 116
Alternatywa dla WYSIWYG .................................................................................. 120
Dodanie do Artykuu pola Minigaleria ................................................................... 121
Podsumowanie .............................................................................................................. 122
Rozdzia 5. Uprawnienia ................................................................................. 123
Konta i uprawnienia testowe ........................................................................................ 123
Konta testowe ......................................................................................................... 123
Rangi ...................................................................................................................... 124
Uprawnienia ........................................................................................................... 126
Ustawienia rejestracji nowych uytkowników ....................................................... 129
Moderowanie Artykuów .............................................................................................. 129
Konfiguracja Artykuów ......................................................................................... 130
Powiadomienia e-mailowe ..................................................................................... 130
Widok artykuów do moderacji .............................................................................. 132
Podsumowanie .............................................................................................................. 133
Rozdzia 6. Przenosiny do internetu ................................................................ 135
Przygotowania .............................................................................................................. 135
Eksport bazy danych z uyciem phpMyAdmin ...................................................... 136
Eksport z uyciem mysqldump.exe ........................................................................ 136
Pierwsze przenosiny ..................................................................................................... 137
Tworzenie bazy danych na serwerze ...................................................................... 137
Wysyamy pliki przez FTP ..................................................................................... 138
Wysyamy archiwum z plikami .............................................................................. 138
Rozpakowujemy archiwum z plikami .................................................................... 139
Import pliku .sql do bazy danych za pomoc wiersza polece ............................... 139
Import pliku .sql do bazy danych za pomoc phpMyAdmin .................................. 140
Pomoc administratorów konta ................................................................................ 140
Poprawka konfiguracji w pliku settings.php ........................................................... 140
Tryb przerwy technicznej ....................................................................................... 141
Pliki publiczne i tymczasowe ................................................................................. 142
Pliki prywatne ........................................................................................................ 143
Dlaczego nie dziaa? ............................................................................................... 143
Czste problemy po przenosinach ................................................................................ 144
Komunikat „Wewntrzny bd serwera” ................................................................ 144
Komunikat „Odmowa dostpu SQL” ..................................................................... 144
8
Drupal 7 w praktyce
Niepoprawne cieki dostpu do plików ................................................................ 145
Komunikat „Call to undefined function…” ............................................................ 146
Witryna testowa ............................................................................................................ 146
Instalacja wielowitrynowa ...................................................................................... 147
Nowa baza danych ................................................................................................. 147
Nowa domena ......................................................................................................... 147
Nowy katalog w folderze sites ............................................................................... 148
Przenosimy bazy danych ........................................................................................ 149
Test ......................................................................................................................... 149
Podsumowanie .............................................................................................................. 150
Rozdzia 7. Rozbudowa .................................................................................. 151
Konfigurujemy forum ................................................................................................... 151
Dodanie oceny „Kciuk w gór!” do odpowiedzi na forum ..................................... 151
Powiadomienia o odpowiedzi ................................................................................. 153
Blogi uytkowników .................................................................................................... 155
Uruchomienie moduu i uprawnie ........................................................................ 155
Poprawki w domylnych ustawieniach ................................................................... 155
Emocje we wpisach ................................................................................................ 156
Prywatne wiadomoci ................................................................................................... 157
Zadania i notatki ........................................................................................................... 158
Tworzymy zawarto typu notatka ......................................................................... 158
Nowe pola w notatkach .......................................................................................... 158
Blok Powizane elementy przy inicjatywie ............................................................ 160
Tworzymy zawarto typu zadanie ........................................................................ 164
Poprawiamy widok Powizane elementy ............................................................... 166
Widok Powizane elementy — kolejna metamorfoza ............................................ 168
Widok Zadania ....................................................................................................... 171
Skórka i nawigacja ....................................................................................................... 172
Instalacja i wczanie skórek .................................................................................. 173
Rozmieszczenie bloków w nowej skórce ............................................................... 174
Menu ...................................................................................................................... 175
Prezentacja menu .................................................................................................... 177
Theme developer .................................................................................................... 179
Wydajno .................................................................................................................... 180
Pomiar narzdziem ab ............................................................................................ 180
Opcje wydajnoci dostpne w Drupal 7 ................................................................. 181
Yslow, Pagespeed ................................................................................................... 181
Dodatkowe moliwoci .......................................................................................... 182
Inne wymagania klienta ................................................................................................ 183
Biuletyny ................................................................................................................ 183
Dodawanie mediów do treci ................................................................................. 183
Przepywy pracy, reguy biznesowe ....................................................................... 184
Oznaczanie treci flagami ...................................................................................... 184
Praca grupowa, spoecznoci .................................................................................. 185
Formularze ............................................................................................................. 185
Podsumowanie .............................................................................................................. 186
Zakoczenie ................................................................................................... 187
Skorowidz ....................................................................................................... 189
Rozdzia 5.
Uprawnienia
Konta i uprawnienia testowe
Konta testowe
W nastpnych krokach poudajemy troch dwie róne osoby — waciciela oraz uyt-
kownika serwisu. Zgodnie z opisem uzyskanym od klienta takie bd nasze dwie gów-
ne role w systemie, przynajmniej na pocztku. Waciciel ma za zadanie dba o stron
gówn i przydziela uprawnienia, natomiast zaufany uytkownik bdzie móg w sys-
temie prowadzi swój rejestr inicjatyw, a w dalszej przyszoci dziennik i notatnik.
Postaramy si zbudowa rodowisko, w którym zleceniodawca bdzie móg bez trudu
testowa tak struktur, czyli dodawa nowe konta, sprawdza, czy maj odpowiednie
uprawnienia, czy widz waciwe treci itd.
Zarejestrujmy w tym celu dwa konta. Obiecaem na pocztku jednego z rozdziaów, e
zasymuluj nieco rozdwojenie jani, i speniam t obietnic — konto dla waciciela
bdzie nazwane Krzysiek Palikowski, natomiast konto dla uytkownika zaufanego na-
zwiemy bardzo oryginalnie — Tester.
W dziale zarzdzania uytkownikami (odnonik Ludzie na pasku administracyjnym)
kliknijmy Dodaj uytkownika. Podajemy wymagane pola, dowolny e-mail (na serwe-
rze lokalnym nie ma to znaczenia) oraz haso. Reszt opcji pozostawiamy bez zmian
i nowe konto zapisujemy w systemie. Nastpnie powtarzamy t czynno dla drugiego
uytkownika.
Jeli klikniemy nazw uytkownika, która z pewnoci pojawi si na powiadomieniu
o powodzeniu naszego dziaania, zostaniemy przeniesieni na indywidualn dla kade-
go uytkownika stron. W zalenoci od uruchomionych moduów mog na niej zna-
le si dodatkowe karty, np. Devel (rysunek 5.1).
124
Drupal 7 w praktyce
Rysunek 5.1.
Strona uytkownika
w systemie Drupal
Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania
strony na takim uytkowniku. W ten sposób w jednej przegldarce (np. Firefox) admi-
nistrujemy stron jako admin, a w innej (np. Opera) przegldamy serwis jako Krzysztof
Palikowski lub Tester.
Gdy ju zalogujemy si na konto dowolnego testowego uytkownika, zauwaymy, e
nie ma tam ani paska administracyjnego, ani odnonika Dodaj tre, co oznacza, i nie
moemy utworzy adnego wpisu. Poniewa wpisy to równie wtki na forum, nawet
tam zobaczymy komunikat: „Brak uprawnie do dodawania nowych wpisów na forum”
(rysunek 5.2).
Rysunek 5.2.
Uprawnienia zwykego
uytkownika nie
wystarczaj na
dodawanie treci
do systemu
Zaradzimy temu, tworzc nowe rangi i ustawiajc w nich stosowne uprawnienia.
Rangi
Drupal posiada system uprawnie bazujcych na rangach. Moemy zaoy dowoln
ich liczb, jednak zazwyczaj wystarczaj te gotowe, które ju istniej w systemie, a ich
mnoenie ponad potrzeb prowadzi do komplikacji w utrzymaniu strony.
Klikajc widoczn na pasku administracyjnym opcj Ludzie, a nastpnie wybierajc
kart Uprawnienia, zobaczymy tabel zawierajc szereg przywilejów, które moemy
przydzieli do poszczególnych rang (rysunek 5.3).
Jak wida, w systemie zdefiniowane s trzy gówne rangi:
Uytkownik anonimowy,
Uytkownik uwierzytelniony,
Administrator.
Rozdzia 5.
i Uprawnienia
125
Rysunek 5.3.
Przykadowe
uprawnienia do
moduu Comment
Klient yczy sobie, aby system rejestracji uytkowników by moderowany (tzn. chcia-
by zatwierdza konto kadego uytkownika), moglibymy wic zaoy, e ranga Uyt-
kownik uwierzytelniony jest równoznaczna z rang Uytkownik zaufany, któr propono-
wa klient. Bezpieczniej bdzie jednak utworzy w tym celu dodatkow rang, choby
na tak okoliczno, gdy odbiorca zdecyduje si jednak na udostpnienie systemu do
rejestracji dla wszystkich chtnych. Wtedy zbyt due uprawnienia rangi Uytkownik
uwierzytelniony, któr nabywa kady posiadajcy konto i zalogowany do serwisu, za-
czn nam ciy. Bdziemy musieli tak czy owak stworzy now, bardziej elitarn kast
uytkowników, przenie do niej ju zarejestrowanych itp. Zróbmy to wic od razu.
Na stronie z uprawnieniami mamy tak naprawd dwa miejsca z konfiguracj — Upraw-
nienia i Rangi. S one do gboko ukryte i w pierwszej chwili trudne do zauwaenia
(rysunek 5.4).
Rysunek 5.4.
Zakamuflowane
odnoniki do
konfiguracji
uprawnie i rang
Przechodzimy na t drug kart, wprowadzamy nazw nowej grupy i klikamy Dodaj
rang (rysunek 5.5).
Rysunek 5.5.
Moment tworzenia
kolejnej grupy
uprawnie
Jeli chodzi o konto Krzysztof Palikowski, moglibymy przyzna mu rang Admini-
strator i rozwiza problem uprawnie dla zleceniodawcy. Wszystko jednak zaley od
tego, czy bdzie on równie zarzdza serwisem w zakresie instalacji moduów, kon-
figuracji bloków itp. Jeli tak, dodanie mu rangi Administrator czy wrcz przekazanie
126
Drupal 7 w praktyce
mu loginu i hasa do konta admin (a potem ewentualnie zmiana nazwy konta na Krzysz-
tof Palikowski) jest jak najbardziej wskazane. Jednak my zaoymy, e nasz klient b-
dzie chcia sam si skupi na uywaniu serwisu i zarzdzaniu treci, dlatego utworzy-
my mu rang Waciciel.
Teraz musimy przydzieli nowe rangi uytkownikom.
Przechodzimy na stron Ludzie i w kolumnie Czynnoci poszczególnych kont klikamy
odnonik edytuj. Na stronie pozwalajcej na edycj uytkownika zaznaczamy waci-
w rang i zapisujemy zmiany. Dla konta Krzysztof Palikowski bdzie to ranga waci-
ciel, a dla Testera ranga uytkownik zaufany (rysunek 5.6).
Rysunek 5.6.
Rangi uytkownika
Tester
Po zapisaniu zmian powinnimy widzie w tabeli z kontami uytkowników dane o ich
rangach (rysunek 5.7).
Rysunek 5.7.
Rangi i uytkownicy
systemu testowego
Uprawnienia
Majc zaoone nowe rangi, musimy jeszcze ustawi odpowiednie uprawnienia. Zro-
bimy to za pomoc znanej ju nam tabelki spod adresu .../admin/people/permissions.
Zobaczymy na niej nowo zaoone rangi w postaci kolumn.
Poniewa tworzymy system, który jest zamknity dla przypadkowych osób, moemy
anonimowym uytkownikom zabroni dostpu do strony, a dla osób „tylko” zalogo-
wanych (z rang uytkownik uwierzytelniony) pozostawi jedynie moliwo oglda-
nia treci.
Administrator powinien z definicji mie wszystkie moliwe uprawnienia. Ponisza ta-
bela prezentuje uprawnienia dla innych rang, które powinnimy zaznaczy, aby spe-
ni wymagania klienta (tabela 5.1).
Rozdzia 5.
i Uprawnienia
127
Tabela 5.1.
Uprawnienia dla rang utworzonych w systemie
Modu/Uprawnienie
Uytkownik
anonimowy
Uytkownik
uwierzytelniony
Uytkownik
zaufany
Waciciel
Comment
Zarzdzaj odpowiedziami
i ustawieniami odpowiedzi
—
—
—
X
Przegldanie odpowiedzi
—
X
X
X
Odpowiedzi do wpisu
—
—
X
X
Pomi zatwierdzanie odpowiedzi
—
—
—
X
Edycja wasnych odpowiedzi
—
—
X
X
Contact
Administracja formularzami
kontaktowymi i ich ustawieniami
—
X
Uywaj formularza kontaktowego
dla caej strony
X
X
Uywaj formularzy kontaktowych
uytkowników
X
X
Contextual links
Uywaj odnoników kontekstowych
X
X
Date
Wgld w daty cykliczne
X
X
Filter
Wywietlaj format tekstu Full HTML
—
—
—
X
Forum
Administracja forum
—
X
Menu
Administracja menu oraz pozycjami
w menu
—
X
Node
Pomi kontrol dostpu
do zawartoci
X
Administracja zawartoci
—
X
Przegldanie opublikowanej
zawartoci
X
X
X
Przegldanie wasnych
nieopublikowanych zawartoci
X
X
Przegldanie historii zmian
zawartoci
X
X
Przywró wersj zawartoci
—
X
Usuwanie wersji wpisów
—
X
128
Drupal 7 w praktyce
Tabela 5.1.
Uprawnienia dla rang utworzonych w systemie — cig dalszy
Modu/Uprawnienie
Uytkownik
anonimowy
Uytkownik
uwierzytelniony
Uytkownik
zaufany
Waciciel
Path
Tworzenie i edycja aliasów URL
—
X
Search
Uywaj wyszukiwania
X
X
X
Uywaj wyszukiwania
zaawansowanego
X
X
X
System
Przegldanie raportów o witrynie
—
X
Dostp do strony w trakcie przerwy
technicznej
—
X
Taxonomy
Administracja sownikami
i terminami
—
X
User
Administracja uprawnieniami
X
Administracja uytkownikami
—
X
Przegldanie profilów
uytkowników
X
X
Views
Zarzdzaj widokami
—
X
W tabeli pominito grup uprawnie do korzystania z poszczególnych rodzajów za-
wartoci, któr mona znale w sekcji Node. Jeli chodzi o rangi administrator i wa-
ciciel, wystarczy zaznaczy Pomi kontrol dostpu do zawartoci i wówczas rangi te
uzyskaj moliwo dodawania, usuwania i modyfikowania dowolnego wpisu w witrynie.
Dla grupy uytkownik zaufany najczytelniej bdzie przedstawi to tak jak w tabeli 5.2.
Tabela 5.2.
Uprawnienia do rodzajów zawartoci dla uytkowników zaufanych
Nowy
(Create new
content)
Edycja
wasnych
(Edit own
content)
Edycja
wszystkich
(Edit any
content)
Usuwanie
wasnych
(Delete own
content)
Usuwanie
wszystkich
(Delete any
content)
Temat na forum
X
X
—
—
—
Artyku
X
X
—
—
—
Inicjatywa
X
X
—
X
—
Prosta strona
—
—
—
—
—
Rozdzia 5.
i Uprawnienia
129
Ustawienia rejestracji nowych uytkowników
Aby nie dopuci do takiej sytuacji, e uytkownik, o którym nic nie wiemy, zareje-
struje si w serwisie i uzyska zbyt szerokie uprawnienia (np. moliwo dodawania od-
powiedzi bez zatwierdzania), musimy przyjrze si ustawieniom decydujcym o tym,
w jaki sposób s tworzone w systemie nowe konta.
W tym celu przechodzimy do dziau Konfiguracja, a potem Ustawienia kont uytkow-
ników. Wród wielu opcji powinnimy odszuka nagówek Kto moe rejestrowa konta
uytkowników?. Tam zdecydujemy, czy tylko administratorzy mog rejestrowa konta
uytkowników, czy moe uytkownicy bd sami si rejestrowa, ale ich konto bdzie
zablokowane, dopóki nie zatwierdzi go administrator.
W tym drugim przypadku po wypenieniu formularza rejestracyjnego na adres witry-
ny (podany w dziale Konfiguracja/Podstawowe dane) przyjdzie e-mail z informacj
o tym, e kto prosi o aktywowanie konta. Operacji tej dokonuje si poprzez kliknicie
odnonika nadesanego e-mailem, co spowoduje przejcie do strony edycji konta. Innym
sposobem jest wywietlenie tabeli uytkowników (kliknicie odnonika Ludzie na belce
administracyjnej), zaznaczenie jednego lub kilku kont i wybranie z listy dostpnych
opcji aktualizacji pozycji Zezwól wybranym uytkownikom na dostp (rysunek 5.8).
Rysunek 5.8.
Odblokowanie konta
uytkownika
Jeli zechcemy nada uytkownikowi rang wysz ni Uytkownik zarejestrowany,
równie moemy to zrobi na dwa sposoby — przez edycj profilu bd aktualizacj.
Moderowanie Artykuów
Ustalony w poprzednim punkcie zestaw uprawnie odpowiada z grubsza temu, co chce-
my osign, jednak to jeszcze nie koniec pracy. Przygotowanie strony dla kilku rang
ma swoje konsekwencje — bdziemy musieli poprawi nieco konfiguracj niektórych
obiektów w systemie, ewentualnie stworzy nowe widoki czy powiadomienia.
Jeli na przykad chcemy, aby to waciciel zatwierdza widoczno artykuów na stro-
nie gównej albo w ogóle dopuszcza je do publikacji (decydowa, czy wpis jest opu-
blikowany), musimy skonfigurowa kilka rzeczy:
Uytkownicy zaufani mog dodawa artykuy, ale nie mog by one
od razu opublikowane.
130
Drupal 7 w praktyce
Waciciel strony powinien dosta e-maila za kadym razem, gdy kto
doda artyku do systemu.
Waciciel po wejciu na stron powinien widzie, e s jakie wpisy
do moderacji.
Te trzy oczywiste potrzeby bdziemy mogli speni, konfigurujc system w trzech ob-
szarach:: konfiguracji rodzaju zawartoci Artyku, ustawieniach Dziaa i Wyzwalaczy
oraz przez dodanie nowego widoku.
Konfiguracja Artykuów
Przechodzimy teraz do dziau Struktura i Rodzaje zawartoci, a nastpnie klikamy edy-
tuj przy rodzaju zawartoci Artyku. Nastpnie na poziomej karcie Opcje publikacji
zmieniamy Domylne opcje, usuwajc zaznaczenie przy pozycjach Do publikacji i Na
stronie gównej (rysunek 5.9).
Rysunek 5.9.
Poprawione domylne
opcje publikacji typu
Artyku
Powiadomienia e-mailowe
Drupal zawiera mechanizm powiadomie poprzez wiadomoci e-mail. Nie jest on z po-
cztku atwy do odnalezienia, poniewa ukryto go w systemach Dziaania i Wyzwala-
cze. Czym s te pojcia?
Dziaanie to co, co ma si wykona po zajciu pewnych zdarze bd spenieniu usta-
lonych warunków. Te zdarzenia i warunki nosz miano Wyzwalaczy. Przykady mo-
na mnoy (tabela 5.3).
Tabela 5.3.
Przykadowe wyzwalacze i dziaania
Przykadowy scenariusz
Ustawiamy Wyzwalacz
Podczamy Dziaanie
Chcemy powiadomi wszystkich
uytkowników o nowym
regulaminie
Uytkownik zalogowa si
do strony
Przenie go pod adres
.../zmiany-w-regulaminie
Chcemy e-mailowo informowa
waciciela o nowej treci
do moderacji
Zapisano nowy wpis
Wylij do waciciela e-mail
z informacj o wpisie
Chcemy automatycznie blokowa
uytkowników uywajcych
wulgaryzmów
W zapisanym wpisie/komentarzu
wykryto niedozwolone sowa
Zablokuj adres IP
uytkownika
Rozdzia 5.
i Uprawnienia
131
Aby skonfigurowa dziaania zautomatyzowane oraz wyzwalacze, naley wczy mo-
du Trigger.
Po uruchomieniu dodatku Trigger bdziemy posugiwali si dwoma adresami. Pierw-
szy, dostpny w dziale Konfiguracja, to Dziaania (.../admin/config/system/actions).
Stworzymy tu dane zachowania systemowe. Drugi adres, widoczny w dziale Struk-
tura, to Wyzwalacze (.../admin/structure/trigger). Za jego pomoc powiemy pewne
zdarzenia z dziaaniami.
Najpierw stwórzmy nowe dziaanie. Z listy Stwórz zaawansowan akcj na stronie
Dziaania (dzia zarzdzania, Konfiguracja) wybieramy Wylij e-mail i klikamy Utwórz.
Na stronie z konfiguracj dziaania podajemy nastpujce dane:
Etykieta: informacja dla waciciela o nowym artykule,
Adresat:
[site:mail]
,
Temat: Na
[site:name] [node:author]
doda artyku
[node:title]
,
Tre: Zobacz j pod adresem
[node:url]
lub edytuj, klikajc
[node:edit-url]
. Tre wpisu:
[node:body]
.
Jak wida, w polach moemy uywa wzorców dostarczanych przez modu Token.
Jest on czci rdzenia Drupala, ale jeli dodatkowo zainstalujemy w systemie modu
pobrany ze strony http://drupal.org/project/token (oczywicie do wersji 7), uzyskamy
wygodny sposób wstawiania wzorców do pól formularza. Po prostu ustawiamy kursor
w miejscu, gdzie ma si pojawi wzorzec, i klikamy jeden z symboli widocznych pod
formularzem (rysunek 5.10).
Rysunek 5.10.
Kilka przykadowych
wzorców
z kilkudziesiciu
dostpnych podczas
tworzenia dziaania
Token jest wykorzystywany w wielu innych miejscach systemu, szczególnie jeli trze-
ba wygenerowa e-mail bd komunikat do uytkownika.
Zapisujemy nowe dziaanie i przechodzimy do strony Wyzwalacze (dzia Struktura).
Nastpnie w karcie Wpis wybieramy dziaanie informacja do waciciela o nowym
artykule i wiemy je z wyzwalaczem Po zapisaniu nowej zawartoci (rysunek 5.11).
Rysunek 5.11.
Powizanie dziaania
z wyzwalaczem
132
Drupal 7 w praktyce
W tej chwili nie mamy jak sprawdzi dziaania tego mechanizmu, ale gdy tylko prze-
niesiemy stron do internetu, przekonamy si, czy dziaa.
Tak naprawd moglibymy skonfigurowa równie serwer e-mailowy Mercury wcho-
dzcy w skad XAMPP, ale wykracza to poza moliwoci objtociowe tej ksiki.
Widok artykuów do moderacji
A co bdzie, jeli jednak waciciel strony zapomni o e-mailu albo wejdzie na stron
wczeniej, ni go odbierze? Przydatn funkcj byoby stworzenie dla niego widoku
nieopublikowanych artykuów.
W tym celu przejdmy do dziau Struktura i uyjmy cza Widoki. Nastpnie kliknij-
my Nowy widok. Na formularzu podajmy kolejno (niewymienione opcje pozostawia-
my domylne):
Nazwa widoku: do moderacji
Poka: zawarto typu Artyku
Stwórz stron: usuwamy zaznaczenie
Stwórz blok: zaznaczamy
Format wywietlania (bloku): Tabela
Klikamy Kontynuuj edycj i zmieniamy kolejno poszczególne ustawienia widoku.
Klikamy filtr Zawarto: Do publikacji (Tak) i zmieniamy opcj
Do publikacji na Nie
Przy sekcji Pola klikamy dodaj i wybieramy Zawarto: edytuj
oraz Zawarto: Data nadesania.
Podczas konfiguracji pola Data nadesania podajemy:
Format daty: wasny, wpisujemy
j/n/Y
Etykieta: dodano
Podczas konfiguracji pola Zawarto: edytuj podajemy:
Tekst do wywietlenia: edytuj
Etykieta edytuj
Klikamy pole Tytu i dodajemy etykiet Tytu
Zachowujemy widok i przechodzimy do zarzdzania blokami (Struktura, Bloki). Od-
szukujemy blok nazwany do_moderacji: Block. Wchodzimy do jego edycji i ustawiamy:
Ustawienia obszaru: Bartik — „Highlighted”
Rangi: waciciel
Rozdzia 5.
i Uprawnienia
133
Nastpnie zapisujemy konfiguracj bloku, dodajemy do systemu dowolny nieopubli-
kowany artyku i sprawdzamy, czy co si pojawi na stronie widzianej oczami uyt-
kownika posiadajcego konto Krzysiek Palikowski.
Bardzo moliwe, e podczas dodawania artykuu zobaczymy ostrzeenie o treci
Warning: mail() [function.mail]: Failed to connect to mailserver at „localhost” port
25, verify your „SMTP” and „smtp_port” setting in php.ini or use ini_set() w De-
faultMailSystem->mail() (linia 77 z C:\xampp\htdocs\gruparobocza\modules\system\
system.mail.inc). Jest to normalne, poniewa dodalimy dziaanie powiadamiajce
administratora o nowym wpisie, ale nie mamy ustawionego serwera e-mail.
Po zalogowaniu do konta Krzysiek Palikowski (przypomn, e wygodnie w tym celu
uy innej przegldarki) na stronie gównej (i wszystkich podstronach) zobaczymy ta-
belk z treci do moderacji (rysunek 5.12).
Rysunek 5.12.
Tabela treci
oczekujcych
na moderacj
Podsumowanie
Uprawnienia w Drupalu s zaprojektowane do elastycznie. Warto zwróci uwag na
fakt, e nasz projekt to strona bardzo zamknita, do której to wanie waciciel two-
rzy konto albo je aprobuje. Wiele stron ma o wiele luniejsze podejcie do tworzenia
kont uytkowników, dlatego musi si lepiej zabezpiecza przed potencjalnymi ataka-
mi spamerów czy szkodliwych uytkowników. Szczególnie dotyczy to konfiguracji
filtrów tekstowych. Sprawdmy trzy razy zaimplementowane uprawnienia, zanim prze-
niesiemy serwis do internetu, o czym opowiem w nastpnym rozdziale.
Skorowidz
A
administrator, 51
adres internetowy, 14
alias URL, 41, 42
artyku
konfiguracja, 130
moderowanie, 129
B
baza danych, 12, 30
eksport, 136, 137, 140
biuletyn, 183
blog, 17, 155, 156
C
CMS, 11, 12, 14, 51
budowa, 12
cechy, 13
funkcja, 13
CSS, 73
D
dane
baza, 12, 30
eksport, 136, 137, 140
DNS, 25
domena, 23
zarzdzanie, 25
Drupal, 12, 13, 14, 23, 26, 32, 38, 40, 53, 54, 90,
108, 135, 151
instalacja, 28
E
edytor
WYSIWYG, 111, 112, 113, 120
F
filtr
kontekstowy, 110
udostpnianie, 105
formularz, 90, 185
dodawania zawartoci, 35
forum
konfiguracja, 151, 153
FTP, 138
H
hosting, 23
HTML
jzyk, 12
znacznik, 38
I
inicjatywa, 81, 98, 107, 160
instalacja
wielowitrynowa, 147
interfejs, 92
Internet, 135
adres, 15
przegldarka, 22
strona, 18, 40, 49
J
jzyk HTML, 12
190
Drupal 7 w praktyce
K
katalog, 23
klient, 49
komponent, 12
komunikat
Call to undefined function…, 146
odmowa dostpu SQL, 144
wewntrzny bd serwera, 144
konta testowe, 123
L
LAMP, 12, 13
localhost, 18, 20
M
modu, 53
blog, 43
book, 43
colorbox, 72
context, 59
date, 61
demonstration site, 55
devel, 54
display suite, 59, 95
features, 56
filter, 57
forum, 43, 44
IMCE, 61
instalacja, 62, 63, 65
link, 61
localization client, 56
localization update, 56
panels, 59
poll, 43
theme developer, 179
token, 58
update manager, 62
views, 58, 99
WYSIWYG, 62
motyw graficzny, 54
N
nagówek, 106
narzdzie
apache-bend, 180
pagespeed, 181
yslow, 181
nawigacja, 172
O
overlay, 35
P
plik
prywatny, 143
publiczny, 142
tymczasowy, 142
poziome karty, 40
przegldarka internetowa, 22
przerwa techniczna, 141
R
rangi, 124
S
serwer
Apache, 22
DNS, 25
WWW, 12
serwis, 17
skórka, 54, 172, 173
potomna, 76
stopka, 106
strona
internetowa, 13, 18, 40
budowa, 49
statyczna
konfiguracja, 66
WWW, 23
system
drupal, 12
operacyjny, 12
rodowisko
lokalne, 18
produkcyjne, 18, 23
testowe, 18
T
tester, 123
tryb
wywietlanie zawartoci, 92
Skorowidz
191
U
uprawnienia, 126
testowe, 123
W
WAMP, 18
widok, 110
tworzenie, 99
witryna testowa, 146
WYSIWYG, 111, 112, 113, 120
X
XAMPP, 18
instalacja, 18, 19
konfiguracja, 21
pobieranie, 18
zarzdzanie, 20
Z
znacznik
HTML, 38