Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie...

21

Transcript of Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie...

Page 1: Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie Drupal Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania
Page 2: Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie Drupal Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania

Idź do

• Spis treści• Przykładowy rozdział• Skorowidz

• Katalog online

• Dodaj do koszyka

• Zamów cennik

• Zamów informacjeo nowościach

• Fragmenty książekonline

Helion SAul. Kościuszki 1c44-100 Gliwicetel. 32 230 98 63e-mail: [email protected]© Helion 1991–2011

Katalog książek

Twój koszyk

Cennik i informacje

Czytelnia

Kontakt

• Zamów drukowanykatalog

Drupal 7 w praktyce.Własna strona WWWw 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!

Page 3: Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie Drupal Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania

Spis tre�ciWst�p ................................................................................................................. 9

Rozdzia� 1. Drupal i inne systemy zarz�dzania tre�ci� ........................................ 11Co to jest CMS? ............................................................................................................. 11Jaki CMS wybra�? .......................................................................................................... 12Budowa CMS ................................................................................................................. 12Jakie s� charakterystyczne cechy CMS? ......................................................................... 13Czy potrzebuj� CMS? ..................................................................................................... 14Dlaczego Drupal? ........................................................................................................... 14Sk�d czerpa� informacje o Drupalu? .............................................................................. 14Podsumowanie ................................................................................................................ 15

Rozdzia� 2. Przygotowania ................................................................................ 17Nasz projekt .................................................................................................................... 17Nazewnictwo �rodowisk ................................................................................................. 18�rodowisko lokalne ........................................................................................................ 18

Pobieranie i instalacja XAMPP ................................................................................ 18Zarz�dzanie XAMPP ................................................................................................ 19Poprawki konfiguracji XAMPP ................................................................................ 21Konfiguracja katalogu ze stron� ............................................................................... 21

Narz�dzia na komputerze lokalnym ............................................................................... 21Edytor kodu i plików tekstowych ............................................................................. 21Firefox i wtyczki ...................................................................................................... 22

�rodowisko produkcyjne ................................................................................................ 22Hosting dla Drupala 7 ............................................................................................... 22Domena i katalog z plikami na serwerze .................................................................. 23Konfiguracja katalogu ze stron� ............................................................................... 25

Rozdzia� 3. Instalacja i pierwsze kroki .............................................................. 27Pobranie w�a�ciwych plików .......................................................................................... 27Praca z instalatorem ........................................................................................................ 28

Konfiguracja bazy danych ........................................................................................ 30Doko�czenie instalacji ............................................................................................. 31

Zainstalowali�my Drupala i...? ....................................................................................... 32Co wida� na uruchomionej stronie? ......................................................................... 32Pierwszy artyku� ....................................................................................................... 34Pierwsza strona ......................................................................................................... 40

Page 4: Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie Drupal Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania

6 Drupal 7 w praktyce

Wi�cej rodzajów zawarto�ci ..................................................................................... 43W��czamy pierwszy nowy modu� ............................................................................. 43Poznajemy i konfigurujemy forum ........................................................................... 44

Podsumowanie ................................................................................................................ 47

Rozdzia� 4. Budowa strony ............................................................................... 49Zanim zaczniemy administrowa� ................................................................................... 49

Spotkanie z klientem i g�ówne wymagania .............................................................. 49Diabe� tkwi w szczegó�ach ....................................................................................... 50Dobre praktyki administratora .................................................................................. 51

Jak dostosowa� system Drupal do naszych potrzeb? ...................................................... 52Idea ma�ych modu�ów .............................................................................................. 52Sk�d pobiera� modu�y? ............................................................................................ 53Zasada: „Nie b�dziesz zmienia� kodu rdzenia Drupala” ........................................... 53A co z wygl�dem? .................................................................................................... 54

Modu�y dla administratora .............................................................................................. 54Devel ........................................................................................................................ 54Demonstration site .................................................................................................... 55Localization client i Localization update .................................................................. 56Features .................................................................................................................... 56Module Filter ............................................................................................................ 57

Wybieramy modu�y do realizacji wymaga� klienta ........................................................ 57Views ....................................................................................................................... 58Token ....................................................................................................................... 58Display suite, Context, Panels .................................................................................. 59Date, Link ................................................................................................................. 61IMCE ........................................................................................................................ 61WYSIWYG .............................................................................................................. 62Inne modu�y ............................................................................................................. 62

Jak instalujemy modu�y? ................................................................................................ 62Instalacja za pomoc� modu�u Update manager ........................................................ 62Problemy z instalowaniem duych modu�ów ........................................................... 64Instalacja r�czna ....................................................................................................... 65W��czanie modu�ów ................................................................................................. 65

Konfigurujemy strony statyczne ..................................................................................... 66Nowe pole — Minigaleria ........................................................................................ 67Poprawka etykiety pola Title .................................................................................... 69Pierwsza strona z minigaleri� ................................................................................... 70Poprawki w ustawieniach wy�wietlania pola ........................................................... 71Wy�wietlanie zdj�� modu�em Colorbox ................................................................... 72Poprawki w CSS ....................................................................................................... 73Skórka potomna ....................................................................................................... 76W�asny modu� .......................................................................................................... 79Strona z formularzem kontaktowym ........................................................................ 80

Tworzymy rodzaj zawarto�ci Inicjatywa ........................................................................ 81Nowe modu�y ........................................................................................................... 83Nowy rodzaj zawarto�ci ........................................................................................... 83Nowe s�owniki kategorii .......................................................................................... 84Nowe pola ................................................................................................................ 85Gotowe ..................................................................................................................... 87Rozmieszczenie pól na formularzu dodawania zawarto�ci ....................................... 90Tryby wy�wietlania zawarto�ci ................................................................................ 92Zmiana szablonu wy�wietlania zawarto�ci ............................................................... 94

Page 5: Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie Drupal Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania

Spis tre�ci 7

Modu� Display suite ................................................................................................. 95Kilka pierwszych inicjatyw ...................................................................................... 98

Budujemy widok Katalog inicjatyw ............................................................................... 99W��czamy modu� Views .......................................................................................... 99Tworzenie widoku .................................................................................................... 99Pierwsze spotkanie z interfejsem Views ................................................................. 101Formaty wy�wietlania ............................................................................................ 101Pierwsze poprawki formatu Strona ......................................................................... 102Filtry i ich udost�pnianie ........................................................................................ 105Nag�ówek i stopka .................................................................................................. 106Blok z ostatnimi inicjatywami ................................................................................ 107

Widok Moje inicjatywy ................................................................................................ 110Duplikujemy widok ................................................................................................ 110Filtr kontekstowy ................................................................................................... 110

Konfigurujemy wiadomo�ci ......................................................................................... 111Instalujemy edytor WYSIWYG ............................................................................. 111Obrazki do��czone do wpisów ................................................................................ 114Obrazki w polu Tre�� ............................................................................................. 116Alternatywa dla WYSIWYG .................................................................................. 120Dodanie do Artyku�u pola Minigaleria ................................................................... 121

Podsumowanie .............................................................................................................. 122

Rozdzia� 5. Uprawnienia ................................................................................. 123Konta i uprawnienia testowe ........................................................................................ 123

Konta testowe ......................................................................................................... 123Rangi ...................................................................................................................... 124Uprawnienia ........................................................................................................... 126Ustawienia rejestracji nowych uytkowników ....................................................... 129

Moderowanie Artyku�ów .............................................................................................. 129Konfiguracja Artyku�ów ......................................................................................... 130Powiadomienia e-mailowe ..................................................................................... 130Widok artyku�ów do moderacji .............................................................................. 132

Podsumowanie .............................................................................................................. 133

Rozdzia� 6. Przenosiny do internetu ................................................................ 135Przygotowania .............................................................................................................. 135

Eksport bazy danych z uyciem phpMyAdmin ...................................................... 136Eksport z uyciem mysqldump.exe ........................................................................ 136

Pierwsze przenosiny ..................................................................................................... 137Tworzenie bazy danych na serwerze ...................................................................... 137Wysy�amy pliki przez FTP ..................................................................................... 138Wysy�amy archiwum z plikami .............................................................................. 138Rozpakowujemy archiwum z plikami .................................................................... 139Import pliku .sql do bazy danych za pomoc� wiersza polece� ............................... 139Import pliku .sql do bazy danych za pomoc� phpMyAdmin .................................. 140Pomoc administratorów konta ................................................................................ 140Poprawka konfiguracji w pliku settings.php ........................................................... 140Tryb przerwy technicznej ....................................................................................... 141Pliki publiczne i tymczasowe ................................................................................. 142Pliki prywatne ........................................................................................................ 143Dlaczego nie dzia�a? ............................................................................................... 143

Cz�ste problemy po przenosinach ................................................................................ 144Komunikat „Wewn�trzny b��d serwera” ................................................................ 144Komunikat „Odmowa dost�pu SQL” ..................................................................... 144

Page 6: Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie Drupal Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania

8 Drupal 7 w praktyce

Niepoprawne �cieki dost�pu do plików ................................................................ 145Komunikat „Call to undefined function…” ............................................................ 146

Witryna testowa ............................................................................................................ 146Instalacja wielowitrynowa ...................................................................................... 147Nowa baza danych ................................................................................................. 147Nowa domena ......................................................................................................... 147Nowy katalog w folderze sites ............................................................................... 148Przenosimy bazy danych ........................................................................................ 149Test ......................................................................................................................... 149

Podsumowanie .............................................................................................................. 150

Rozdzia� 7. Rozbudowa .................................................................................. 151Konfigurujemy forum ................................................................................................... 151

Dodanie oceny „Kciuk w gór�!” do odpowiedzi na forum ..................................... 151Powiadomienia o odpowiedzi ................................................................................. 153

Blogi uytkowników .................................................................................................... 155Uruchomienie modu�u i uprawnie� ........................................................................ 155Poprawki w domy�lnych ustawieniach ................................................................... 155Emocje we wpisach ................................................................................................ 156

Prywatne wiadomo�ci ................................................................................................... 157Zadania i notatki ........................................................................................................... 158

Tworzymy zawarto�� typu notatka ......................................................................... 158Nowe pola w notatkach .......................................................................................... 158Blok Powi�zane elementy przy inicjatywie ............................................................ 160Tworzymy zawarto�� typu zadanie ........................................................................ 164Poprawiamy widok Powi�zane elementy ............................................................... 166Widok Powi�zane elementy — kolejna metamorfoza ............................................ 168Widok Zadania ....................................................................................................... 171

Skórka i nawigacja ....................................................................................................... 172Instalacja i w��czanie skórek .................................................................................. 173Rozmieszczenie bloków w nowej skórce ............................................................... 174Menu ...................................................................................................................... 175Prezentacja menu .................................................................................................... 177Theme developer .................................................................................................... 179

Wydajno�� .................................................................................................................... 180Pomiar narz�dziem ab ............................................................................................ 180Opcje wydajno�ci dost�pne w Drupal 7 ................................................................. 181Yslow, Pagespeed ................................................................................................... 181Dodatkowe moliwo�ci .......................................................................................... 182

Inne wymagania klienta ................................................................................................ 183Biuletyny ................................................................................................................ 183Dodawanie mediów do tre�ci ................................................................................. 183Przep�ywy pracy, regu�y biznesowe ....................................................................... 184Oznaczanie tre�ci flagami ...................................................................................... 184Praca grupowa, spo�eczno�ci .................................................................................. 185Formularze ............................................................................................................. 185

Podsumowanie .............................................................................................................. 186

Zako�czenie ................................................................................................... 187

Skorowidz ....................................................................................................... 189

Page 7: Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie Drupal Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania

Rozdzia� 5.

Uprawnienia

Konta i uprawnienia testowe

Konta testowe

W nast�pnych krokach poudajemy troch� dwie róne osoby — w�a�ciciela oraz uyt-kownika serwisu. Zgodnie z opisem uzyskanym od klienta takie b�d� nasze dwie g�ów-ne role w systemie, przynajmniej na pocz�tku. W�a�ciciel ma za zadanie dba� o stron�g�ówn� i przydziela� uprawnienia, natomiast zaufany u�ytkownik b�dzie móg� w sys-temie prowadzi� swój rejestr inicjatyw, a w dalszej przysz�o�ci dziennik i notatnik.

Postaramy si� zbudowa� �rodowisko, w którym zleceniodawca b�dzie móg� bez trudutestowa� tak� struktur�, czyli dodawa� nowe konta, sprawdza�, czy maj� odpowiednieuprawnienia, czy widz� w�a�ciwe tre�ci itd.

Zarejestrujmy w tym celu dwa konta. Obieca�em na pocz�tku jednego z rozdzia�ów, ezasymuluj� nieco rozdwojenie jani, i spe�niam t� obietnic� — konto dla w�a�cicielab�dzie nazwane Krzysiek Palikowski, natomiast konto dla uytkownika zaufanego na-zwiemy bardzo oryginalnie — Tester.

W dziale zarz�dzania uytkownikami (odno�nik Ludzie na pasku administracyjnym)kliknijmy Dodaj uytkownika. Podajemy wymagane pola, dowolny e-mail (na serwe-rze lokalnym nie ma to znaczenia) oraz has�o. Reszt� opcji pozostawiamy bez zmiani nowe konto zapisujemy w systemie. Nast�pnie powtarzamy t� czynno�� dla drugiegouytkownika.

Je�li klikniemy nazw� uytkownika, która z pewno�ci� pojawi si� na powiadomieniuo powodzeniu naszego dzia�ania, zostaniemy przeniesieni na indywidualn� dla kade-go uytkownika stron�. W zaleno�ci od uruchomionych modu�ów mog� na niej zna-le� si� dodatkowe karty, np. Devel (rysunek 5.1).

Page 8: Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie Drupal Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania

124 Drupal 7 w praktyce

Rysunek 5.1.Strona uytkownikaw systemie Drupal

Najwygodniej jest uywa� osobnej (innej) przegl�darki internetowej w celu testowaniastrony na takim uytkowniku. W ten sposób w jednej przegl�darce (np. Firefox) admi-nistrujemy stron� jako admin, a w innej (np. Opera) przegl�damy serwis jako KrzysztofPalikowski lub Tester.

Gdy ju zalogujemy si� na konto dowolnego testowego uytkownika, zauwaymy, enie ma tam ani paska administracyjnego, ani odno�nika Dodaj tre��, co oznacza, i niemoemy utworzy� adnego wpisu. Poniewa wpisy to równie w�tki na forum, nawettam zobaczymy komunikat: „Brak uprawnie� do dodawania nowych wpisów na forum”(rysunek 5.2).

Rysunek 5.2.Uprawnienia zwyk�egouytkownika niewystarczaj� nadodawanie tre�cido systemu

Zaradzimy temu, tworz�c nowe rangi i ustawiaj�c w nich stosowne uprawnienia.

Rangi

Drupal posiada system uprawnie� bazuj�cych na rangach. Moemy za�oy� dowoln�ich liczb�, jednak zazwyczaj wystarczaj� te gotowe, które ju istniej� w systemie, a ichmnoenie ponad potrzeb� prowadzi do komplikacji w utrzymaniu strony.

Klikaj�c widoczn� na pasku administracyjnym opcj� Ludzie, a nast�pnie wybieraj�ckart� Uprawnienia, zobaczymy tabel� zawieraj�c� szereg przywilejów, które moemyprzydzieli� do poszczególnych rang (rysunek 5.3).

Jak wida�, w systemie zdefiniowane s� trzy g�ówne rangi:

� Uytkownik anonimowy,

� Uytkownik uwierzytelniony,

� Administrator.

Page 9: Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie Drupal Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania

Rozdzia� 5. � Uprawnienia 125

Rysunek 5.3.Przyk�adoweuprawnienia domodu�u Comment

Klient yczy sobie, aby system rejestracji uytkowników by� moderowany (tzn. chcia�-by zatwierdza� konto kadego uytkownika), mogliby�my wi�c za�oy�, e ranga Uyt-kownik uwierzytelniony jest równoznaczna z rang� Uytkownik zaufany, któr� propono-wa� klient. Bezpieczniej b�dzie jednak utworzy� w tym celu dodatkow� rang�, cho�byna tak� okoliczno��, gdy odbiorca zdecyduje si� jednak na udost�pnienie systemu dorejestracji dla wszystkich ch�tnych. Wtedy zbyt due uprawnienia rangi Uytkownikuwierzytelniony, któr� nabywa kady posiadaj�cy konto i zalogowany do serwisu, za-czn� nam ci�y�. B�dziemy musieli tak czy owak stworzy� now�, bardziej elitarn� kast�uytkowników, przenie�� do niej ju zarejestrowanych itp. Zróbmy to wi�c od razu.

Na stronie z uprawnieniami mamy tak naprawd� dwa miejsca z konfiguracj� — Upraw-nienia i Rangi. S� one do�� g��boko ukryte i w pierwszej chwili trudne do zauwaenia(rysunek 5.4).

Rysunek 5.4.Zakamuflowaneodno�niki dokonfiguracjiuprawnie� i rang

Przechodzimy na t� drug� kart�, wprowadzamy nazw� nowej grupy i klikamy Dodajrang� (rysunek 5.5).

Rysunek 5.5.Moment tworzeniakolejnej grupyuprawnie�

Je�li chodzi o konto Krzysztof Palikowski, mogliby�my przyzna� mu rang� Admini-strator i rozwi�za� problem uprawnie� dla zleceniodawcy. Wszystko jednak zaley odtego, czy b�dzie on równie zarz�dza� serwisem w zakresie instalacji modu�ów, kon-figuracji bloków itp. Je�li tak, dodanie mu rangi Administrator czy wr�cz przekazanie

Page 10: Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie Drupal Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania

126 Drupal 7 w praktyce

mu loginu i has�a do konta admin (a potem ewentualnie zmiana nazwy konta na Krzysz-tof Palikowski) jest jak najbardziej wskazane. Jednak my za�oymy, e nasz klient b�-dzie chcia� sam si� skupi� na uywaniu serwisu i zarz�dzaniu tre�ci�, dlatego utworzy-my mu rang� W�a�ciciel.

Teraz musimy przydzieli� nowe rangi uytkownikom.

Przechodzimy na stron� Ludzie i w kolumnie Czynno�ci poszczególnych kont klikamyodno�nik edytuj. Na stronie pozwalaj�cej na edycj� uytkownika zaznaczamy w�a�ci-w� rang� i zapisujemy zmiany. Dla konta Krzysztof Palikowski b�dzie to ranga w�a�ci-ciel, a dla Testera ranga uytkownik zaufany (rysunek 5.6).

Rysunek 5.6.Rangi uytkownikaTester

Po zapisaniu zmian powinni�my widzie� w tabeli z kontami uytkowników dane o ichrangach (rysunek 5.7).

Rysunek 5.7.Rangi i uytkownicysystemu testowego

Uprawnienia

Maj�c za�oone 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 za�oone rangi w postaci kolumn.

Poniewa tworzymy system, który jest zamkni�ty dla przypadkowych osób, moemyanonimowym uytkownikom zabroni� dost�pu do strony, a dla osób „tylko” zalogo-wanych (z rang� uytkownik uwierzytelniony) pozostawi� jedynie moliwo�� ogl�da-nia tre�ci.

Administrator powinien z definicji mie� wszystkie moliwe uprawnienia. Ponisza ta-bela prezentuje uprawnienia dla innych rang, które powinni�my zaznaczy�, aby spe�-ni� wymagania klienta (tabela 5.1).

Page 11: Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie Drupal Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania

Rozdzia� 5. � Uprawnienia 127

Tabela 5.1. Uprawnienia dla rang utworzonych w systemie

Modu�/Uprawnienie U�ytkownikanonimowy

U�ytkownikuwierzytelniony

U�ytkownikzaufany

W�a�ciciel

CommentZarz�dzaj odpowiedziamii ustawieniami odpowiedzi

— — — X

Przegl�danie odpowiedzi — X X XOdpowiedzi do wpisu — — X XPomi� zatwierdzanie odpowiedzi — — — XEdycja w�asnych odpowiedzi — — X XContactAdministracja formularzamikontaktowymi i ich ustawieniami

— X

Uywaj formularza kontaktowegodla ca�ej strony

X X

Uywaj formularzy kontaktowychuytkowników

X X

Contextual linksUywaj odno�ników kontekstowych X XDateWgl�d w daty cykliczne X XFilterWy�wietlaj format tekstu Full HTML — — — XForumAdministracja forum — XMenuAdministracja menu oraz pozycjamiw menu

— X

NodePomi� kontrol� dost�pudo zawarto�ci

X

Administracja zawarto�ci� — XPrzegl�danie opublikowanejzawarto�ci

X X X

Przegl�danie w�asnychnieopublikowanych zawarto�ci

X X

Przegl�danie historii zmianzawarto�ci

X X

Przywró� wersj� zawarto�ci — XUsuwanie wersji wpisów — X

Page 12: Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie Drupal Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania

128 Drupal 7 w praktyce

Tabela 5.1. Uprawnienia dla rang utworzonych w systemie — ci�g dalszy

Modu�/Uprawnienie U�ytkownikanonimowy

U�ytkownikuwierzytelniony

U�ytkownikzaufany

W�a�ciciel

PathTworzenie i edycja aliasów URL — XSearchUywaj wyszukiwania X X XUywaj wyszukiwaniazaawansowanego

X X X

SystemPrzegl�danie raportów o witrynie — XDost�p do strony w trakcie przerwytechnicznej

— X

TaxonomyAdministracja s�ownikamii terminami

— X

UserAdministracja uprawnieniami XAdministracja uytkownikami — XPrzegl�danie profilówuytkowników

X X

ViewsZarz�dzaj widokami — X

W tabeli pomini�to grup� uprawnie� do korzystania z poszczególnych rodzajów za-warto�ci, któr� mona znale� w sekcji Node. Je�li chodzi o rangi administrator i w�a-�ciciel, wystarczy zaznaczy� Pomi� kontrol� dost�pu do zawarto�ci i wówczas rangi teuzyskaj� moliwo�� dodawania, usuwania i modyfikowania dowolnego wpisu w witrynie.Dla grupy uytkownik zaufany najczytelniej b�dzie przedstawi� to tak jak w tabeli 5.2.

Tabela 5.2. Uprawnienia do rodzajów zawarto�ci dla uytkowników zaufanych

Nowy(Create new

content)

Edycjaw�asnych(Edit owncontent)

Edycjawszystkich(Edit anycontent)

Usuwaniew�asnych

(Delete owncontent)

Usuwaniewszystkich(Delete any

content)

Temat na forum X X — — —Artyku� X X — — —Inicjatywa X X — X —Prosta strona — — — — —

Page 13: Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie Drupal Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania

Rozdzia� 5. � Uprawnienia 129

Ustawienia rejestracji nowych u�ytkowników

Aby nie dopu�ci� 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 decyduj�cym o tym,w jaki sposób s� tworzone w systemie nowe konta.

W tym celu przechodzimy do dzia�u Konfiguracja, a potem Ustawienia kont uytkow-ników. W�ród wielu opcji powinni�my odszuka� nag�ówek Kto moe rejestrowa� kontauytkowników?. Tam zdecydujemy, czy tylko administratorzy mog� rejestrowa� kontauytkowników, czy moe uytkownicy b�d� sami si� rejestrowa�, ale ich konto b�dziezablokowane, dopóki nie zatwierdzi go administrator.

W tym drugim przypadku po wype�nieniu 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 klikni�cieodno�nika nades�anego e-mailem, co spowoduje przej�cie do strony edycji konta. Innymsposobem jest wy�wietlenie tabeli uytkowników (klikni�cie odno�nika Ludzie na belceadministracyjnej), zaznaczenie jednego lub kilku kont i wybranie z listy dost�pnychopcji aktualizacji pozycji Zezwól wybranym uytkownikom na dost�p (rysunek 5.8).

Rysunek 5.8.Odblokowanie kontauytkownika

Je�li zechcemy nada� uytkownikowi rang� wysz� ni Uytkownik zarejestrowany,równie moemy to zrobi� na dwa sposoby — przez edycj� profilu b�d aktualizacj�.

Moderowanie Artyku�ówUstalony w poprzednim punkcie zestaw uprawnie� odpowiada z grubsza temu, co chce-my osi�gn��, jednak to jeszcze nie koniec pracy. Przygotowanie strony dla kilku rangma swoje konsekwencje — b�dziemy musieli poprawi� nieco konfiguracj� niektórychobiektów w systemie, ewentualnie stworzy� nowe widoki czy powiadomienia.

Je�li na przyk�ad chcemy, aby to w�a�ciciel 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� artyku�y, ale nie mog� by� oneod razu opublikowane.

Page 14: Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie Drupal Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania

130 Drupal 7 w praktyce

� W�a�ciciel strony powinien dosta� e-maila za kadym razem, gdy kto�doda artyku� do systemu.

� W�a�ciciel po wej�ciu na stron� powinien widzie�, e s� jakie� wpisydo moderacji.

Te trzy oczywiste potrzeby b�dziemy mogli spe�ni�, konfiguruj�c system w trzech ob-szarach:: konfiguracji rodzaju zawarto�ci Artyku�, ustawieniach Dzia�a� i Wyzwalaczyoraz przez dodanie nowego widoku.

Konfiguracja Artyku�ów

Przechodzimy teraz do dzia�u Struktura i Rodzaje zawarto�ci, a nast�pnie klikamy edy-tuj przy rodzaju zawarto�ci Artyku�. Nast�pnie na poziomej karcie Opcje publikacjizmieniamy Domy�lne opcje, usuwaj�c zaznaczenie przy pozycjach Do publikacji i Nastronie g�ównej (rysunek 5.9).

Rysunek 5.9.Poprawione domy�lneopcje publikacji typuArtyku�

Powiadomienia e-mailowe

Drupal zawiera mechanizm powiadomie� poprzez wiadomo�ci e-mail. Nie jest on z po-cz�tku �atwy do odnalezienia, poniewa ukryto go w systemach Dzia�ania i Wyzwala-cze. Czym s� te poj�cia?

Dzia�anie to co�, co ma si� wykona� po zaj�ciu pewnych zdarze� b�d spe�nieniu usta-lonych warunków. Te zdarzenia i warunki nosz� miano Wyzwalaczy. Przyk�ady mo-na mnoy� (tabela 5.3).

Tabela 5.3. Przyk�adowe wyzwalacze i dzia�ania

Przyk�adowy scenariusz Ustawiamy Wyzwalacz Pod��czamy Dzia�anie

Chcemy powiadomi� wszystkichuytkowników o nowymregulaminie

Uytkownik zalogowa� si�do strony

Przenie� go pod adres.../zmiany-w-regulaminie

Chcemy e-mailowo informowa�w�a�ciciela o nowej tre�cido moderacji

Zapisano nowy wpis Wy�lij do w�a�ciciela e-mailz informacj� o wpisie

Chcemy automatycznie blokowa�uytkowników uywaj�cychwulgaryzmów

W zapisanym wpisie/komentarzuwykryto niedozwolone s�owa

Zablokuj adres IPuytkownika

Page 15: Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie Drupal Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania

Rozdzia� 5. � Uprawnienia 131

Aby skonfigurowa� dzia�ania zautomatyzowane oraz wyzwalacze, nale�y w��czy� mo-du� Trigger.

Po uruchomieniu dodatku Trigger b�dziemy pos�ugiwali si� dwoma adresami. Pierw-szy, dost�pny w dziale Konfiguracja, to Dzia�ania (.../admin/config/system/actions).Stworzymy tu �dane zachowania systemowe. Drugi adres, widoczny w dziale Struk-tura, to Wyzwalacze (.../admin/structure/trigger). Za jego pomoc� powi�emy pewnezdarzenia z dzia�aniami.

Najpierw stwórzmy nowe dzia�anie. Z listy Stwórz zaawansowan� akcj� na stronieDzia�ania (dzia� zarz�dzania, Konfiguracja) wybieramy Wy�lij e-mail i klikamy Utwórz.Na stronie z konfiguracj� dzia�ania podajemy nast�puj�ce dane:

� Etykieta: informacja dla w�a�ciciela 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, klikaj�c[node:edit-url]. Tre�� wpisu: [node:body].

Jak wida�, w polach moemy uywa� wzorców dostarczanych przez modu� Token.Jest on cz��ci� rdzenia Drupala, ale je�li dodatkowo zainstalujemy w systemie modu�pobrany ze strony http://drupal.org/project/token (oczywi�cie do wersji 7), uzyskamywygodny sposób wstawiania wzorców do pól formularza. Po prostu ustawiamy kursorw miejscu, gdzie ma si� pojawi� wzorzec, i klikamy jeden z symboli widocznych podformularzem (rysunek 5.10).

Rysunek 5.10.Kilka przyk�adowychwzorcówz kilkudziesi�ciudost�pnych podczastworzenia dzia�ania

Token jest wykorzystywany w wielu innych miejscach systemu, szczególnie je�li trze-ba wygenerowa� e-mail b�d komunikat do uytkownika.

Zapisujemy nowe dzia�anie i przechodzimy do strony Wyzwalacze (dzia� Struktura).Nast�pnie w karcie Wpis wybieramy dzia�anie informacja do w�a�ciciela o nowymartykule i wi�emy je z wyzwalaczem Po zapisaniu nowej zawarto�ci (rysunek 5.11).

Rysunek 5.11.Powi�zanie dzia�aniaz wyzwalaczem

Page 16: Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie Drupal Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania

132 Drupal 7 w praktyce

W tej chwili nie mamy jak sprawdzi� dzia�ania tego mechanizmu, ale gdy tylko prze-niesiemy stron� do internetu, przekonamy si�, czy dzia�a.

Tak naprawd� mogliby�my skonfigurowa� równie� serwer e-mailowy Mercury wcho-dz�cy w sk�ad XAMPP, ale wykracza to poza mo�liwo�ci obj�to�ciowe tej ksi��ki.

Widok artyku�ów do moderacji

A co b�dzie, je�li jednak w�a�ciciel strony zapomni o e-mailu albo wejdzie na stron�wcze�niej, ni go odbierze? Przydatn� funkcj� by�oby stworzenie dla niego widokunieopublikowanych artyku�ów.

W tym celu przejdmy do dzia�u Struktura i uyjmy ��cza Widoki. Nast�pnie kliknij-my Nowy widok. Na formularzu podajmy kolejno (niewymienione opcje pozostawia-my domy�lne):

� Nazwa widoku: do moderacji

� Poka: zawarto�� typu Artyku�

� Stwórz stron�: usuwamy zaznaczenie

� Stwórz blok: zaznaczamy

� Format wy�wietlania (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��: edytujoraz Zawarto��: Data nades�ania.

Podczas konfiguracji pola Data nades�ania podajemy:

� Format daty: w�asny, wpisujemy j/n/Y

� Etykieta: dodano

Podczas konfiguracji pola Zawarto��: edytuj podajemy:

� Tekst do wy�wietlenia: edytuj

� Etykieta edytuj

� Klikamy pole Tytu� i dodajemy etykiet� Tytu�

Zachowujemy widok i przechodzimy do zarz�dzania blokami (Struktura, Bloki). Od-szukujemy blok nazwany do_moderacji: Block. Wchodzimy do jego edycji i ustawiamy:

� Ustawienia obszaru: Bartik — „Highlighted”

� Rangi: w�a�ciciel

Page 17: Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie Drupal Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania

Rozdzia� 5. � Uprawnienia 133

Nast�pnie zapisujemy konfiguracj� bloku, dodajemy do systemu dowolny nieopubli-kowany artyku� i sprawdzamy, czy co� si� pojawi na stronie widzianej oczami uyt-kownika posiadaj�cego konto Krzysiek Palikowski.

Bardzo mo�liwe, �e podczas dodawania artyku�u zobaczymy ostrze�enie o tre�ciWarning: mail() [function.mail]: Failed to connect to mailserver at „localhost” port25, 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� dodali�my dzia�anie powiadamiaj�ceadministratora o nowym wpisie, ale nie mamy ustawionego serwera e-mail.

Po zalogowaniu do konta Krzysiek Palikowski (przypomn�, e wygodnie w tym celuuy� innej przegl�darki) na stronie g�ównej (i wszystkich podstronach) zobaczymy ta-belk� z tre�ci� do moderacji (rysunek 5.12).

Rysunek 5.12.Tabela tre�cioczekuj�cychna moderacj�

PodsumowanieUprawnienia w Drupalu s� zaprojektowane do�� elastycznie. Warto zwróci� uwag� nafakt, e nasz projekt to strona bardzo zamkni�ta, do której to w�a�nie w�a�ciciel two-rzy konto albo je aprobuje. Wiele stron ma o wiele luniejsze podej�cie do tworzeniakont uytkowników, dlatego musi si� lepiej zabezpiecza� przed potencjalnymi ataka-mi spamerów czy szkodliwych uytkowników. Szczególnie dotyczy to konfiguracjifiltrów tekstowych. Sprawdmy trzy razy zaimplementowane uprawnienia, zanim prze-niesiemy serwis do internetu, o czym opowiem w nast�pnym rozdziale.

Page 18: Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie Drupal Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania

Skorowidz

Aadministrator, 51adres internetowy, 14alias URL, 41, 42artyku�

konfiguracja, 130moderowanie, 129

Bbaza danych, 12, 30

eksport, 136, 137, 140biuletyn, 183blog, 17, 155, 156

CCMS, 11, 12, 14, 51

budowa, 12cechy, 13funkcja, 13

CSS, 73

Ddane

baza, 12, 30eksport, 136, 137, 140

DNS, 25domena, 23

zarz�dzanie, 25Drupal, 12, 13, 14, 23, 26, 32, 38, 40, 53, 54, 90,

108, 135, 151instalacja, 28

Eedytor

WYSIWYG, 111, 112, 113, 120

Ffiltr

kontekstowy, 110udost�pnianie, 105

formularz, 90, 185dodawania zawarto�ci, 35

forumkonfiguracja, 151, 153

FTP, 138

Hhosting, 23HTML

j�zyk, 12znacznik, 38

Iinicjatywa, 81, 98, 107, 160instalacja

wielowitrynowa, 147interfejs, 92Internet, 135

adres, 15przegl�darka, 22strona, 18, 40, 49

Jj�zyk HTML, 12

Page 19: Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie Drupal Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania

190 Drupal 7 w praktyce

Kkatalog, 23klient, 49komponent, 12komunikat

Call to undefined function…, 146odmowa dost�pu SQL, 144wewn�trzny b��d serwera, 144

konta testowe, 123

LLAMP, 12, 13localhost, 18, 20

Mmodu�, 53

blog, 43book, 43colorbox, 72context, 59date, 61demonstration site, 55devel, 54display suite, 59, 95features, 56filter, 57forum, 43, 44IMCE, 61instalacja, 62, 63, 65link, 61localization client, 56localization update, 56panels, 59poll, 43theme developer, 179token, 58update manager, 62views, 58, 99WYSIWYG, 62

motyw graficzny, 54

Nnag�ówek, 106narz�dzie

apache-bend, 180pagespeed, 181yslow, 181

nawigacja, 172

Ooverlay, 35

Pplik

prywatny, 143publiczny, 142tymczasowy, 142

poziome karty, 40przegl�darka internetowa, 22przerwa techniczna, 141

Rrangi, 124

Sserwer

Apache, 22DNS, 25WWW, 12

serwis, 17skórka, 54, 172, 173

potomna, 76stopka, 106strona

internetowa, 13, 18, 40budowa, 49

statycznakonfiguracja, 66

WWW, 23system

drupal, 12operacyjny, 12

�rodowisko

lokalne, 18produkcyjne, 18, 23testowe, 18

Ttester, 123tryb

wy�wietlanie zawarto�ci, 92

Page 20: Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie Drupal Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania

Skorowidz 191

Uuprawnienia, 126

testowe, 123

WWAMP, 18widok, 110

tworzenie, 99witryna testowa, 146WYSIWYG, 111, 112, 113, 120

XXAMPP, 18

instalacja, 18, 19konfiguracja, 21pobieranie, 18zarz�dzanie, 20

Zznacznik

HTML, 38

Page 21: Drupal 7 w praktyce. - Helion · 124 Drupal 7 w praktyce Rysunek 5.1. Strona uytkownika w systemie Drupal Najwygodniej jest uywa osobnej (innej) przegldarki internetowej w celu testowania