You are on page 1of 171

Nagy Gusztáv

Webes tartalomkezelő
rendszerek

0.5. verzió

2008. szeptember
2. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

Jogi nyilatkozat

Nevezd meg! - Ne add el! 2.5 Magyarország

A következőket teheted a művel:

szabadon másolhatod, terjesztheted, bemutathatod és előadhatod a mű-


vet

származékos műveket (feldolgozásokat) hozhatsz létre

Az alábbi feltételekkel:

Nevezd meg!. A szerző vagy a jogosult által meghatározott módon fel


kell tüntetned a műhöz kapcsolódó információkat (pl. a szerző nevét vagy
álnevét, a Mű címét).

Ne add el! Ezt a művet nem használhatod fel kereskedelmi célokra.

● Bármilyen felhasználás vagy terjesztés esetén egyértelműen jelezned kell mások


felé ezen mű licencfeltételeit.
● A szerzői jogok tulajdonosának írásos engedélyével bármelyik fenti feltételtől el-
térhetsz.
Ez a Legal Code (Jogi változat, vagyis a teljes licenc) szövegének közérthető nyelven
megfogalmazott kivonata.
Ez a kivonat a http://creativecommons.org/licenses/by-nc/2.5/hu/ oldalon is olvasha-
tó. A teljes licensz a http://creativecommons.org/licenses/by-nc/2.5/hu/legalcode ol-
dalon érhető el.
E jegyzet hivatalos honlapjáról (http://nagygusztav.hu) tölthető le a mindenkori leg-
frissebb verzió.
3. oldal

Bevezetés

Ezzel a jegyzettel arra vállalkozok, hogy a Kecskeméti Főiskola GAMF Karán tanuló
hallgatók „kezébe” olyan írásos anyagot adjak, amely az előadások és gyakorlatok mellett
további segítséget ad a Webes tartalomkezelő rendszerek (CMS-ek) megismerésére.
Ennek megfelelően a jegyzet zöme nem csupán webfejlesztőknek szól, hanem bárkinek,
aki aktívan hozzá szeretne járulni egy honlap működéséhez.
A jelen jegyzetben nem tárgyalt webfejlesztői ismeretek megismerésére a Web progra-
mozás című jegyzetemet1 ajánlom.
Nem utolsó sorban e jegyzetnek az is célja, hogy a webfejlesztők számára gyakran nehéz
terhet jelentő végfelhasználói kézikönyv létrehozásához támpontokat adjon.
A jegyzet feltételezi a mai korszerű böngészők, a webalkalmazások, valamint egy irodai
programcsomag középszintű ismeretét. Ezek hiányában az anyag elsajátítására több időt
kell fordítani.
A jegyzet jelenlegi, 0.5-ös verziója (majdnem teljes egészében2) a Drupal 6.x-es verziók
alapján készült.

Kecskemét, 2008. szeptember

a szerző

1
A legfrissebb változat letölthető a http://nagygusztav.hu oldalról.
2
A félév második felében az utolsó 5 fejezet frissülése és bővülése várható. Erről információk szintén a
http://nagygusztav.hu oldalon lesznek.
4. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

Köszönetnyilvánítás

„A szabad vagy nyílt forráskódú szoftverek (FLOSS)


szabadon használható, másolható, terjeszthető, tanul-
mányozható és módosítható számítógépes programok.
Ilyen például a Linux operációs rendszer, a Mozilla Fi-
refox böngésző vagy az OpenOffice.org irodai cso-
mag.”3

A nyílt forrás (open source) és a szabad szoftver (free software) filozófiája, és a benne
„hívő” szakemberek munkája tette lehetővé, hogy a Drupal4 tartalomkezelő rendszert
Ubuntu5 Linux operációs rendszeren és a Mozilla Firefox6 böngészőt használva megis-
merjem, és a magam és mások tapasztalatait az OpenOffice.org 7 irodai programcsomag-
gal leírjam, és közkinccsé tegyem.
A Drupal megismerésében nagy segítségemre volt a hazai Drupal közösség által szerve-
zett konferenciákon túl a fórumokon tapasztalt hihetetlen segítőkészség.

3
Forrás: http://hu.wikipedia.org/wiki/Szabad_szoftver
4
http://drupal.hu/
5
http://ubuntu.hu/
6
http://firefox.hu/
7
http://www.openoffice.hu/
5. oldal

Tartalomjegyzék
1. Alapfogalmak....................................................................................................................13
1.1. Honlap típusok..........................................................................................................13
1.1.1 Klasszikus céges weboldalak................................................................................13
1.1.2 Közösségi oldalak.................................................................................................15
1.1.3 Blogok...................................................................................................................16
1.2. Tartalomkezelő rendszerek.......................................................................................17
1.2.1 Melyiket válasszunk?...........................................................................................17
1.3. Ellenőrző kérdések....................................................................................................18
1.4. Feladatok...................................................................................................................18
2. Drupal kézikönyv kezdőknek..........................................................................................20
2.1. Felhasználókezelés...................................................................................................20
2.1.1 Regisztráció.........................................................................................................20
2.1.2 Be- és kijelentkezés.............................................................................................22
2.1.3 Saját adatok módosítása.....................................................................................23
2.2. Tartalmak kezelése...................................................................................................24
2.2.1 Tartalmak létrehozása........................................................................................25
2.2.2 Tartalom szerkesztés, törlés...............................................................................29
2.3. Ellenőrző kérdések...................................................................................................30
2.4. Feladatok..................................................................................................................30
3. A honlap megtervezése....................................................................................................31
3.1. Interjú kérdések........................................................................................................31
3.1.1 Mi a célunk a honlappal?.....................................................................................31
3.1.2 Kik lesznek a látogatóink?...................................................................................31
3.1.3 Mit szeretnénk bemutatni?.................................................................................31
3.1.4 Mik a kulcsfontosságú funkciók?.......................................................................32
3.1.5 Milyen visszajelzéseket várunk a látogatóinktól?..............................................32
3.1.6 Részt vesznek-e a látogatóink a tartalom előállításában?.................................34
3.1.7 Miben fog a tartalom és a szolgáltatás fejlődni (pl. 1 hónap, 1 év múlva)?.......34
3.1.8 Ki fogja az oldalt karbantartani?........................................................................34
3.1.9 Milyen csoportos és személyes jogosultsági körökre lesz szükség?..................34
3.1.10 Hol és hogyan szeretnék a honlapot az interneten „reklámozni”?..................35
3.1.11 Látogatottsági statisztikákat szeretnének-e megismerni?...............................35
3.2. Ellenőrző kérdések...................................................................................................35
3.3. Feladatok..................................................................................................................36
4. Telepítés előtt..................................................................................................................37
4.1. A web működése.......................................................................................................37
4.2. Alapvető hardver és szoftver szükségletek..............................................................38
4.3. A Drupal felépítése...................................................................................................38
4.4. Szerver kialakítása....................................................................................................39
4.4.1 Az XAMPP integrált telepítő csomag.................................................................39
4.4.2 Letöltés...............................................................................................................42
4.4.3 Kitömörítés localhost-ra....................................................................................42
4.4.4 Fájlok feltöltése távoli szerverre........................................................................43
4.4.5 Az adatbázis előkészítése....................................................................................46
4.5. Ellenőrző kérdések...................................................................................................47
4.6. Feladatok..................................................................................................................47
5. Telepítés..........................................................................................................................48
5.1. Nyelv választás..........................................................................................................48
6. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

5.2. Adatbázis-kapcsolat.................................................................................................48
5.3. Webhely beállítása....................................................................................................49
5.3.1 Webhely információk..........................................................................................50
5.3.2 Adminisztrátor felhasználó................................................................................50
5.3.3 Webszerver beállítások.......................................................................................51
5.4. Ellenőrző kérdések...................................................................................................53
5.5. Feladatok...................................................................................................................53
6. Első lépések.....................................................................................................................54
6.1. Kezdeti problémák....................................................................................................54
6.1.1 Állapotjelentés.....................................................................................................54
6.1.2 Fájlrendszer.........................................................................................................55
6.1.3 Időzített feladatok...............................................................................................56
6.2. Webhely karbantartás..............................................................................................57
6.3. Webhely információk...............................................................................................59
6.4. Ellenőrző kérdések...................................................................................................60
6.5. Feladatok..................................................................................................................60
7. Az alaprendszer moduljai, szolgáltatásai........................................................................61
7.1. Útvonal álnevek.........................................................................................................62
7.2. Dátum és idő.............................................................................................................62
7.3. Keresés beállításai....................................................................................................63
7.4. Teljesítmény beállítások...........................................................................................65
7.4.1 Gyorstárazás........................................................................................................65
7.4.2 Sávszélesség optimalizálás.................................................................................66
7.5. Ellenőrző kérdések...................................................................................................68
7.6. Feladatok..................................................................................................................68
8. Tartalmak........................................................................................................................69
8.1. Beviteli formák..........................................................................................................69
8.1.1 Alapértelmezett beviteli forma...........................................................................70
8.1.2 A beviteli formák finomhangolása......................................................................71
8.2. Tartalmak beállításai................................................................................................72
8.3. Tartalom típusok......................................................................................................72
8.4. Tartalom beküldése..................................................................................................75
8.5. A tartalmak megtekintése.........................................................................................77
8.5.1 Címlap..................................................................................................................77
8.5.2 Tartalmak keresése.............................................................................................77
8.6. Ellenőrző kérdések...................................................................................................78
8.7. Feladatok..................................................................................................................78
9. A honlap kialakítása........................................................................................................79
9.1. Alapkérdések.............................................................................................................79
9.1.1 Milyen oldalaink lesznek?...................................................................................79
9.1.2 Milyen viszonyban állnak az oldalak egymással?..............................................79
9.1.3 Az oldalakon milyen blokkok legyenek?............................................................80
9.1.4 Milyen menüket, milyen menüpontokat szeretnénk alkalmazni?....................80
9.2. Menük és blokkok kialakítása..................................................................................81
9.2.1 Elsődleges linkek.................................................................................................81
9.2.2 Navigáció menü..................................................................................................82
9.2.3 A blokkok beállítása...........................................................................................83
9.2.4 A főmenü elkészítése..........................................................................................87
9.3. Ellenőrző kérdések...................................................................................................88
9.4. Feladatok..................................................................................................................89
10. További modulok kiválasztása, telepítése....................................................................90
10.1. A Poormanscron modul..........................................................................................91
7. oldal

10.2. A Pathauto modul...................................................................................................92


10.2.1 Általános beállítások.........................................................................................92
10.2.2 Speciális karakterek .........................................................................................94
10.2.3 Útvonal beállítások...........................................................................................94
10.3. Az FCKEditor modul..............................................................................................95
10.3.1 Globális beállítások...........................................................................................96
10.3.2 A profilok beállítási lehetőségei.......................................................................97
10.4. Az IMCE modul......................................................................................................97
10.5. Az Image modul......................................................................................................98
10.5.1 Az Image alap modul........................................................................................98
10.5.2 Az Image Gallery modul...................................................................................99
10.5.3 Az Image Import modul.................................................................................100
10.6. Az Administration Menu modul..........................................................................100
10.7. A Captcha modul...................................................................................................101
10.8. Az External Links modul......................................................................................103
10.9. A Lightbox2 modul...............................................................................................104
10.10. A SpamSpan modul............................................................................................105
10.11. A Webform modul...............................................................................................106
10.12. Ellenőrző kérdések..............................................................................................107
10.13. Feladatok.............................................................................................................108
11. Felhasználókezelés.......................................................................................................109
11.1. Felhasználók létrehozása.......................................................................................109
11.2. Felhasználók kezelése............................................................................................110
11.3. Jogosultságkezelés..................................................................................................111
11.4. Ellenőrző kérdések.................................................................................................113
12. Blog oldal kialakítása...................................................................................................114
12.1. Tartalmaink címkézése..........................................................................................114
12.2. A Tagadelic modul.................................................................................................116
12.3. A Comment modul................................................................................................118
12.4. Védekezés a spam hozzászólások ellen................................................................120
12.5. Ellenőrző kérdések................................................................................................121
13. Közösségi oldal kialakítása .........................................................................................122
13.1. A Forum modul......................................................................................................122
13.2. A Poll modul..........................................................................................................122
13.3. A Blog modul.........................................................................................................124
13.4. A Book modul........................................................................................................125
13.5. Tartalmak megosztása RSS csatornákon.............................................................125
13.6. Az Aggregator modul............................................................................................125
13.6.1 Csatorna létrehozása........................................................................................125
13.7. Ellenőrző kérdések................................................................................................127
13.8. Feladatok...............................................................................................................127
14. Sminkek használata.....................................................................................................128
14.1. Sminkek telepítése................................................................................................128
14.2. Sminkek módosítása.............................................................................................129
14.2.1 Képek cseréje...................................................................................................129
14.2.2 CSS formázás...................................................................................................130
14.2.3 Szerkezeti átalakítás, hibák javítása................................................................131
14.3. Ellenőrző kérdések................................................................................................131
14.4. Feladatok...............................................................................................................131
15. A Views modulok..........................................................................................................132
15.1. Telepítés.................................................................................................................132
15.2. Kezdőoldal.............................................................................................................133
8. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

15.2.1 Mi jelenik meg a nézetben?.............................................................................134


15.2.2 Hírek megjelenítésének időzítése...................................................................135
16. A CCK modulok............................................................................................................136
16.1. Telepítés.................................................................................................................136
16.2. Mező létrehozása...................................................................................................138
16.3. Mezők megjelenítése.............................................................................................140
16.4. Ellenőrző kérdések................................................................................................141
17. CCK és Views esettanulmányok...................................................................................142
17.1. Programok időrendben..........................................................................................142
17.1.1 Tartalomtípus...................................................................................................142
17.1.2 A programajánlók listázása.............................................................................144
17.2. Online konferencia jelentkezés.............................................................................146
17.3. A GAMF Kar honlapjának információs struktúrája.............................................149
17.4. Feladatok...............................................................................................................152
17.4.1 Hírek és archív hírek........................................................................................152
17.4.2 Nyelviskola.......................................................................................................153
18. Drupal esettanulmányok.............................................................................................154
18.1. Bárányka Keresztyén Óvoda.................................................................................154
18.1.1 Tervezés............................................................................................................154
18.1.2 Telepítés...........................................................................................................155
18.2. Poli-Tech 2005 Kft................................................................................................157
18.2.1 Alkalmazott modulok.......................................................................................157
18.2.2 Oldalfelépítés...................................................................................................158
18.2.3 Felhasználói adatok.........................................................................................159
18.2.4 Nézetek............................................................................................................160
18.2.5 Hírlevelek.........................................................................................................161
18.3. Tantárgyi oldalak..................................................................................................162
18.3.1 Tervezés...........................................................................................................162
19. Gyakorló feladatok.......................................................................................................164
19.1. Szálláskereső oldal.................................................................................................164
19.1.1 A publikus felület.............................................................................................164
19.1.2 Szállásadók felülete.........................................................................................164
19.1.3 Megvalósítási ötletek.......................................................................................165
19.2. Befektetési tanácsadó............................................................................................165
19.2.1 Publikus szolgáltatások...................................................................................165
19.2.2 Adminisztrációs lehetőségek...........................................................................165
19.2.3 Oldalak elrendezése.........................................................................................165
19.3. Céges weboldal hírekkel, képekkel.......................................................................166
19.4. Egyesületi honlap..................................................................................................166
19.4.1 A megrendelő igénye saját megfogalmazásában............................................166
20. Adminisztrációs feladatok...........................................................................................167
20.1. Biztonsági mentés.................................................................................................167
20.1.1 A fájlok elmentése............................................................................................167
20.1.2 Az adatbázis mentése......................................................................................169
20.2. Honlap átköltöztetése, visszaállítása...................................................................169
20.2.1 A settings.php szerkesztése............................................................................170
20.2.2 A fájlok feltöltése............................................................................................170
20.2.3 Az adatbázis importálása................................................................................170
20.3. Frissítés.................................................................................................................170
9. oldal

Ábrajegyzék

1. ábra: Céges honlap: Koch Sándor Csongrád Megyei TIT...............................................14


2. ábra: Céges honlap: Bárányka Keresztyén Óvoda..........................................................14
3. ábra: Weblabor szakmai-közösségi oldal........................................................................15
4. ábra: felsofok.com közösségi honlap..............................................................................16
5. ábra: Doransky - Dobó Mátyás népszerű blogja.............................................................17
6. ábra: Felhasználó létrehozása link..................................................................................21
7. ábra: Regisztráció............................................................................................................21
8. ábra: Navigációs menü...................................................................................................23
9. ábra: Saját adatok szerkesztése......................................................................................24
10. ábra: Tartalom beküldése.............................................................................................25
11. ábra: Oldal beküldése.....................................................................................................25
12. ábra: Oldal beküldése leválasztott összefoglalóval......................................................26
13. ábra: Oldal beküldése vizuális szerkesztővel................................................................27
14. ábra: Tartalom beküldése közben előnézet..................................................................27
15. ábra: Fórum téma beküldése........................................................................................28
16. ábra: Tartalom beküldése témamegjelöléssel..............................................................28
17. ábra: Tartalom a témák listájával..................................................................................29
18. ábra: Csatolt állomány feltöltése..................................................................................29
19. ábra: Csatolt állomány feltöltése után leírást adhatunk meg......................................29
20. ábra: Megjelent a Szerkesztés fül.................................................................................30
21. ábra: Kapcsolatfelvétei űrlap........................................................................................33
22. ábra: A kliens-szerver architektúra..............................................................................37
23. ábra: A telepítés helye...................................................................................................40
24. ábra: XAMPP Control Panel.........................................................................................40
25. ábra: MySQL jelszó megadása......................................................................................41
26. ábra: Az xampp\htdocs könyvtár telepítés után..........................................................41
27. ábra: A telepítőcsomag letöltése...................................................................................42
28. ábra: Kitömörítés után..................................................................................................42
29. ábra: Nyelvi fájlok kitömörítése...................................................................................43
30. ábra: Új FTP kapcsolat létrehozása..............................................................................44
31. ábra: Az Extra FTP kapcsolatának adatai.....................................................................44
32. ábra: A CWI kapcsolat alapadatai................................................................................45
33. ábra: Webes FTP felület az Extrán...............................................................................45
34. ábra : Írási jogosultság probléma.................................................................................46
35. ábra: Adatbázis létrehozása..........................................................................................47
36. ábra: Nyelv választás.....................................................................................................48
37. ábra: Adatbázis beállítás...............................................................................................49
38. ábra: Webhely beállítása...............................................................................................50
39. ábra: Adminisztrátor felhasználó..................................................................................51
40. ábra: Webszerver beállítások........................................................................................52
41. ábra: A telepítés elkészült..............................................................................................52
42. ábra: A telepítés után....................................................................................................53
43. ábra: Adminisztráció oldal............................................................................................54
44. ábra: Állapot jelentés hibákkal.....................................................................................55
45. ábra: Fájlrendszer beállításai........................................................................................56
46. ábra: Cron beállítás a szolgáltatónál.............................................................................57
47. ábra: Karbantartás........................................................................................................58
48. ábra: Karbantartás........................................................................................................58
49. ábra: Webhely információk..........................................................................................59
10. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

50. ábra: Alaprendszer szükséges modulok........................................................................61


51. ábra: Útvonal álnév tartalom beküldésekor.................................................................62
52. ábra: Dátum beállítások................................................................................................63
53. ábra: Keresés űrlap.......................................................................................................63
54. ábra: Keresés beállításai...............................................................................................64
55. ábra: Gyorstárazás beállítása........................................................................................65
56. ábra: Blokk gyorstárazás...............................................................................................66
57. ábra: Oldal tömörítés engedélyezése............................................................................67
58. ábra: Sávszélesség optimalizálás..................................................................................67
59. ábra: A HTML kimenet a CSS fájlok összevonása nélkül............................................68
60. ábra: A HTML kimenet a CSS fájlok összevonása esetén...........................................68
61. ábra: Beviteli formák.....................................................................................................69
62. ábra: Beviteli forma felhasználói..................................................................................70
63. ábra: Szűrők ki-be kapcsolása a beviteli formáknál.....................................................71
64. ábra: Engedélyezett HTML elemek...............................................................................71
65. ábra: Tartalmak alapbeállításai....................................................................................72
66. ábra: Írás-ból Hír tartalomtípus...................................................................................73
67. ábra: Beküldési űrlap beállítások..................................................................................74
68. ábra: Tartalom beküldése.............................................................................................75
69. ábra: Hír beküldése.......................................................................................................75
70. ábra: Hír előnézete........................................................................................................76
71. ábra: A hír létrejött........................................................................................................76
72. ábra: Tartalmak listázása, szűrése................................................................................77
73. ábra: Navigáció tervezés...............................................................................................80
74. ábra: Menük adminisztrációs oldal...............................................................................81
75. ábra: Oldal elhelyezése az Elsődleges menüben..........................................................82
76. ábra: Navigáció menü beállításai.................................................................................83
77. ábra: Blokkok adminisztrációs oldal............................................................................84
78. ábra: Navigáció menü blokk beállításai.......................................................................86
79. ábra: Új menü létrehozása............................................................................................87
80. ábra: Címlap menüpont létrehozása............................................................................88
81. ábra: Poormanscron beállítások....................................................................................91
82. ábra: Tartalom beküldésekor automatikusan létrejövő álnév....................................92
83. ábra: Pathauto általános beállítások............................................................................93
84. ábra: Speciális karakterek............................................................................................94
85. ábra: Generált útvonal álnevek.....................................................................................95
86. ábra: Az FCKEditor működés közben..........................................................................95
87. ábra: FCKEditor beállítások.........................................................................................96
88. ábra: Profil alap beállítások..........................................................................................97
89. ábra: IMCE működés közben.......................................................................................97
90. ábra: FCKEditor kép beszúrás.....................................................................................98
91. ábra: Kép csatolása tartalom beküldésekor..................................................................99
92. ábra: Galéria navigáció...............................................................................................100
93. ábra: Az Administration menu modul használat közben...........................................101
94. ábra: Az Image Captcha modul működése.................................................................102
95. ábra: Captcha beállítások............................................................................................102
96. ábra: Az Image captcha beállításai.............................................................................103
97. ábra: External links configuráció................................................................................104
98. ábra: A Lightbox2 működés közben...........................................................................105
99. ábra: A SpamSpan finomhangolása...........................................................................106
100. ábra: Konferencia jelentkezés Webform segítségével..............................................107
101. ábra: Felhasználó beállításai.....................................................................................109
11. oldal

102. ábra: Felhasználói kép támogatás.............................................................................110


103. ábra: Felhasználók......................................................................................................111
104. ábra: Csoportok..........................................................................................................112
105. ábra: Jogosultságok beállítása...................................................................................113
106. ábra: Kategória szerkesztése a címkékhez................................................................115
107. ábra: Címkék megadása.............................................................................................115
108. ábra: Korábbi címkék közötti keresés.......................................................................116
109. ábra: Kategória listázása............................................................................................116
110. ábra: Címkefelhő.........................................................................................................117
111. ábra: Tagadelic beállítások..........................................................................................117
112. ábra: Tagadelic blokk az oldalon................................................................................118
113. ábra: Hozzászólások beállítása...................................................................................119
114. ábra: Jogosultságok...................................................................................................120
115. ábra: Spam hozzászólás (részlet)...............................................................................120
116. ábra: Szavazás beküldése...........................................................................................123
117. ábra: Blogbejegyzés beküldés után............................................................................124
118. ábra: A blogbejegyzések elérhetők a felhasználói oldalról is....................................124
119. ábra: Tartalom megosztás..........................................................................................125
120. ábra: Csatorna létrehozása........................................................................................126
121. ábra: Aggregator blokk...............................................................................................126
122. ábra: Aggregator tartalom alapján blogbejegyzés.....................................................127
123. ábra: Sminkek beállításai..........................................................................................128
124. ábra: A szerző honlapja,............................................................................................129
125. ábra: és a dekorációs kép...........................................................................................130
126. ábra: Nézetek listája...................................................................................................132
127. ábra: A frontpage nézet szerkesztése.........................................................................133
128. ábra: Views tulajdonság szerkesztése.......................................................................134
129. ábra: Szűrő hozzáadása..............................................................................................135
130. ábra: CCK modulok...................................................................................................136
131. ábra: Select List alkalmazása.....................................................................................137
132. ábra: Autocomplete Text Field alkalmazása.............................................................137
133. ábra: Új mező létrehozása- 1. lépés...........................................................................138
134. ábra: Új mező létrehozása- 3. lépés...........................................................................139
135. ábra: A Szöveg mező tartalom beküldéskor..............................................................140
136. ábra: Mezők megjelenítése........................................................................................140
137. ábra: A program ajánló működése............................................................................142
138. ábra: Tartalomtípus létrehozása...............................................................................143
139. ábra: Mezőkkel kiegészült a tartalomtípus...............................................................144
140. ábra: Program ajánló beküldése...............................................................................144
141. ábra: Oldal nézet megvalósítása................................................................................145
142. ábra: Mezők beállítása...............................................................................................145
143. ábra: Szűrési feltételek..............................................................................................146
144. ábra: Tartalomtípus beküldési űrlap beállítások......................................................147
145. ábra: Mezők hozzáadása után...................................................................................148
146. ábra: Egység - Oktató - Tantárgy egyedek és kapcsolataik......................................149
147. ábra: Szervezeti egység mezői...................................................................................150
148. ábra: Oktató mezői.....................................................................................................151
149. ábra: Tantárgy mezői.................................................................................................152
150. ábra: Bárányka Keresztyén Óvoda korábbi honlapja...............................................155
151. ábra: A Bárányka Keresztyén Óvoda honlapja..........................................................157
152. ábra: A Poli-Tech 2005 Kft. honlap kezdőoldala......................................................159
153. ábra: Bővített regisztráció .........................................................................................159
12. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

154. ábra: Profilok adminisztrációs oldal.........................................................................160


155. ábra: Nézet névteleneknek........................................................................................160
156. ábra: Csak aktív tagok................................................................................................161
157. ábra: Hírlevél .............................................................................................................161
158. ábra: Feliratkozás hírlevélre......................................................................................161
159. ábra: Hírlevél létrehozása..........................................................................................162
160. ábra: Fáljok biztonsági mentése................................................................................167
161. ábra: Könyvtárszinkronizálás....................................................................................168
162. ábra: Az Összehasonlítás eredménye........................................................................168
163. ábra: Szinkronizálás..................................................................................................168
164. ábra: Adatbázis exportálás........................................................................................169
1.Alapfogalmak 13. oldal

1. Alapfogalmak
E jegyzet nem vállalkozhat arra, hogy az internet, és azon belül a web használatát az ala-
poktól részletesen bemutassa. Arra azonban igen, hogy bemutassa a webes tartalom-elő-
állítás értő művelői számára szükséges alapismereteket.
Megjegyzés: A szerző vágya kettős:
● hosszú távon: a GAMF Karon végzett hallgatók a majdani munkahelyükre vigyék el az itt tanulta-
kat, és a cégük oldalának kialakításában, üzemeltetésében aktívan vegyenek részt,
● rövid távon: a hallgatók bekapcsolódhassanak a GAMF honlap és más, az oktatáshoz kapcsolódó
honlapok aktív használatába.
Kezdjük a ma jellemző kis-közepes méretű honlapok jellemző típusainak, főbb szolgálta-
tásainak áttekintésével.

1.1. Honlap típusok

1.1.1 Klasszikus céges weboldalak


E honlapok eredetét a régóta ismert céges szóróanyagok, brosúrák, valamint a cégtáblák
környékén kell keresnünk. A web hőskorában (1990-es évek első fele) az a néhány válla-
lat, amelyik egyáltalán belekezdett a „web meghódításába”, többnyire e szóróanyagok
webre vitelét hajtotta végre.
Megjegyzés: A szerző még emlékszik olyan weboldalra, ahol az egész „honlap” egyetlen képállomány
megjelenítéséből állt.
Később a céges oldalak a puszta elérhetőségi adatok, a cégvezető/tulajdonos fényképe és
a cégprofil közlése mellett a nyújtott szolgáltatások, termékek bemutatását is egyre ko-
molyabban vették. Sok oldal még ma is elsősorban ezt a modellt követi.
Megjegyzés: Bizonyos esetekben ennél több nem is várható el egy cégtől.
Példaként nézzünk meg a Koch Sándor Csongrád Megyei Tudományos Ismeretterjesz-
tő Társulat8 oldalát (1. ábra). A cég fő profilja a tanfolyamok szervezése, így a legtöbb ol-
dal a tanfolyami tematikákat, és kapcsolattartási információkat tartalmazza.
Megjegyzés: Jogos a felvetés, hogy itt sok lehetőség lenne még az információk bemutatására, interakciók
lehetőségének (pl. előjelentkezés webes felületen, hírlevél, hozzászólási lehetőségek, fórum stb.) kiaknázá-
sára. Különösen a webtől idegenkedő vezetők szokták a webes jelenlétet fokozatosan növelni.

8
http://www.titszeged.hu/
14. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

1. ábra: Céges honlap: Koch Sándor Csongrád Megyei TIT

A Bárányka Keresztyén Óvoda9 honlapja is hasonló célokat tűzött ki maga elé, de itt a
tartalom dinamikusan, időszerű információkkal bővül (2. ábra).

2. ábra: Céges honlap: Bárányka Keresztyén Óvoda

9
http://baranykaovi.kbgy.hu/
1.Alapfogalmak 15. oldal

1.1.2 Közösségi oldalak


Ma, a (sokak által vitatott) Web 2 korszakában közösségi oldalak alatt az olyan „nagyo-
kat” szokás érteni, mint pl. az iwiw10. Pedig a néhány nagy árnyékában sok száz/ezer
honlap van, ahol nem a személyes, magánéleti kapcsolatok, hanem valamilyen szakmai
vagy egyéb részterület alapján gyűlnek össze a szakértők és az érdeklődők, és végeznek
közösségi tartalom-előállítást.

3. ábra: Weblabor szakmai-közösségi oldal

Példaként érdemes megnézni két szakmai portál, a Weblabor11 (3. ábra) és a Programo-
zói portál12 felépítését. Mindkettőre jellemző, hogy vannak ugyan a szűk körű szerkesztő-
ségi csapat részéről mértékadó anyagok, de a tartalom jelentős, sőt domináns része a
napi több száz látogató által a fórumokon és (a Weblabor esetén blogmark, de akár hír
küldése által is) összegyűjtött tartalom.
Nézzünk egy másik példát is, amely céljaiban, szolgáltatásaiban az iwiw-szerű oldalak-
hoz hasonlítható. A felsofok.com13 Berka Viktor szakdolgozati feladata (4. ábra).

10
http://iwiw.hu
11
http://weblabor.hu
12
http://prog.hu
13
http://felsofok.com/
16. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

4. ábra: felsofok.com közösségi honlap

Tipikus jellemzőjük tehát e közösségi oldalaknak a valamilyen rendezőelv (pl. már meg-
lévő kapcsolatok egy ifjúsági egyesület vagy gyülekezet oldalán; vagy a közös érdeklődési
kör) szerint való rendeződés.

1.1.3 Blogok
A weblogok, vagyis webes naplók (legalábbis magyar nyelvterületen) viszonylag újdon-
ságnak számítanak. A gyökereket exhibicionista („magamutogató”) fiatalok személyes,
sőt sokszor bizalmas14 naplóinál kell keresni.
Mára a helyzet jelentősen átalakult. Nem szűntek meg ugyan a személyes (én) blogok, de
a jegyzet célját tekintve sokkal nagyobb jelentőségűek az egy-egy független szakértő által
fenntartott (pl. Doransky15 a webes trendek világban, 5. ábra), vagy éppen a vállalatok-
hoz kapcsolódó blogolás. Ez utóbbi akár a cég egészét megjelenítő (ún. céges blog), akár
a nagyobb vállalatok meghatározó személyiségeinek önálló blogjai is lehetnek. Utóbbira
példa olyan neves vállalatok, mint a Sun16, Mozilla17 vagy Microsoft18 vezető fejlesztőinek
blogjai, ahol a legfrissebb publikus szakmai információkat lehet megismerni.

14
„Nem mondhatom el senkinek, elmondom hát mindenkinek” érzés.
15
http://doransky.hu
16
http://blogs.sun.com/
17
http://blog.mozilla.com/
18
http://blogs.msdn.com/
1.Alapfogalmak 17. oldal

5. ábra: Doransky - Dobó Mátyás népszerű blogja

1.2. Tartalomkezelő rendszerek


A Wikipédia definíciója szerint „a tartalomkezelő rendszer (angolul Content Manag-
ement System, CMS) olyan szoftverrendszer, amely nem strukturált információk, mint
például az internetes portálok, akár több felhasználó általi elkészítését, kezelését, és tá-
rolását segíti. Továbbá gondoskodik a tartalmak strukturált megjelenítéséről, statisz-
tikák készítéséről, kiegészítő funkciók integrálásáról.”
E definícióhoz – a jelen jegyzet szempontjából – legfontosabb kiegészítés, hogy tarta-
lomkezelő rendszerek használata esetén a kis-közepes méretű honlapok nem, vagy csak
kisebb részben (elsősorban a honlap elindításánál) igényelnek webfejlesztői közreműkö-
dést. A honlap fenntartását akár teljes egészében meg tudja oldani, aki az e jegyzetben
foglaltakat megfelelő szinten megismeri.

1.2.1 Melyiket válasszunk?


Tartalomkezelő rendszerből sokféle van. Vannak
● fizetősek és ingyenesek/nyílt forrásúak19
● egyszerűbbek és komplexebbek
● különböző szerver környezeten üzemeltethetők
● kezdetlegesek és jól kiforrottak
● magyarul elérhetők, vagy csak más nyelven tudók.
● általános célúak és specializáltak (pl. e-learning, e-commerce, fórum, blog stb.)
19
Éremes megemlíteni, hogy az ingyenes és a nyílt forrású fogalom nem ugyanazt jelenti. Sokszor azon-
ban, és a CMS-ek esetén különösen sokszor az ingyenesek egyben nyílt forrásúak is.
18. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

Jól látszik, hogy ez alapján nem könnyű a választás. A szerző véleménye azonban az,
hogy a Drupal a legtöbb felmerülő szempont szerint előnyös választás, ezért e jegyzet a
Drupal segítségével történő tartalom-előállításra koncentrál.
A választáshoz nem utolsó szempont, hogy ki tudjuk-e próbálni a CMS-t a döntés előtt.
Itt mutatkozik meg a nyílt forrású rendszerek nagy előnye: akár online, előre telepített
módon is kipróbálhatjuk őket. A magyar nyelven is használható, nyílt forrású CMS-ek
legtöbbjét a CMS Award20 oldalon bárki kipróbálhatja. Ezen kívül (angol nyelven) még
több rendszer kipróbálható az OpensourceCMS21 oldalon.
További nem elhanyagolható szempont, ha egy CMS aktív felhasználóiból álló magyar
közösség is elérhető. A legfontosabb CMS-ek esetén ez szintén megfigyelhető.
Nehezen vitatható, hogy a magyar felhasználók között a legnépszerűbb CMS-ek:

Drupal Joomla Moodle Wordpress


http://drupal.hu http://joomla.hu http://moodle.org http://word-press.hu

Míg a Moodle oktatási oldalaknál, Wordpress blogok esetén a legnépszerűbb, a Drupal


és Joomla az általános kategóriában küzd22.
Ebben a jegyzetben természetesen nincs arra lehetőségünk, hogy több fontosabb CMS-t
egymással is összehasonlítva bemutassunk. Ezért e jegyzet a Drupalról fog szólni.

1.3. Ellenőrző kérdések


● Mik a céges oldalak jellemzői?
● Mik a közösségi oldalak jellemzői?
● Mik a blogok jellemzői?
● Soroljon fel 5 nyílt forrású tartalomkezelő rendszert!
● Milyen típusú honlapokhoz ajánlható a Drupal / WordPress / Joomla / Moodle?
● Hol (és hogyan) keresne az interneten „magyarul beszélő” tartalomkezelő rend-
szereket?

1.4. Feladatok
● Keressen néhány blogot, például a http://blog.hu/ vagy a http://blogter.hu/ se-
gítségével.

20
http://www.cmsaward.hu
21
http://opensourcecms.com/
22
„Első helyet ért el Packt Publishing kiadó szavazásán a Drupal! A versenyt öt kategóriában hirdették
meg, ebből háromban indulhatott a Drupal. A legjobb PHP alapú nyílt forráskódú tartalomkezelő és a
legjobb nyílt forráskódú közösségi tartalomkezelő kategóriában második helyezést ért el, az általános
versenyt, vagyis a legjobb nyílt forráskódú tartalomkezelő kategóriát pedig megnyerte!”
forrás: http://drupal.hu/hirek/20071104/packtnyertes
1.Alapfogalmak 19. oldal

● Keresse fel a fenti három CMS oldalát, és próbálja ki. (Természetesen mindhárom
honlap a saját motorjával készült.)
● Regisztráljon a CMSAward oldalon, és próbálja ki a fenti rendszerek adminisztrá-
ciós oldalait is!
● Keresse fel az OpensourceCMS oldalt, ahol regisztráció nélkül (bár angol nyelven)
tudja a rendszereket kipróbálni.
20. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

2. Drupal kézikönyv kezdőknek


Ez a fejezet segíteni fog a Drupal alapú weboldalak használatában. Bemutatja, hogyan
hozzunk létre felhasználói azonosítót (másként fogalmazva: hogyan regisztráljunk), ho-
gyan lépjünk be, hogyan állítsuk be személyes adatainkat, és végül hogyan hozzunk létre
tartalmakat (weboldalakat).
A Drupal egy tartalomkezelő rendszer. Célja, hogy egyszerűen lehessen tartalma-
kat (szövegeket, képeket, csatolt állományokat, stb.) felvinni, és azokat elérhetővé tenni
a látogatók számára. Nem kell a technikai részletekkel foglalkoznunk, csupán a tartal-
makra kell koncentrálnunk.
A Drupal a tartalmakat adatbázisban tárolja, ahonnan – a felhasználó böngészőjének ké-
résére – a tartalmakat közzéteszi.
Természetesen a Drupal lehetőséget ad arra, hogy a weboldal látogatói különböző sze-
repkörökben és különböző jogosultságokkal használhassák a weboldalunkat.
Van, akinek tartalmakat feltölteni, másoknak szerkeszteni, a legtöbb látogatónak pedig
„csupán” olvasni van lehetősége az oldalakat. (Bár ez utóbbi sem mindig így van, hiszen
lehetnek zárt oldalak is, amelyeket csak bizonyos látogatók tekinthetnek meg.)
Ahhoz, hogy minden látogató pontosan azt (nem többet és nem kevesebbet) tehesse meg
a honlapon, amire az oldal tulajdonosa vagy adminisztrátora fel akarja jogosítani, bizo-
nyos esetekben elengedhetetlen a látogató személyének beazonosítása. Ennek
régóta bevált módszere, hogy a felhasználók számára azonosítót hozunk létre (más né-
ven regisztrálunk), amihez jogosultságokat rendelünk, a felhasználó pedig a honlap ké-
sőbbi használatai esetén a felhasználónevének és jelszavának megadásával azonosítja
magát (bejelentkezik).
Bevezetésként még érdemes megemlíteni, hogy a Drupal weboldal adminisztrátora
jogosult arra, hogy a honlapon olyan feladatokat is elvégezzen, amelyek senki másnak
nem engedélyezettek, például egy regisztrált felhasználó jogosultságainak pontos beállí-
tása.

2.1. Felhasználókezelés

2.1.1 Regisztráció
A Drupal oldalakon a tartalmak beküldése (létrehozása), szerkesztése általában csak
regisztrált, és bejelentkezett látogatók számára (vagy azok közül is csak némely
szűkebb csoport számára) engedélyezett. (Speciális esetekben a látogatók bejelentke-
zés nélkül is küldhetnek be tartalmakat: tipikusan fórum bejegyzések, illetve megjegy-
zések beküldése esetén ezt bárki számára meg szoktuk engedni.)
A regisztráció alapvetően kétféle módon történhet:
● saját magunkat regisztráljuk, vagy
● az adminisztrátor regisztrál.

Saját magunk regisztrálása


A látogatók maguk végezhetik el a regisztrációt. Ennek módja, hogy a honlap belé-
pésre szolgáló részén megkeressük a Felhasználó létrehozása linket (6. ábra).
2.Drupal kézikönyv kezdőknek 21. oldal

6. ábra: Felhasználó létrehozása link

A linkre kattintva megjelenik a Saját adatok oldal (7. ábra), ahol a kívánt felhasználói
név és az e-mail cím megadása szükséges. Ezen kívül további adatok megadására is lehet
szükség, illetve lehetőség, az adminisztrátor által meghatározott módon. Sajnos egyre
gyakrabban van szükség például a Captcha23 ellenőrzés beiktatására.

7. ábra: Regisztráció

(Ha az ábrán látható oldalon a jelszó megadására nincs lehetőség, akkor ennek egy to-
vábbi biztonsági oka van, és a jelszó a megadott e-mail címre fog érkezni. Hamarosan
visszatérünk erre az esetre.)
A felhasználói név megválasztásánál egyre elterjedtebb megoldás a saját nevünket al-
kalmazni, főleg olyan oldalaknál, ahol a honlap látogatói nem csak virtuálisan (a honlap
látogatóiként), hanem fizikai valójukban is találkozhatnak, ismerhetik egymást.
A jelszó kiválasztásánál24 érdemes a következőket figyelembe venni:
● olyan jelszót válasszunk, amelyik nem található ki könnyen a személyünk ismere-
tében sem,
23
„A captcha vagy CAPTCHA (magyarosan kapcsa) egy 2000-ben megjelent védekezési módszer a spa-
mek, közelebbről a kommentspamek ellen. A módszer lényege, hogy a hozzászóláshoz a képen látható
szót is be kell írni, ez azonban a képfájlon torzítva jelenik meg, tehát a spamrobot nem ismeri föl.”
forrás: http://hu.spam.wikia.com/wiki/Captcha
24
A jelszó természetesen utólag is megváltoztatható.
22. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

● minden honlapon más jelszót használjunk,


● a jelszó lehetőleg tartalmazzon számokat, nagybetűket és írásjeleket is, és leg-
alább 6-8 karakterből álljon.
Fontos megjegyezni, hogy az űrlapokon begépelt adatoknak nem lesz végleges hatá-
suk, amíg az űrlap alján található Beküldés, Mentés vagy hasonló (jelen esetben Fel-
használó létrehozása) feliratú gombra kattintva el nem küldjük azokat a honlapot ki-
szolgáló webszervernek.
A weboldal adminisztrátora szigorúbb lépéseket is beiktathat a fenti regisztrációs folya-
matba. Ez azonban az adminisztrátornak csupán lehetősége, nem minden esetben él
vele. Ilyen lépések lehetnek például:
● A regisztráció során megadott e-mail címre automatikusan érkezhet egy le-
vél, amelyben a leírt teendőket követve véglegesíthetjük a regisztrációt. (E lépés
célja, hogy korrekt, működő e-mail címmel rendelkezzen minden regisztrált láto-
gató.) Ebben az esetben a jelszót nem tőlünk várja a weboldal, hanem később tud-
juk azt beállítani.
● A regisztráció adminisztrátori elfogadáshoz kötött is lehet. Ekkor az admi-
nisztrátor elfogadásáig csak zárolt (vagyis pillanatnyilag nem használható) re-
gisztrált felhasználóval rendelkezünk, az adminisztrátor engedélye után pedig
Aktív felhasználóvá válunk. (Aktív felhasználónak tehát azt tekintjük, aki be tud
jelentkezni az oldalra.)

Az adminisztrátor regisztrál
Előfordulhat, hogy az adminisztrátor maga hoz létre a felhasználók számára fel-
használói azonosítót. Ebben az esetben a Drupal (vagy az adminisztrátor) egy e-mailben
értesíti a leendő felhasználót a regisztráció megtörténtéről. Ennek előnye, hogy a fel-
használó megfelelő jogosultságait már ekkor megkaphatja. Zárt oldalakra többnyire csak
így lehet bekerülni.

2.1.2 Be- és kijelentkezés


Addig, amíg az oldalra be nem jelentkezünk a felhasználónév és jelszó megadásával,
mindössze azonosítatlan (anonymous, a továbbiakban névtelen vagy vendég) felhaszná-
lóként tudjuk az oldalt használni. Ha ki akarjuk használni a regisztrált felhasználói azo-
nosítónkkal járó plusz szolgáltatásokat, akkor mindenképpen be kell jelentkez-
nünk.
A bejelentkezés legegyszerűbb módja, hogy az 6. ábrán látható űrlapon megadjuk a fel-
használónevünket és a jelszavunkat, majd a Belépés gombra kattintunk.
A sikeres belépésre utal többek között, hogy az eddig látható Belépés űrlap (célja
nem lévén) nem lesz látható. Látszik viszont helyette az ún. Navigációs menü, amely-
nek címe (felirata) a saját felhasználói nevünk. Itt található a Saját adatok és a Kilépés
link, ez utóbbira kattintva ismét névtelen felhasználóvá válunk a Drupal alapú oldal szá-
mára.
2.Drupal kézikönyv kezdőknek 23. oldal

8. ábra: Navigációs menü

A böngészőnk (beállításaitól függően) felajánlhatja, hogy a begépelt adatokat elmen-


ti. Ezt csak akkor fogadjuk el, ha a számítógéphez fizikailag más nem tud hozzáférni.
Például netkávézóban, iskolai gépteremben nem szabad elmentenünk, mert akkor ille-
téktelenek használhatják a honlapot a mi nevünkben és jogosultságunkkal.
Ha engedélyeztük a belépési adatok elmentését, akkor a legközelebbi látogatáskor a bön-
gészőnk fel fogja ajánlani a korábbi adatokat, így azokat nem kell újra begépelnünk.
Biztonsági okokból lehetőleg mindig lépjünk ki a Kilépés link segítségével. Kivételt
képezhet az az eset, ha a számítógépünkhöz illetéktelen személyek nem férhetnek hozzá.

2.1.3 Saját adatok módosítása


A regisztrált felhasználók saját adataikat megváltoztathatják a Saját adatok (8. ábra),
linkre, majd a Szerkesztés fülre kattintva.
Az e-mail cím és a jelszó megváltoztatása minden esetben lehetséges. Az adminisztrátor
beállításaitól függ, hogy pontosan ezen kívül mit tudunk az oldalon beállítani. A követ-
kezők szoktak előfordulni:
● Ha engedélyezve van, megváltoztathatjuk a felhasználónevünket.
● Ha engedélyezve van, itt feltölthetünk egy saját arcképet, ami például a be-
küldött tartalmaink, hozzászólásaink mellett jelenhet meg.
● Többnyelvű oldal esetén a felhasználói felület nyelvét megváltoztathatjuk.
● Ha engedélyezve van, az időzóna megadásával korrigálhatjuk a szerver és a mi
számítógépünk közötti esetleges időzóna-eltérést.
● Ha az oldal többféle kinézettel (sminkkel) rendelkezik, beállíthatjuk a számunk-
ra megfelelőt.
● Ha engedélyezve van, a hozzászólásainknál alapértelmezetten megjelenő aláírás
szöveget is megadhatunk.
24. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

9. ábra: Saját adatok szerkesztése

2.2. Tartalmak kezelése


A Drupal tartalomkezelő rendszer fő célja, hogy a honlap tartalmait (oldalait) kezelje,
vagyis lehetővé tegye az oldalak létrehozását, módosítását, törlését, megtekintését. (Ter-
mészetesen a szolgáltatásokat csak az adott feladat ellátására jogosult felhasználók érhe-
tik el.)
2.Drupal kézikönyv kezdőknek 25. oldal

2.2.1 Tartalmak létrehozása


Amennyiben rendelkezünk megfelelő jogosultságokkal, a navigációs menün megjelenik
a Tartalom beküldése link.

10. ábra: Tartalom beküldése

Itt olyan tartalom típusok közül választhatunk, amelyek beküldésére jogunk van. (A 10.
ábra esetén csak Oldal típusú tartalmat tudunk beküldeni.)

11. ábra: Oldal beküldése

A Cím a beküldött oldal címét, míg a Törzs a tartalom érdemi részét várja.

Összefoglaló és teljes nézet


A tartalmunk beküldésekor gondoljunk arra, hogy egyes esetekben (pl. címlapra küldött
tartalom esetén) nem a teljes tartalom, hanem annak csak egy összefoglalója/előnézete
jelenik meg.
A törzs megadása felett az összefoglaló és a teljes nézet viszonyát adhatjuk meg. Az alap-
értelmezett esetben (a 11. ábra szerint) az összefoglaló a teljes nézetben is megjelenik, te-
hát mintegy előzetes funkcionál.
Hogy a tartalomnak mennyi része legyen az összefoglaló, az több módon is eldőlhet. Az
alapbeállítások szerint néhány száz karakternyi szöveg kerül automatikusan az összefog-
lalóba. Ha nem szeretnénk ezt az automatizmust dolgozni, akkor az Összefoglaló elvá-
lasztása a kuzornál gombbal ezt kikapcsolhajuk, és mi magunk dönthetünk róla (12. áb-
ra).
26. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

12. ábra: Oldal beküldése leválasztott összefoglalóval

Beviteli forma
A Törzs mező alatt pontos információkat kaphatunk arra nézve, hogy e beküldendő tar-
talmat hogyan kell megadnunk. Például a web és e-mail címek automatikusan linkként
fognak megjelenni. Ezen túl a HTML nyelv itt felsorolt tagjait is használhatjuk. Nem kell
azonban megijedni, az adatbevitelre többnyire kényelmesebb, kevesebb szaktudást
igénylő eszközök is a rendelkezésünkre állnak.
Mindenképpen figyelembe kell azonban venni, hogy a weboldalak szövegformázásának
logikája (az eltérő megjelenítési logika miatt) eléggé eltér a hagyományos, papír alapú
szövegszerkesztéstől.
Előfordulhat, hogy a Beküldés nem, csak az Előnézet gomb látható. Ez arra utal, hogy az
előnézet használata kötelező, csak második lépésben fogjuk megtalálni a Beküldés gom-
bot.

Vizuális szerkesztő
A 13. ábrán látszik, hogy a tartalmak bevitele a vizuális szerkesztő segítségével hason-
ló módon oldható meg, mint ahogy azt a szövegszerkesztőnkben is megszokhattuk.
Érdemes azonban figyelembe venni, hogy egy weboldal – eltérően egy nyomtatásra
szánt, szövegszerkesztőben készített dokumentumhoz képest, – akár minden látogató
esetén máshogy fog kinézni. Ezért érdemes csupán alapvető formázási tevékenységre
szorítkozni.
2.Drupal kézikönyv kezdőknek 27. oldal

13. ábra: Oldal beküldése vizuális szerkesztővel

Előnézet
Előnézet kérése esetén megtekinthetjük (14. ábra), milyen lesz az oldalunk, ha véglege-
sen beküldjük. (Ha most kilépnénk a szerkesztési oldalról, és nem a Beküldés gombra
kattintanánk, akkor az eddig bevitt tartalom elveszne.)

14. ábra: Tartalom beküldése közben előnézet


28. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

Az oldal Bevezető előnézete tipikusan akkor fog szerephez jutni, ha az éppen beküldés
alatt álló tartalom a kezdőoldalon is megjelenő hír lesz. Általában a Teljes tartalom elő-
nézetével kell elsősorban foglalkoznunk.
Itt még szükség esetén módosíthatjuk az oldal tartalmát, majd ha kész vagyunk, Bekül-
dés. Ezután a tartalmunk kész.

További információk megadása


Bizonyos esetben a címen és a törzsön kívül további információk megadására is van le-
hetőség. Néhány eset ezek közül:
Fórum téma beküldése esetén kiválaszthatjuk, hogy melyik fórumhoz tartozzon:

15. ábra: Fórum téma beküldése

Bizonyos esetekben (tipikusan hírek esetén) megadhatunk egy vagy több kulcsszót,
amellyel a tartalom témáját jelöljük. A kulcsszavakat (még pontosabban kulcskifeje-
zéseket, mivel több szavasak is lehetnek) vesszővel kell egymástól elválasztani.

16. ábra: Tartalom beküldése témamegjelöléssel

Az így beküldött tartalmak esetén megjelennek a témák is:


2.Drupal kézikönyv kezdőknek 29. oldal

17. ábra: Tartalom a témák listájával

A téma felirata linkként is működik, rákattintva a témához tartozó tartalmak listája ér-
hető el.
Egyes esetekben (tartalomtípustól és jogosultságoktól függően) a tartalom melléklete-
ként csatolt állományok is alkalmazhatók. (A melléklet állományokra nézve méret- és
típuskorlátozás lehet érvényben.)

18. ábra: Csatolt állomány feltöltése

Az állomány helyét és nevét a Tallózás gombbal adhatjuk meg. A Csatol gomb elvégzi a
tényleges feltöltést, majd Leírást adhatunk meg, ami a fájlnév helyett lesz látható.

19. ábra: Csatolt állomány feltöltése után leírást adhatunk meg

Megjegyzés: egyenlőre nem foglalkozunk azzal a kérdéssel, hogy az adott oldal hol (pl. milyen menü-
pontban) lesz elérhető a honlapunkon.

2.2.2 Tartalom szerkesztés, törlés


Ha később visszalátogatunk az előzőleg létrehozott oldalunkra, akkor az oldal címe mel-
lett az aktuális Megtekintés fül mellett a Szerkesztés fület is megfigyelhetjük:
30. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

20. ábra: Megjelent a Szerkesztés fül

A Szerkesztés fülön a beküldéshez hasonlóan módosítani vagy akár törölni tudjuk a tar-
talmunkat.
Figyelem! A tartalom törlése nem visszavonható művelet!

2.3. Ellenőrző kérdések


● Melyik a http://drupal.hu honlap legaktívabb része?
● Hogyan definiálná a tartalomkezelő rendszer fogalmát?
● Mikor és miért szükséges a látogatók azonosítása?
● Mi a regisztráció célja?
● Hogyan történik a felhasználó regisztrációja?
● Miért kell a regisztrált felhasználó e-mail címét tárolnunk?
● Mi az adminisztrátor joga/feladata?
● Hogyan történik a bejelentkezés?
● Mi a bejelentkezés következménye?
● Mit értünk tartalom beküldés alatt?
● Mi az előnye, ha tartalom beküldésekor vizuális szerkesztőt használatunk?
● Tartalom beküldésekor miért érdemes megnéznünk az előnézetet?

2.4. Feladatok
● Ha eddig még nem tette meg, regisztráljon a GAMF honlapján.
● Figyelje meg, milyen plusz szolgáltatásokat érhet el bejelentkezés után!
● Keressen egy tetszőleges Drupal oldalt a http://drupal.hu/linkek/cimkek oldalon,
majd ott is regisztráljon, és próbálja ki az alapszolgáltatásokat!
3.A honlap megtervezése 31. oldal

3. A honlap megtervezése
Mielőtt egy honlap kivitelezésébe belekezdenénk, érdemes minél alaposabban megter-
vezni azt. Képzeljük el, mi lenne, ha egy felhőkarcoló építésébe tervrajzok és előzetes
(például statikai) számítások nélkül kezdenénk bele. Egy rossz honlap esetén ugyan nem
lesznek emberáldozatok, de a célját biztosan nem fogja betölteni, és végső soron jelentős
anyagi kárt okozhat.

3.1. Interjú kérdések


A szerző a megrendelővel való kommunikációt egy interjú formájában javasolja kez-
deni, a következő kérdésekkel.
A kérdésekre adott válaszok között persze nagy lehet az átfedés, az interjú célja az el-
érendő célok teljes körű feltérképezése. (Egy konkrét esetben tehát bizonyos kérdése-
ket ki is hagyhatunk, ha azok feleslegesnek, értelmetlennek tűnnek.)
Természetesen a kérdések akkor is alkalmazhatók, ha a saját vagy cégünk honlapját sze-
retnénk megvalósítani.

3.1.1 Mi a célunk a honlappal?


Legelőször tisztáznunk kell, mi a célunk a honlappal, mit akarunk elérni a segítségével.
Egy céges oldal esetén általában a következők szoktak megfogalmazódni:
● Bemutatkozás: kik vagyunk
● Tevékenység: mit kínálunk (termékek, szolgálatatások)
● Elérhetőség, kapcsolatfelvétel
Közösségi oldalnál a kommunikáció megvalósítása szokott a középpontban megjelenni,
míg blog oldalnál a célok között szerepelhet pl. a szakértői tekintély megszerzése.
Fogalmazzuk meg tehát egyetlen mondatban, mi a cél.

3.1.2 Kik lesznek a látogatóink?


Tartalomközpontú oldalak esetén olvasóként tekintünk a látogatóinkra.
A szolgáltatások, termékek eladásával kapcsolatban érdeklődőként, potenciális vagy
tényleges vevőként közelítjük meg a látogatókat. Cél lehet a látogatók törzsvevővé való
„fejlesztése” is.
Ha a látogatóknak interakciós lehetőségeket is nyújtani szeretnénk, akkor a közösségi
tartalmat előállító szerzőként is tekinthetünk rájuk.

3.1.3 Mit szeretnénk bemutatni?


Ez a kérdés elsősorban a honlapra kerülő információtömeg struktúráját próbálja felderí-
teni. Szakmai megfogalmazásban akár adatbázis-tervezésnek25 is mondhatjuk.

25
A szerző véleménye szerint ekkor az ún. egyed-kapcsolat diagramm alkalmazása a legmegfelelőbb.
32. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

A hangsúly tehát a struktúrán van: milyen tartalmaink lesznek, és milyen kapcsolatok


lesznek közöttük.
Információ-központú oldal esetén (mint amilyen például a GAMF honlapja) erősen
megjelenhet a cég/intézmény struktúrája, bár ez nem mindig célravezető. Fontos, hogy
elsősorban a látogatók fejével, az ő igényeiket „kitalálva” tervezzünk.
Céges oldal esetén a termékek, szolgálatatások lesznek a középpontban. Ekkor a látoga-
tók legfontosabb igénye a korrekt és részletes információközlés, sőt on-line vásárlás, te-
hát ezt kell a végletekig kiszolgálnunk. Ugyanakkor a cég belső struktúrája a látogatók
domináns részét nem érdekli, így semmiképpen sem szabad például az egyes vezetők,
részlegek bemutatását központi szerepbe állítani.

3.1.4 Mik a kulcsfontosságú funkciók?


Egy honlap funkciói alatt azt értjük, hogy milyen típusfeladatokat kell megoldania.
Az információk közlése legtöbbször szükséges funkció. Ehhez persze áttekinthető
struktúra és többféle navigációs lehetőség, legelőször is „szabad szavas” keresési funkció
jár. Persze minél többféle igényt kielégítő alternatív navigációs funkciókra is érdemes
gondolni, például a címkék (tagok) alkalmazására.
Speciálisabb igény a közösségi tartalom-előállítás, aminek hagyományos eszközei a fó-
rumok, hozzászólási lehetőségek biztosítása.
A válasz második szintje akár egy konkrét funkciólista is lehet, pl.
● vendégek regisztrációja, beléptetése
● automatizált hírlevél rendszer
● webáruház
● kapcsolati űrlap
● egyéb információkérő űrlapok
● látogatottsági statisztika
● szavazás
● fórum
● multimédia (zene, kisfilm, interaktív animáció)
● hírlevél
● RSS csatornák
● stb.
Ilyen megközelítésben azonban érdemes azt is tisztáznunk a megrendelővel, hogy az
egyes funkciók alatt ki mit ért26.

3.1.5 Milyen visszajelzéseket várunk a látogatóinktól?


Nehéz elképzelni egy komoly honlapot visszajelzési lehetőség nélkül.

26
Hogy mennyire nem egyszerű a megrendelővel való kommunikáció, jól mutatja a következő hirdetés:
http://drupal.hu/node/3461. Itt a megrendelő 885 karakternyi információ alapján vár árajánlatot :-(
Sajnos ez a hozzáállás nem egyedi, gyakran előforduló eset.
3.A honlap megtervezése 33. oldal

Offline lehetőségek
A cég vagy személy megnevezése nélkül a honlap komolytalan lesz, hagyományos (pos-
tai) cím, vagy telefonszám megadás nélkül pedig hiteltelen.
Az e-mail cím megadása általánosnak tekinthető, de sokszor csak egy webmesteri elér-
hetőséget találunk. A látogatók bizalmát azzal építhetjük, ha szituációkhoz/feladatokhoz
kapcsolódó választékot nyújtunk, például megrendelés, reklamáció, webmester és cégve-
zető címet adunk meg. Szituációfüggő ugyan, de a cég alkalmazottainak személyenkénti
elérhetősége sokszor nem célravezető, hiszen a látogatót nem az érdekli, hogy ki a vezér-
igazgató-helyettes, hanem a kérdését/problémáját szeretné kielégítően lerendezni.
Technikai oldalról érdemes azt is átgondolni, hogy nem jó megoldás az e-mail címet köz-
vetlenül a honlapon (a spam robotok számára elérhető módon) megjeleníteni. Ehelyett
egyre gyakrabban kapcsolatfelvételi űrlapot (21. ábra) szokás a honlapra elhelyezni.

21. ábra: Kapcsolatfelvétei űrlap

Online lehetőségek
Klasszikus visszajelzési lehetőségek közé tartozik a hozzászólási lehetőség, és bizonyos
esetekben a fórum vagy vendégkönyv is. Ma már azonban ennél sokkal több lehetősé-
günk van.
Sok látogató nem fogja a fáradságot venni, hogy hosszú szöveges válasz formájában rea-
gáljon a honlapra. (A szerző tapasztalatai szerint ezt a látogatóknak csak néhány százalé-
ka teszi meg.) Ennél sokkal kevesebb befektetést igénylő, ugyanakkor mégis hasznos in-
formációkkal szolgáló lehetőség a szavazás. (Itt komoly ösztönző tényező lehet, hogy a
szavazat „leadása” után szokás egy szavazási állást is megmutatni.)
A szavazás egy speciális esete az értékelés. Bizonyos közösségi oldalak központi szolgál-
tatása a látogatók által egy skálán, valamint szövegesen is értékelt áru/termék.
Tapasztalatok szerint a látogatók örömmel vesznek részt a tartalom előállításában aján-
lók beküldésével.
34. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

3.1.6 Részt vesznek-e a látogatóink a tartalom előállításában?


Az előbb említett ajánló „klasszikus” esete a link ajánlat beküldése.
Megfelelő motivációval (például pontrendszer; a „hónap dolgozója” mintájára a hónap
fórumozója) azonban a látogatók aktív részvételre ösztönözhetők.

3.1.7 Miben fog a tartalom és a szolgáltatás fejlődni (pl. 1 hó-


nap, 1 év múlva)?
Ennek a kérdésnek elsősorban az a célja, hogy az esetleges jövőbeli továbbfejlesztések
időben kiderüljenek. Itt is találó példát vehetünk az építőiparból: a több ütemben való
építkezés esetén is meg kell terveznünk az egész épületet, még ha nem is olyan részletes-
séggel, mint az első ütemet. Fontos tehát, hogy a perspektívát is alaposan felmérjük.

3.1.8 Ki fogja az oldalt karbantartani?


Nap mint nap könnyedén bukkanhatunk olyan céges weboldalakra, amelyeken jól lát-
szik a több-kevesebb gondossággal és több-kevesebb anyagi ráfordítással egyszer elké-
szített weboldal, de ugyanakkor süt a folyamatos karbantartás, aktualizálás hiánya27.
Az ilyen oldalak esetén a látogató hamar lemond a cégről is, amelyben nincs annyi igé-
nyesség, sőt előzékenység a látogatók felé, hogy a Friss hírek oldala ne egy hónapokkal
(évekkel?!) azelőtt lejárt érvényességű témával kezdődjön.
A honlapok magára maradásának egyik jellemző oka, hogy nincs a honlapon megjelenő
hírekért felelőssé tett ember, esetleg maga a honlap is alkalmatlan a laikus (nem webfej-
lesztő) felhasználók által való aktualizálásra. Tisztáznunk kell tehát, hogy a honlap mely
részeinek kell változtathatónak lenni, mely részeit és ki fogja karbantartani.

3.1.9 Milyen csoportos és személyes jogosultsági körökre lesz


szükség?
A jogosultsági köröket két részre kell bontanunk. A honlap látogatói és üzemeltetői alap-
vetően más célból fogják az oldalt felkeresni.
A látogatók esetén a legtipikusabb használati esetek:
● tartalmak megtekintése
● hozzászólások megtekintése,
● hozzászólás lehetősége
● fórum téma létrehozása
Mindezen esetekre minimálisan el kell dönteni, hogy regisztráció nélkül vagy csak re-
gisztráció és belépés után engedélyezzük. Esetleg a regisztrált látogatók jogait alcsopor-
tonként finomíthatjuk.
Üzemeltetők esetén tipikus feladatok (az elnevezések ettől eltérők is lehetnek):
● moderátor: a hozzászólások, fórumok felügyelete

27
A web hőskorától Utolsó módosítás : ... feliratokkal próbálták a fejlesztők / tulajdonosok bizonygatni az
oldal információtartalmának frissességét. Ma már csak kevés helyen találkozunk ezzel a nem sokat mondó
formulával, hiszen az esetek döntő többségében az oldal karbantartottsága könnyedén látható.
3.A honlap megtervezése 35. oldal

● hírszerkesztő: hírek beküldése, saját hírek szerkesztése


● szerkesztő: saját statikus oldalak szerkesztése, oldalak létrehozása
● adminisztrátor: majdnem28 mindent megtehet, amit a tartalomkezelő rendszer
megenged, pédául minden tartalmat szerkeszthet, felhasználói jogosultágokat
oszthat ki, stb.

3.1.10 Hol és hogyan szeretnék a honlapot az interneten „reklá-


mozni”?
A honlapunk kapcsolatok (linkek) nélkül lényegében elérhetetlen lesz a potenciális láto-
gatók számára. Ezért elemi érdekünk, hogy jó minőségű, tartalmilag releváns oldalakon
próbáljunk a honlapunkra mutató linkeket elhelyeztetni.
Ehhez először is össze kell gyűjteni ezeket az oldalakat. Az összegyűjtött oldalakat a saját
honlapunkon is érdemes elhelyezni, pl. Ajánlott oldalak címmel. Ennek két oka:
● Egy honlap értékét növeli a témához kapcsolódó minőségi oldalak link gyűjtemé-
nye.
● A másik oldal szerkesztőjét eleve azzal illik/érdemes megkeresni, hogy mi már ki-
tettük a linket, csak viszonzást szeretnénk kérni.

3.1.11 Látogatottsági statisztikákat szeretnének-e megismerni?


Igazából ez egy költői kérdés. Célja, hogy a megrendelő átgondolja: mennyire fontos in-
formációk nyerhetők ki a honlap látogatottsági statisztikáiból.
(Megjegyzés: az oldallátogatási statisztikák többsége nem túl sok információt nyújt. Iga-
zán komoly eredményekhez speciális szoftver és speciális tudású szakember szükséges.)

A honlaptervezés következő lépését később (9. fejezet) tesszük meg.

3.2. Ellenőrző kérdések


● Miért érdemes a honlap fejlesztése előtt tervezni?
● Mit tart a legfontosabb tervezési kérdésnek a honlap fejlesztése előtt?
● Kik a GAMF honlap látogatói csoportjai?
● Mit értünk egy honlap funkciói alatt?
● Mik a céges weboldalak tipikus funkciói?
● Mik a közösségi oldalak tipikus funkciói?
● Mik a blog oldalak tipikus funkciói?
● Milyen visszajelzésekre lehet szükség weboldalak esetén?

28
A szerző véleménye szerint mindenkinek csak annyi jogot szabad adni az oldalhoz, ami elengedhetetle-
nül szükséges. Éppen ezért még az „adminisztrátor” sem feltétlenül kell, hogy mindent megtehessen. Pél-
dául egy céges oldal esetén a fejlesztő (egyeztetve a megrendelővel) kialakítja a látogatók jogosultságrend-
szerét. Ezt jó eséllyel soha nem kell megváltoztatni, ezért felesleges a téves használat kockázatát felvállalva
az oldal tulajdonosának ezeket a jogokat átadni.
36. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

● Miért fontos, hogy egy honlapnak legyen karbantartója?


● Soroljon fel legalább 5-féle tipikus felhasználói feladatkört!

3.3. Feladatok
● Válasszon ki 2-3-at kedvenc weboldalai közül (lehetőleg ne egy összetett portált),
és próbáljon a fenti kérdésekre válaszolni, mintha most kellene a weboldalt meg-
terveznie. Valószínűleg nem fog tudni minden kérdésre válaszolni, de ez nem is
baj.
● Találjon ki és tervezzen meg egy még nem létező weblapot a fenti kérdések meg-
válaszolásával. Lehet saját weblap, saját blog, rajongói (közösségi) oldal, ismerős/
családtag, vagy akár „fantom” cég honlapja is.
4.Telepítés előtt 37. oldal

4. Telepítés előtt
Előismeretként szükséges, hogy áttekintsük a web működésének alapjait.

4.1. A web működése


A következő ábra sokat segíthet a további információk megértésében.

22. ábra: A kliens-szerver architektúra

A felhasználó, aki a web szolgáltatásait ki akarja használni, megteheti ezt egy tetszőle-
ges modern webböngészővel. (E két „szereplőt” együttesen a kliens oldalnak tekint-
jük.)
A felhasználó a böngészőt használva kezdeményezheti egyes weboldalak letöltését. A
web kezdeti időszakában a webszerver ugyanazokat az állományokat tudta kiszolgálni,
amiket a háttértárain elhelyeztek. (Ez tulajdonképpen statikus tartalmat eredményez,
vagyis az ilyen tartalom alapvetően nem változik.)
Bizonyos esetekben ez ma is így van: például egy honlapba illesztett kép nem fog meg-
változni, akárhányszor töltjük is le, ezért a webszervernek a böngésző kérésére mindösz-
sze vissza kell adni azt válaszul.
Később azonban egyre nagyobb igény lett a dinamikus tartalmak iránt, amikor a tar-
talom már a látogató tevékenységei, vagy más okok miatt színesebb, változóbb lehet. Eb-
ben az esetben a webszerver nem önmaga válaszol a böngésző kérésére, hanem (leggyak-
rabban29) PHP nyelvű program állítja elő a választ, amit a webszerver csak továbbít.
Tovább növelheti az oldal dinamizmusát, ha a tartalmak előállításához szükséges adato-
kat (legalább részben) adatbázisban tároljuk. Ekkor a PHP nyelvű forrásprogram az
adatbázis-szerverrel kapcsolatot épít fel, és adatbázisból származó információkat is fel-
használ a válasz elkészítéséhez.

29
Mivel jegyzetünk elsősorban a Drupalt ismerteti meg, ezért a szerver felépítését is a Drupalt kiszolgáló
konfigurációra specializáljuk. Más tartalomkezelő-rendszerek jelentősen eltérő konfigurációt igényelhet-
nek.
38. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

4.2. Alapvető hardver és szoftver szükségletek


A jelenleg forgalmazott webtárhelyek többsége megfelel a Drupal 6.x verzió30 futtatása
alapvető követelményeinek. (Az ingyenes tárhelyek eset általában ez nem mondható el:
kisebb nagyobb nehézségekbe a legtöbb szolgáltatónál ütközhetünk.) Ezen kívül akár a
saját Windows vagy más operációs rendszerrel meghajtott PC-nken is letesztelhető.
(Lásd Web programozás jegyzet31).

Szerver
A minimális követelmények tehát (lsd. 22.ábra):
● webszerver (Apache vagy IIS)
● PHP 5
● adatbázis-szerver (MySQL vagy PostgreSQL)
Nem nélkülözhetetlen, de ajánlott:
● mod-rewrite, .htaccess támogatás
● cron támogatás
PHP konfigurációs követelmények:
● memória limit: 32Mb
● feltöltési méret: amekkorát a honlap célja megkövetel
● levélküldés
● GD library

Kliens
A munka nagy része a böngésző használatával fog zajlani. Itt is meg kell említeni, hogy a
szerző (és sok más webfejlesztő) véleménye szerint ehhez az ingyenes Firefox32 a leg-
jobb választás.
Ezen kívül néha szükség lesz valamilyen FTP kliensre az állományok szerverre feltöltésé-
hez. Erre a célra tökéletesen meg fog felelni a méltán népszerű Total Commander33.
(A webszerver és a PHP értelmező által elérhető helyre kell juttatni a Drupal forráskód-
ját és kiegészítő állományait.)

4.3. A Drupal felépítése


Drupal oldalunk építésekor a CMS motor központi mag része (core) és a kiegészítők kö-
zött különbséget kell tennünk.

30
Jelenleg a 6.2-es a legfrissebb elérhető stabil verzió. A 6.x megnevezés arra utal, hogy a 6-os sorozat
bármelyik tagjára lehet gondolni, bár általában a legfrissebb stabil verziót érdemes használni.
31
http://nagygusztav.hu/?q=web_programozas_jegyzet
32
http://firefox.hu
33
http://totalcommander.hu
4.Telepítés előtt 39. oldal

Drupal Motor
A Drupal alapfunkcionalitásait megvalósító alkalmazás. Már önmagában is rendkívül
sok szolgáltatással bír, mégis alapvetően az a feladata, hogy a különböző funkciókat ha-
tékonyan fogja össze. Garantált, hogy az itt található kódok alaposan teszteltek, az ese-
tek döntő többségében korrektek és használhatóak, valamint a Drupal alapkoncepciójá-
hoz illeszkednek.

Kiegészítők
A Drupal közösség által beküldött kiegészítő funkcionalitások (modulok), megjelenések
(sminkek), felület fordítások és dokumentációk itt találhatóak. Jellegénél fogva nincs
olyan erős irányítás alatt, mint a motor, ezért nem feltétlenül csak tökéletesen működő
komponenseket találhatunk itt.
Másrészt tudnunk kell, hogy a fejlesztők (mind a mag, mind a kiegészítők esetén) meg-
különböztetnek stabil és fejlesztői (dev jelöléssel ellátott) változatot. Az utóbbiakat csak
óvatosan, nagy körültekintéssel szabad használni. (Tanuláshoz tehát minden további
nélkül alkalmazhatók, de éles környezetben inkább korábbi, stabil változatot használ-
junk.)

4.4. Szerver kialakítása


A Drupal tartalomkezelő a telepítést és a frissítést lehetővé tevő grafikus telepítővel
rendelkezik. Ennek működéséhez azonban célszerű egy megfelelő környezetet összeállí-
tanunk, amely a Drupal számára a lehető legjobb futási feltételeket biztosítja.
Egyáltalán nem mindegy, hogy a Drupal telepítését a saját, szerverré kinevezett gé-
pünkön (un. localhost-on) akarjuk végrehajtani, vagy egy tárhelyszolgáltatónál.
Előbbi esetben (megfelelő szakértelemmel) gyors hatást tudunk gyakorolni a rendszerre,
a szükséges beállításokat hamar el tudjuk végezni. Utóbbi esetben viszont lehet olyan
szerencsénk, hogy a beállítások megfelelnek a telepítéshez, és így akár könnyebb dol-
gunk is lehet; előfordulhat azonban, hogy a rendszergazdával kell egyeztetnünk bizonyos
módosítások érdekében.
Tanuláshoz (először) az első eset ajánlható. Nézzük meg, hogyan kezdjünk neki!

4.4.1 Az XAMPP integrált telepítő csomag


Mivel a szerver alkalmazások önálló telepítése nem mindig egyszerű feladat, próbálkoz-
hatunk előre csomagolt, és minden szükséges alkalmazást telepítő és bekonfiguráló
programokkal is. Ezek közül csak egyet nézünk meg közelebbről, a többi alkalmazása
hasonló. A szolgáltatások körében lehetnek jelentősebb eltérések is.
A szerző által leginkább ajánlott csomag az XAMPP34. Ennek segítségével ki tudunk ala-
kítani egy a Drupal számára megfelelő futtatókörnyezetet (szervert).
A letöltött telepítőprogram lényegében a telepítéskor szokásos kérdéseket teszi fel. Leg-
fontosabb a telepítés helye:

34
http://www.apachefriends.org/
40. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

23. ábra: A telepítés helye

A telepítés után a Start menüből és parancssorból is vezérelhetjük az alkalmazásokat, de


legegyszerűbb az XAMPP Control Panel alkalmazása. Az ábrán látható, hogy az Apache
és a MySQL futtatását kell kezdeményeznünk:

24. ábra: XAMPP Control Panel

A telepítés után a feltelepült rendszer kipróbálása és a MySQL jelszó megadása célszerű


a Security oldalon. Gépeljük be a böngészőnk cím sorába a localhost elérési útvonalat.
4.Telepítés előtt 41. oldal

25. ábra: MySQL jelszó megadása

Adjuk meg a MySQL root nevű felhasználójának (általunk kitalált) jelszavát. Ha nem
változtatjuk meg, akkor marad az üres jelszó.
Érdemes még megemlíteni, hogy a webszerver a telepítéskor megadott könyvtáron (23.
ábra) belül létrejött az xampp/htdocs alkönyvtár. E könyvtár tartalmát tekintjük a web-
szerver dokumentum-könyvtárának, vagyis (elsősorban) e könyvtár tartalmát tudja a
webszerver statikus vagy dinamikus módon kiszolgálni.

26. ábra: Az xampp\htdocs könyvtár telepítés után

A Drupal kipróbálásához itt érdemes például egy drupal nevű alkönyvtárat létrehozni.
42. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

4.4.2 Letöltés
A http://drupal.hu oldalról le kell töltenünk a Drupal alap és a nyelvi csomag legfris-
sebb verzióit35:

27. ábra: A telepítőcsomag letöltése

A letöltött állományok .tar.gz kiterjesztésétől nem kell megijedni: Total Commanderrel


lényegében ugyanolyan egyszerűen kezelhető tömörített formátum, mint a jól
ismert .zip.

4.4.3 Kitömörítés localhost-ra


Ha a saját gépünket szerverré alakítottuk, akkor a htdocs alkönyvtárban korábban (26.
ábra) létrehozott drupal alkönyvtárba fogjuk bemásolni a tömörített állomány tartal-
mát. Keressük meg tehát Total Commanderrel az alkönyvtárunkat.
A másik panelben keressük meg a letöltött állományunkat, lépjünk bele a tömörített ál-
lományba kétszer, majd az alkönyvtárba is, jelöljük ki a fájlokat és alkönyvtárakat, majd
másoljuk át azokat a htdocs/drupal alkönyvtárunkba. Végeredményként ehhez hasonlót
kell látnunk:

28. ábra: Kitömörítés után


35
2008 nyarán ez a 6.4-es verziót (drupal-6.4.tar.gz) és az 6.x-es fordítást (hu-6.x-1.0.tar.gz) jelentette.
4.Telepítés előtt 43. oldal

Ugyanebbe a könyvtárba kell kitömörítenünk a magyar fordításban kapott fájlokat is.


A magyar csomag úgy van kialakítva, hogy egyrészt a meglévő Drupal könyvtárrendszer-
be helyezi saját fájljait, másrészt egy új telepítési profilt is ad a rendszerhez.
Gondoskodjunk arról, hogy a magyar fordítás csomag tartalmát is a Drupal könyvtá-
rába másoljuk. A tömörített fájl paneljén keressük meg a fordítás állományát is, és
ugyanide másoljuk át a három könyvtárt:

29. ábra: Nyelvi fájlok kitömörítése

Ennek eredményeképpen egy olyan könyvtár rendszert kell kapnunk, amelyben a Dru-
pal alapcsomagjának könyvtárai és fájljai mellett a magyar csomagban érkezett autolo-
cale modulnak is meg kell jelennie. A továbbiakban az itt látható (webről elérhető)
könyvtárat nevezzük Drupal könyvtárunknak.

4.4.4 Fájlok feltöltése távoli szerverre


E megoldás elsősorban akkor javasolható, ha a saját gépen beüzemelt Drupal működte-
tésében bizonyos gyakorlatot szerzünk. Legelső alkalommal inkább az előző megol-
dást érdemes kipróbálni.
Szükségünk lesz egy FTP programra, amivel a fájlokat fel tudjuk tölteni a szerverre. Ez
nem probléma, a Total Commander el tudja látni az FTP kliens feladatát.
(Mivel minden szolgáltató más és más adminisztrációs felületet alkalmaz, és a kapcsoló-
dási információkat is máshogyan közli, ezért itt csupán illusztrációs példákat tudunk kö-
zölni.)
A Total Commanderben először is létre kell hoznunk egy FTP kapcsolatot. (Ezt ké-
sőbb többször is használhatjuk, de most egyszer létre kell hoznunk.) Ehhez keressük
meg az eszköztár FTP gombját. A felugró ablakon hozzunk létre új kapcsolatot:
44. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

30. ábra: Új FTP kapcsolat létrehozása

Kapcsolat neveként bármit megadhatunk, ez a kapcsolatok közötti későbbi eligazodá-


sunkat segíti. A kiszolgáló neve, felhasználói név és jelszó a regisztrációkor/szerződéskö-
téskor válik elérhetővé.
Példaként nézzük meg az Extra Technikai beállítások36 oldalát:

31. ábra: Az Extra FTP kapcsolatának adatai

A CWI esetén az Információk37 oldal mutatja a kiszolgáló nevét, a felhasználónév és jel-


szó pedig a regisztrációkor megadott.

36
http://extra.hu/front/techfaq
37
http://cwi.hu/admin/informaciok
4.Telepítés előtt 45. oldal

32. ábra: A CWI kapcsolat alapadatai

Más szolgáltatók esetén is hasonló adatokat kell keresnünk.


Ha sikeresen beállítottuk az FTP kapcsolatunkat, akkor a Kapcsolódás gombbal felépít-
hetjük az FTP kapcsolatot, és másolhatjuk is az állományainkat a szerverre.

Ingyenes szolgáltatók használata


Érdemes ismét felhívni a figyelmet arra, hogy az ingyenes szolgáltatók többnyire erő-
sen korlátozott színvonalú szolgáltatást nyújtanak. Ráadásul minden szolgáltató ese-
tén más-más problémák lehetnek.
Jellemző probléma, hogy a rejtett fájlokat nem mindig mutatják ezek a programok, és a
.htaccess ilyennek minősül. Ezért külön figyeljünk arra oda, hogy ezt is sikerült-e feltöl-
tenünk.
Sajnos az ingyenes szolgáltatók nagy része ezt nem engedi, ott nem fogjuk tudni ezt a
fájlt feltölteni.
Érdekes a helyzet az Extrán. A .htaccess fájlt ugyan engedi feltölteni, de a Drupal műkö-
déséhez szükséges további funkciók már nem elérhetőek. Ráadásul a Total Commander-
rel nem is látjuk a zavart okozó rejtett fájlokat, így törölni se tudjuk azokat. Ezért az Ext-
ra esetén a .htaccess fájlokat nem szabad feltölteni. Ha esetleg mégis megtennénk, a
31. ábrán látható Webes FTP kliens programunkat itt érheted el linket követve törölhet-
jük az állományt.

33. ábra: Webes FTP felület az Extrán


46. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

További problémák fordulhatnak elő működés közben, amivel egyes rész-szolgáltatások


használhatatlanok lesznek.

Jogosultságok beállítása
A telepítés során szükség lesz arra, hogy a sites alkönyvtárat a webszervert futtató fel-
használó írni tudja. Ha ez nem teljesül, a telepítés nem lesz sikeres. Legkésőbb a telepí-
téskor értesülünk arról, ha nem megfelelőek a beállításaink (34. ábra).

34. ábra : Írási jogosultság probléma

4.4.5 Az adatbázis előkészítése


Amennyiben saját gépünket használjuk szerverként, mindenképpen létre kell hoz-
nunk a Drupal számára egy adatbázist.
E művelet az XAMPP részeként feltelepülő phpMyAdmin segítségével könnyedén meg-
oldható. Adjuk meg az adatbázis nevét, és hozzuk létre az adatbázist:
4.Telepítés előtt 47. oldal

35. ábra: Adatbázis létrehozása

Az adatbázishoz a root nevű felhasználó jelszó nélkül hozzáférhet, ha a telepítés után


nem adtunk meg jelszót.
Ha szolgáltatónk biztosítja számunkra az adatbázist, akkor a szolgáltatótól kell meg-
tudnunk a használható adatbázis nevét, illetve a műveletek végzésére jogosult felhaszná-
ló nevét és jelszavát.
Extra esetén az FTP kapcsolat oldalán (31. ábra) találhatjuk meg az adatbázis adatait,
CWI esetén a MySQL menüpontban aktiválhatjuk az adatbázisunkat.

4.5. Ellenőrző kérdések


● Mik a Drupal használatának szoftver követelményei a kliens oldalon?
● Mik a Drupal használatának szoftver követelményei a szerver oldalon?
● Hogyan tudunk legegyszerűbben meggyőződni arról, hogy a saját számítógépün-
kön fut-e webszerver?
● Lehet-e adatbázis-kezelő rendszer nélkül Drupalt működtetni? Indokolja!
● Mit értünk a Drupal magja (Drupal core) alatt?
● Írjon két példát Drupal kiegészítőre!
● Mit jelent a dev megnevezés egy telepítőcsomag nevében? Mikor érdemes alkal-
mazni a dev csomagokat?

4.6. Feladatok
● Ha van lehetősége, alakítson ki saját számítógépén szerver környezetet.
● Regisztráljon valamelyik ingyenes tárhelyszolgáltatónál, és készítse elő telepítésre
a tárhelyét.
48. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

5. Telepítés
Miután előkészítettük a fájlrendszert és az adatbázis-rendszert, már csak a webes telepí-
tőt kell futtatnunk, amely beállítja a Drupal számára a használt adatbázist, felhasználót,
illetve létrehozza az alapértelmezésben alkalmazott adatbázis-szerkezetet. Ennek elindí-
tásához látogassunk el webböngészőnkkel a http://example.com/drupal/install.php
címre, ahol a http://example.com/drupal/ az a hoszt illetve könyvtár webszerveren el-
érhető címe, ahova a fájlokat előkészítettük. (Saját gépünk esetén például localhost vagy
localhost/drupal lesz a szerver címe.)

5.1. Nyelv választás


Ha a magyar nyelvi fájlokat is felmásoltuk, akkor most egy nyelvválasztó képernyő fogad
bennünket angol nyelven (36. ábra).

36. ábra: Nyelv választás

Innentől kezdve magyarul szól hozzánk a telepítő. Ha valamit elrontottunk az előkészí-


tésben (például nem írható a telepítő számára a sites alkönyvtár), akkor itt fog figyel-
meztetni (34. ábra) bennünket arra, hogy addig nem folytathatjuk a telepítést, amíg a hi-
bát el nem hárítjuk.

5.2. Adatbázis-kapcsolat
A korábban ismertetett lépéseket követve azonnal az adatbázis-beállító képernyőt kell
kapnunk (37. ábra).
Itt alapértelmezésben csak a felső űrlapelem csoport látható, az alsót (Haladó beállítá-
sok) nekünk kell lenyitnunk, ha a számunkra fontos adatokat csak ott tudjuk beállítani.
Sok webszerveren az aktuális gépen (localhost) találjuk az adatbázis kiszolgálót is (a
szolgáltató adja meg a pontos információkat), és nem használunk speciális portot vagy
táblázat név előtagokat. (Ez utóbbit akkor célszerű alkalmazni, ha az adatbázisunkat
más célra is szeretnénk használni.)
Ilyenkor a haladó beállításokkal nem kell törődni, csak a használt adatbázis típust, adat-
bázis nevet, felhasználói nevet és jelszót kell megadni a korábban beállított vagy a szol-
gáltatótól kapott adatok szerint.
5.Telepítés 49. oldal

37. ábra: Adatbázis beállítás

Továbblépve a rendszer megpróbálja ellenőrizni, hogy minden szükséges adatbázis mű-


velet elvégezhető-e. Ha a telepítéshez elengedhetetlen műveletek valamelyikére a meg-
adott adatbázis felhasználó nem jogosult, vagy valamilyen adatot hibásan adtunk meg,
akkor erre figyelmeztet, és a hibát meg kell oldanunk. Ha azonban minden jól megy, ak-
kor a telepítő létrehozza az adatbázis tábláinkat, és a magyar nyelvű felülethez szükséges
szövegeket is az adatbázisba tölti.38

5.3. Webhely beállítása


A telepítő varázsló következő lépése sokrétű, de csak egyszer beállítandó információkat
vár a honlapról.

38
Ennek hátterében a magyar fejlesztésű autolocale modul áll.
50. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

Először is hibaüzenettel találkozhatunk (38. ábra), ha a webszervert futtató felhasználó-


nak nincs jogosultsága a sites alkönyvtár jogosultságainak állítására. Ekkor a hibát kéz-
zel kell orvosolnunk.

5.3.1 Webhely információk


A weboldal neve nemcsak az oldal felső részén, a logó mellett jelenik meg, hanem a bön-
gésző címsorában is.
Az email cím mezőben megadott cím fog feladóként szerepelni minden olyan levélben,
amelyet a rendszer küld (pl. regisztrációkor), ezért erre a címre fog válasz is érkezni a lá-
togatók részéről.

38. ábra: Webhely beállítása

5.3.2 Adminisztrátor felhasználó


Létre kell hoznunk egy felhasználót, amely a továbbiakban minden jogosultsággal ren-
delkezni fog a rendszer adminisztrációját illetően. Ez lesz az első számú felhasználó39.
Először a kívánt felhasználói nevet és email címünket kell megadnunk (39. ábra). A
megadott felhasználónév a belépéshez lesz szükséges, de a további látogatók is ezen a
néven fognak bennünket látni. (Itt érdemes hangsúlyozni, hogy a magyar helyesírás sza-
bályai szerint érdemes a nevünket leírni.) Az e-mail cím nem fog az oldalon publikusan
megjelenni, maga a Drupal rendszer küldhet rá fontos üzeneteket, vagy kapcsolati űrla-
pon keresztül feladott üzenetek lesznek erre a címre elküldve.
A jelszó megadásánál egyből értékelést is kaphatunk a jelszavunk „erősségét” illetően.
(Érdemes a lehető leginkább követni az olvasható információkat, hiszen egy Drupal
rendszer esetén az adminisztrátor jelszava a honlap feletti teljes hatalmat jelenti.)

39
Adatbázis-szinten is ő az 1-es kódú felhasználó.
5.Telepítés 51. oldal

39. ábra: Adminisztrátor felhasználó

5.3.3 Webszerver beállítások


Az alapértelmezett időzónát a látogatóközönség zömének időzónája szerint érdemes be-
állítani (40. ábra).
Megjegyzés: Érdemes belegondolni, hogy a webszerver időzónája nem feltétlenül esik ezzel egybe, és az
egyes látogatók között is lehetnek eltérések.
A szerző által üzemeltetett egyik magyar nyelvű honlap látogatóinak közel 15%-a más időzónából böngé-
szik.
Ha a webszerverünk szolgáltatásai lehetővé teszik, érdemes a rövid webcímek használa-
tát engedélyezni. (Ennek célja a ?q= webcím résztől való megszabadulás.)
Ha nem tudjuk kiválasztani az Engedélyezett lehetőséget, a szolgálatatás megfelelő mű-
ködése érdekében a webszerver konfigurálásához kell nyúlnunk. (Ez jellemzően a rend-
szergazda feladata, és túlmutat a jelen jegyzet keretein is.).
Megjegyzés: E hiányossággal még tökéletes lesz a honlap működése, csak az útvonalaink lesznek kissé
zavaróak.
Végül a frissítési figyelmeztetéseket is érdemes bekapcsolva tartani, hogy az újabb, hiba-
javító verziók megjelenése esetén a hibákat egyből orvosolni is tudjuk.
52. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

Megjegyzés: Ez a szolgáltatás ingyenes tárhelyszolgáltatóknál többnyire nem elérhető.

40. ábra: Webszerver beállítások

A telepítés sikeresen befejeződött (41. ábra), most már a működő webhelyre léphetünk
(42. ábra).

41. ábra: A telepítés elkészült


5.Telepítés 53. oldal

42. ábra: A telepítés után

Az ábra bal oldalán a Navigáció nevű bal oldali menüblokk jelent meg, bár bejelentke-
zett felhasználóként a blokk címeként az azonosítónkat (az ábrákon Nagy Gusztáv) lát-
hatjuk. Itt érhetjük el a mostantól sokat használt Adminisztráció menüpontot és alme-
nüit.

5.4. Ellenőrző kérdések


● Mi annak az előfeltétele, hogy a Drupal már a telepítés közben is magyarul kom-
munikáljon?
● Honnan tudhatjuk, hogy a telepítés hiba nélkül megtörtént?
● Mikor és hogyan lehet adminisztrátor jogú felhasználót létrehozni?

5.5. Feladatok
● A saját számítógépén telepítse a Drupalt!
● Egy szolgáltatói tárhelyen telepítse a Drupalt!
● Hozzuk létre az adminisztrátor felhasználót!
● Jelentkezzünk ki, majd be!
● Változtassuk meg a jelszavunkat, majd ismét lépjünk ki és be!
54. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

6. Első lépések
A telepítés befejeztével elvégezhetjük azokat a lépéseket, amelyeket az oldalunk testre-
szabása érdekében teszünk.

6.1. Kezdeti problémák


Amikor megkíséreljük első alkalommal megtekinteni a webhely adminisztrációs oldalát,
biztosan egy piros dobozban írt figyelmeztetés fogad majd bennünket az oldal tetején
(43. ábra). Ez figyelmeztet arra, hogy még nincs minden rendben a Drupal webhelyünk
beállításával.

43. ábra: Adminisztráció oldal

Itt legalább egy, az időzített feladatokkal kapcsolatos hibát fogunk kapni (A cron nem
futott...), ami felhívja a figyelmünket, hogy nem állítottuk még be az időzített feladato-
kat. De ugyanitt kapunk figyelmeztetést akkor is, ha a korábbi lépésekben a beállítás
fájlt nem tettük újra írásvédetté, vagy a fájlok feltöltésére használt könyvtárat nem állí-
tottuk be. Ez a képernyő tulajdonképpen a Drupal környezetének megfelelőségéről ad
egy áttekintő jelentést számunkra.

6.1.1 Állapotjelentés
Nézzük először az Állapotjelentést. Valamilyen rendszerhiba esetén az adminisztrációs
oldal tetején kapunk egy figyelmeztetést (43. ábra).
Az állapotjelentés oldal a rendszer korrektül működő és hibás jellemzőire egyaránt rá-
mutat (44. ábra).
6.Első lépések 55. oldal

44. ábra: Állapot jelentés hibákkal

6.1.2 Fájlrendszer
Előfordulhat, hogy a fájlrendszerhez kapcsolódó hibaüzenetet kapunk a telepítéskor. Ek-
kor kattintsunk a felajánlott fájlrendszer beállítások linkre, és a megoldás már meg is
érkezik, amennyiben van joga könyvtárat létrehozni a webszervert futtató felhasználó-
nak (45. ábra). Amennyiben nincs, a korábban ismertetett módon „kézzel” kell azt létre-
hoznunk, és esetleg a jogokat beállítanunk40.

40
Különösen ingyenes szolgáltatóknál gyakori, hogy e kézi beállításokra sincs jogosultságun. De ha fizetős
szolgáltatónál fordul elő, akkor kérni kell az ügyfélszolgálaton, hogy „a webszerver ugyanazon felhasználó
nevében fusson, mint az FTP-n bejelentkező tulajdonos”.
56. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

45. ábra: Fájlrendszer beállításai

Be kell állíthatjuk az ideiglenes fájlok könyvtárát is. Ez az a hely, ahova a feltöltött fájlok
kerülnek az előnézet során, és szintén írhatónak kell lennie a webszerver számára.
(Linux alatt erre a célra a /tmp könyvtár szolgál: a könyvtár tartalmát bármikor, indok
nélkül törölheti pl. a rendszergazda.)
Végül választhatunk a nyilvános vagy a privát letöltési mód között. Figyelem: ezt a beál-
lítást a rendszer működése közben (ha már csatoltunk állományt valamelyik tartalom-
hoz) nem célszerű megváltoztatni, mivel ennek módosítása problémákat okozhat. Privát
módot akkor érdemes választani, ha bármilyen letöltendő állománynál esetleg elő fog
fordulni, hogy nem mindenki számára szeretnénk elérhetővé tenni, vagy épp a letöltések
számát szeretnénk megtudni. Ha egyik ok miatt sem szükséges módosítanunk, hagyhat-
juk a nyilvános beállítást.

6.1.3 Időzített feladatok


Egy webhely karbantartása során gyakran felmerülnek olyan feladatok, melyeket rend-
szeresen végre kell hajtani. A Drupal például rögzíti a rendszerben történt fontosabb
eseményeket és az azokhoz kapcsolódó információkat. Ha ez az eseménynapló folyama-
tosan csak nőne, akkor egyrészt nehéz lenne megtalálni az utóbbi idők fontosabb esemé-
nyeit egy esetleges hiba felderítésekor, másrészt az adatbázisunk kezelése is feleslegesen
lassulna, a rendelkezésre álló hely pedig egy idő után elfogyna. Ezért célszerű időről-idő-
re kitörölni a régebbi naplóbejegyzéseket.
Természetesen még számos ilyen időzített feladat van illetve lehet egy Drupal webhe-
lyen, például a változott tartalmak újraindexelése a kereső számára, vagy egy bizonyos
időpontban megjelenítendő tartalom közzététele.
6.Első lépések 57. oldal

Az alapproblémát egy böngészőből történő futtatás (44. ábra, az időzítő böngészőből is


futtatható) időlegesen megoldja. De keressük meg a teljes megoldást is.
A Drupal modulok időzített feladatait a cron.php futtatja le, melynek neve a Unix/Linux
rendszereken elérhető cron41 szolgáltatás nevére utal. Amennyiben kiszolgálónkon elér-
hető ez a szolgálatatás, akkor érdemes ennek segítségével beállítani, hogy adott időkö-
zönként lefusson a cron.php. Attól függően, hogy milyen szolgáltatónál helyeztük el
webhelyünket, különböző módja lehet az időzített feladatok beállításának. Lehetséges,
hogy e-mailben kell felkeresnünk a rendszergazdát, előfordulhat, hogy webes felületen
tudjuk menedzselni az időzítéseket (ilyen még akár ingyenes szerveren is előfordulhat).
Példaként nézzünk meg egy adminisztrációs felületet, más szolgáltatók hasonló adatok
megadását engedélyezhetik:

46. ábra: Cron beállítás a szolgáltatónál

Ha semmilyen módon nem tudjuk a cront futtatni, akkor egy kevésbé elegáns megoldás-
sal is megoldhatjuk. (A megoldást később, a 10.1. fejezetben mutatjuk be.)

6.2. Webhely karbantartás


Ha a honlapot nyilvános helyen fejlesztjük, célszerű azt offline állapotba helyezni, és
csak a honlap publikálható állapotba kerülésekor visszahelyezni online állapotba (47.
ábra).

41
„A cron egy háttérfolyamat, amely szabályos időközönként programo(ka)t futtat (például: minden perc-
ben, naponta, hetente vagy havonta).” Forrás: http://wiki.hup.hu/index.php/Cron
58. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

47. ábra: Karbantartás

Mindezt a Webhely karbantartás adminisztrációs oldalon tehetjük meg (48. ábra). Az


offline kapcsolón túl a látogatók számára megjelenítendő üzenetünket is megfogalmaz-
hatjuk.
Megjegyzés: A szerző személyes véleménye szerint nagyon káros, ha egy ilyen üzenetben nem szerepel az
időpont, amikortól a honlap ismét üzemel majd. Célszerű ezért legalább hozzávetőlegesen meghatározni a
nyitás időpontját.

48. ábra: Karbantartás

Az oldal offline állapotára folyamatosan figyelmeztet bennünket a Drupal oldalunk:


minden oldal tetején olvashatjuk az „Offline módú működés” feliratot (49. ábra).
Az offline állapotnak még „veszélye” az is, hogy kilépés után maga az adminisztrátor sem
fog tudni a szokásos módon belépni, hiszen a nyitóoldalon csak az előbb megfogalmazott
üzenet olvasható, nincs lehetőség a belépésre. Ezért érdemes megjegyezni, hogy ha bár-
milyen szituációban begépelhetjük a ?q=user szöveget a honlap URL-jének végére a
böngészőnk cím sorába, máris kapunk egy belépési lehetőséget.
6.Első lépések 59. oldal

Megjegyzés: A szerző saját oldalán jelenleg nem is jelenik meg a belépésre használható oldalsó blokk,
hanem csak az erre az útvonalra illesztett menüpont Belépés címmel.

6.3. Webhely információk


A webhely információk adminisztrációs oldal néhány beállítását már telepítéskor meg-
tehettük (név, e-mail cím; 38. ábra), ezen azonban utólag változtathatunk, illetve né-
hány további jellemzőt beállíthatunk (49. ábra).

49. ábra: Webhely információk

A következő három mező (Jelmondat, Küldetés, Lábléc üzenet) sminkfüggő, hogy meg-
jelenik-e a publikus oldalakon. Bizonyos sminkek megjelenítik ezeket a szövegeket az ol-
dalon. (Az alapértelmezett Garland smink mindeggyiket megjeleníti.)
60. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

A névtelen felhasználó megnevezése pl. Névtelen vagy Vendég megjegyzésekkor lesz ér-
dekes, ugyanis az oldalunk név híján ezt a szót fogja a tartalom vagy megjegyzés „tulaj-
donosaként” megjeleníteni.
A node alapértelmezett címlapot csak akkor szokás megváltoztatni, ha a kezdőoldalt
nem a friss hírekkel akarjuk megtölteni.

6.4. Ellenőrző kérdések


● Hogyan tudunk időzített feladatokat futtatni Drupal alatt?
● Írjon két példát, milyen feladatokat kell rendszeresen (időzített feladatként) fut-
tatni Drupal alatt!
● Mikor érdemes egy webhelyet offline állapotba kapcsolni?
● Mit értünk Drupal esetén alapértelmezett címlap alatt?
● Hogyan adhatjuk meg az oldal jelmondatát?

6.5. Feladatok
● Nézzük meg az Állapotjelentést! Hárítsuk el az esetleges problémákat! (Az időzí-
tett feladatot mindenképpen futtassuk le egyszer a linkre kattintva!)
● Nézzük meg, hogy szolgáltatónk nyújt-e cron futtatási lehetőséget! Ha igen, állít-
suk be megfelelően!
● Kapcsoljunk offline állapotba, majd jelentkezzünk ki! Lépjünk ismét be, és kap-
csoljunk online állapotra!
● Állítsuk be az oldalunk legalapvetőbb jellemzőit a Webhely információk oldalon!
7.Az alaprendszer moduljai, szolgáltatásai 61. oldal

7. Az alaprendszer moduljai, szolgáltatásai


A Drupal alapvető funkcióit a modulok segítségével lehet kibővíteni. Ezen az oldalon le-
het engedélyezni a már telepített modulokat. (Most egyenlőre csak az alaprendszer mo-
duljaival foglalkozunk, a kiegészítő modulok telepítése és alkalmazása későbbi témánk
lesz.)
Az engedélyezést követően a modul beállításához az Adminisztráció menü megfelelő
pontját kell kiválasztani. Egy engedélyezett modul új felhasználói jogosultságok beállítá-
sát is igényelheti.
Az alaprendszer szükséges (vagyis kikapcsolhatatlan) moduljait csak egy gyors lista ere-
jéig vegyük szemügyre:

50. ábra: Alaprendszer szükséges modulok

A lista jól mutatja, mik azok az alapszolgáltatások, amit minimálisan kell tudni egy tar-
talomkezelő rendszernek.
A többi modul ki-be kapcsolása egyszerű művelet: az Adminisztráció/Modulok oldalon
a jelölőnégyzet segítségével, majd a beállítások mentésével véglegesíthetjük. Természe-
tesen a modulok bekapcsolás után még konfigurációt is igényelhetnek.

Modulok használatba vétele


Most pedig nézzük meg az alaprendszer „nem szükséges” moduljait. (Talán érdemes úgy
gondolni ezekre a modulokra, hogy ugyan nem létszükséglet a használatuk, de többségü-
ket igen gyakran alkalmazzuk.) A sorrend kicsit önkényes, más beállítási sorrendek is lo-
gikusak lehetnek.
Az alaprendszer moduljai esetén figyelembe kell venni a tipikus három lépést:
1. A modult használat előtt engedélyezni (bekapcsolni) kell.
2. Konfigurálni kell a rendszert.
3. Használni.
62. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

7.1. Útvonal álnevek


Az útvonal (Path) modullal a Drupal webcímeihez álnevek rendelhetőek. Ezek az álne-
vek javíthatják a webcímek olvashatóságát, és segíthetnek az internetes keresőknek a
tartalom hatékony indexelésében42. Egynél több álnév is rendelhető egy adott útvonal-
hoz (bár ez általában nem célravezető megoldás).

Néhány példa az útvonal álnevekre

user belepes

image/tid/16 aruhaz

taxonomy/term/7+19+20+21 aruhaz/termekek/kiegeszitok

node/3 kapcsolat

Az útvonal modul a megfelelő jogosultsággal rendelkező felhasználók számára egy kiegé-


szítő mezőt (51. ábra) jelenít meg a tartalmak beküldési és szerkesztési űrlapján, mely
segítségével a tartalom útvonalát elfedő álnév közvetlenül megadható. Emellett saját fe-
lületet nyújt a már meglévő álnevek megtekintésére és szerkesztésére.

51. ábra: Útvonal álnév tartalom beküldésekor

Így az Adminisztráció/Útvonal álnevek oldalt közvetlenül ritkán használjuk, akkor is el-


sősorban áttekintő listaként.
A későbbiekben látni fogjuk, hogy kiegészítő modul (pl. Pathauto) segítségével az útvo-
nal álnevek egységes rendszerben és automatikusan generálhatók.

7.2. Dátum és idő


A dátum és idő megjelenítésével kapcsolatos beállítások, valamint a rendszer alapértel-
mezett időzónája állíthatók be (52. ábra).
A beállítási lehetőségek magukért beszélnek.
Regisztrált felhasználók számára akkor érdemes engedélyezi az időzóna testreszabását,
ha előfordulhat, hogy a szerver és a látogatók más időzónába tartoznak.

42
Ez a sokat emlegetett és sokszor félremagyarázott SEO egyik fontos alapelve.
7.Az alaprendszer moduljai, szolgáltatásai 63. oldal

52. ábra: Dátum beállítások

A hét első napjának beállítása naptár jellegű megközelítés esetén lesz fontos.

7.3. Keresés beállításai


Ritka kivételtől eltekintve nem érdemes a keresés funkciót (Search modul) kikapcsolni,
hiszen nagyon hasznos szolgáltatást nyújthatunk minimális költségért cserébe (53.
ábra).

53. ábra: Keresés űrlap

A kereső modul kulcsszavak kereshetőségével ruházza fel a rendszert. Egy nagy webhe-
lyen a kereső használata gyakran az egyetlen módja egy tartalom megtalálásának. A ke-
reső segítségével felhasználók és tartalmak egyaránt megtalálhatóak kulcsszavak alap-
ján.
64. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

A keresőmotor a webhelyen közzétett tartalmak és felhasználói adatok alapján felépített


index segítségével működik. A modul beállításaival szabályozható az index feltöltésének
módja. Az időzítő (cron) beállítása és rendszeres futtatása szükséges a kereső működésé-
hez.

54. ábra: Keresés beállításai


7.Az alaprendszer moduljai, szolgáltatásai 65. oldal

Az index százaléka adja meg az időzítő egyszeri lefutásakor leindexelendő tartalmak szá-
mát. Az érték alacsonyra állításával elkerülhető, hogy az időzítő túllépje a maximális fu-
tási időt, vagy kifogyjon a rendelkezésre álló memóriából.
Az alapbeállításokhoz képest talán a sorba rendezés szempontjainak súlyozását érdemes
átgondolni. Pl. egy technológiai honlapnál nagyobb, míg egy botanikai honlapnál kisebb
súllyal érdemes a közzététel frissességét figyelembe venni.
Megjegyzés: A modul csak egész szavakat indexel, így szótöredékekre sajnos nem tudunk vele keresni.

7.4. Teljesítmény beállítások


A Drupal több lehetőséget is ad az oldalunk teljesítményének finomhangolására. Termé-
szetesen ezek a gyorsítási funkciók hátrányokkal is járhatnak, ezért óvatosan kell velük
bánnunk.

7.4.1 Gyorstárazás
A Wikipédia definíciója43 szerint „a gyorsítótár vagy cache [...] az átmeneti információ-
tároló elemeket jelenti, melyek célja az információ-hozzáférés gyorsítása. A gyorsítás
egyszerűen azon alapul, hogy a gyorsítótár gyorsabb tárolóelem, mint a hozzá kap-
csolt, gyorsítandó működésű elemek, így ha ezen területek tartalma korábban már be-
került a gyorsítótárba (mert már valaki/valami hivatkozott rá korábban), az ilyen
adatokat nem a lassú működésű területről, hanem a gyors cache tárolóból lehet előhív-
ni.”

55. ábra: Gyorstárazás beállítása


43
http://hu.wikipedia.org/wiki/Gyorstár
66. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

A gyorstár bekapcsolása jelentős teljesítmény javulást eredményezhet. A Drupal képes


az anonim felhasználók (látogatók) által kért webcímeket illető tömörített gyorstárazott
oldalak tárolására és küldésére. A gyorstárazás használatával a Drupal-nak nem kell
minden oldallekérésnél előállítania a weblapot, hanem azt a gyorstárból (cache-ből) tud-
ja kiszolgálni.
A gyorstárazási módot ajánlott Normál-ra állítani, aminek még nem lehetnek mellékha-
tásai.

Minimális gyorstár élettartam


Nagy forgalmú webhelyek esetén szükséges lehet a gyorstár élettartamának minimális
értéket adni. A gyorstár minimális élettartama az az idő, aminek el kell telnie azelőtt,
hogy a gyorstár kiürítésre majd újra feltöltésre kerülne. A hosszabb minimális gyorstár
élettartam jobb teljesítményt nyújt, azonban a felhasználók hosszabb ideig nem látják
majd a legfrissebb tartalmakat. Fejlesztés esetén érdemes az alapértelmezett 0 értéket
meghagyni, vagy még inkább kikapcsolni a gyorstárazást.

Blokk tömörítés
Néha egy-egy blokk generálása erőforrásigényesebb, mint a tartalom legenerálása. Ép-
pen ezért átalában érdemes ezt is bekapcsolni.

56. ábra: Blokk gyorstárazás

7.4.2 Sávszélesség optimalizálás


A Drupal alapú honlapunk jó eséllyel több CSS és JavaScript állomány letöltését is szük-
ségessé teszi az oldal megjelenítéséhez. De maga a generált HTML oldal se a legoptimá-
lisabb a letöltési sebesség szempontjából.
A következő lehetőségek a webhely felé irányuló kérések számának és méretének csök-
kentését teszik lehetővé. Ez csökkentheti a szerver terhelését, a használt sávszélességet,
és az oldalak betöltődésének átlagos idejét. E beállítások engedélyezése fejlesztés közben
nem javasolt.
7.Az alaprendszer moduljai, szolgáltatásai 67. oldal

57. ábra: Oldal tömörítés engedélyezése

58. ábra: Sávszélesség optimalizálás

A következő ábrákon láthatjuk a generált HTML kimenetet, a két mód közti különbsé-
get. Jól látszik, hogy a sok CSS fájl letöltése helyett csak egyre lesz szükség. Ez pedig
előnyös.
68. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

59. ábra: A HTML kimenet a CSS fájlok összevonása nélkül

60. ábra: A HTML kimenet a CSS fájlok összevonása esetén

Fejlesztés alatt hagyjuk e lehetőségeket Tiltott állapotban.

7.5. Ellenőrző kérdések


● Mit értünk a Drupal alaprendszer „szükséges” moduljai alatt?
● Írjon példát a Drupal alaprendszer „szükséges” moduljai közül!
● Mi az útvonal álnevek használatának előnye?
● Mi a rövid webcímek használatának előnye?
● Mit értünk gyorstárazás alatt?
● Milyen előnyei vannak a gyorstárazás használatának?
● Milyen hátrányai vannak a gyorstárazás használatának?

7.6. Feladatok
● Engedélyezze az ismertetett modulokat, és konfigurálja a fenti módon!
8.Tartalmak 69. oldal

8. Tartalmak
8.1. Beviteli formák
A tartalomkezelő rendszerek egyik alapvető célja, hogy a tartalom előállításához ne le-
gyen szükség komolyabb webfejlesztői ismeretekre. Ezért a tartalom felviteléhez, formá-
zásához a felhasználók számára olyan segítséget kell nyújtani, ami a szövegszerkesztők
használatához hasonló, de azért ne adjon lehetőséget az oldal dizájnjának „tönkretételé-
hez”.
A beviteli formák a felhasználók által megadható szövegek különböző feldolgozási mód-
jait határozzák meg. A szűrők alkalmazását illetően minden beviteli forma saját lehető-
ségekkel rendelkezik, segítségükkel többek közt kiszűrhetők a rosszindulatú HTML ele-
mek, vagy automatikusan kattinthatóvá tehetők a beírt webcímek (61. ábra).

61. ábra: Beviteli formák

Tartalom beküldésekor a felhasználók a számukra megfelelő beviteli formát választhat-


ják ki az engedélyezettek közül.
A beviteli formák használata csoportokhoz köthető, és egy alapértelmezett forma is kivá-
lasztható, amely minden látogató számára elérhető lesz. Ezért célszerű alapértelmezett-
ként a lehető legkevesebbet megengedő formát választani.
70. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

8.1.1 Alapértelmezett beviteli forma


Először a Szűrt HTML formát állítsuk be (beállítás művelet).
A név megváltoztatására most nincs szükség – bár a lehetősége megvan.

62. ábra: Beviteli forma felhasználói

A csoportok jogosultságát itt nem szűkíthetjük, hiszen az alapértelmezett formának min-


denki számára elérhetőnek kell lennie.
A szűrők közül a Sortörés átalakítót kapcsoljuk ki, a később beállításra kerülő vizuális
szerkesztő (FCKEditor) ugyanis így fog a céljainknak megfelelően működni. (Ha nem
akarunk vízuális szerkesztőt használni, akkor hagyjuk bekapcsolva.)
A HTML-szűrő segítségével korlátozható a felhasználók HTML beküldési lehetősége, ezt
mindjárt finomhangolni is fogjuk. Az URL szűrő átalakítja a web és email címeket kat-
tintható linkekké, hagyhatjuk ezt is bekapcsolva. Végül a HTML korrektort is hagyjuk
meg, hiszen a hibás HTML kódjainkat próbálja javítani.
8.Tartalmak 71. oldal

63. ábra: Szűrők ki-be kapcsolása a beviteli formáknál

A későbbiek folyamán külső modulok újabb bekapcsolható szűrőket adhatnak a beviteli


formákhoz. A 63. ábrán két ilyen (GeSHi filter és Hide email addresses) feliratú szűrőt
is láthatunk.

8.1.2 A beviteli formák finomhangolása


A Beállítás fülön elvégezhetjük a finomhangolást is. Most mindössze egyetlen beállítást
változtassuk meg: Az Engedélyezett HTML elemek közé vegyük fel a következőket (64.
ábra):
<h3> <h4> <p> <br> <table> <tr> <td> <img>
Így az alapértelmezetten elég csupasz formázási lehetőségeket komolyabban kibővítet-
tük a hosszabb szöveges oldalaknál elengedhetetlen címek, bekezdések, valamint a táb-
lázatok és képek beviteléhez.

64. ábra: Engedélyezett HTML elemek

A további beállítások megváltoztatására csak speciális esetekben van szükség.


72. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

8.2. Tartalmak beállításai


Mielőtt tényleges tartalommal töltenénk fel a honlapunkat, állítsuk be a tartalmaink jel-
lemzőit is. Ezen az oldalon először is beállíthatjuk, hogy pl. a kezdőoldalon hány tarta-
lom előzetes (tipikusan hír) jelenjen meg egyszerre (65. ábra). Itt a 10 egy szokásos ér-
ték, általában nem szükséges megváltoztatni.

65. ábra: Tartalmak alapbeállításai

A bevezető hossza szintén egy általában megfelelő 600-as értéket tartalmaz, nem szük-
séges megváltoztatnunk. (A HTML tartalmi egységeket nem fogja „kettévágni” ez a ha-
tár, tehát ténylegesen nem 600 karakter lesz a bevezető hossza.)
Az előnézet szükségességét azonban érdemes bekapcsolni. Ennek hatására a felhasználó-
nak a tartalom beküldésekor mindenképpen meg kell néznie a készülő oldal előnézetét.
Ez különösen kezdő felhasználók esetén fontos.44

8.3. Tartalom típusok


A tartalom típusok arra szolgálnak, hogy a különböző jellegű tartalmakat logikailag el
tudjuk egymástól különíteni, illetve a későbbi munkát a jellemzőik testreszabásával je-
lentősen meggyorsítani. (Hamarosan látni fogjuk ennek előnyeit.)
Alapértelmezetten a Drupal két tartalomtípust ismer: Írást és Oldalt. E kettő között az
alapbeállítások esetén az az egyetlen különbség, hogy az Írás alapértelmezetten megjele-
nik a kezdőoldalon, az időbeli aktualitással rendelkező tartalmak között, míg az Oldal
alapértelmezetten nem.

44
A szerző egyedül az oldal kezdő-, a mások számára nem elérhető fázisában szokta kikapcsolni a gyor-
sabb tömeges feltöltés érdekében.
8.Tartalmak 73. oldal

A szerző véleménye szerint általában célszerű, ha az Írást átnevezzük Hírre, kifejezve


annak időponthoz szorosan kapcsolódó jellegét (66. ábra), az Oldal elnevezés alatt pedig
a statikus, ritkán vagy soha nem változó oldalakat (például Kapcsolat) értjük.

66. ábra: Írás-ból Hír tartalomtípus

A Név mezőn kívül állítsuk be a Típust is, és adjunk egy rövid Leírást is a leendő felhasz-
nálóinknak. Például: Időponthoz kötött tartalmak számára. Ez a szöveg a tartalom be-
küldésekor (68. ábra) jelenik meg.

Beküldési űrlap beállítások


A Cím és Törzs elnevezéseket sokszor nem szükséges módosítani, bár időnkét érdemes.
A Törzs elhagyásával a tartalmi rész kiiktatható45. A további beállítások magukért beszél-
nek:

45
Ennek most még nem sok értelme látszik, de később, a CCK modulok használatánál találhatunk rá cél-
szerű példákat.
74. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

67. ábra: Beküldési űrlap beállítások

Általános beállítások
Az Alapértelmezett beállítások a majdan beküldendő minden egyes tartalom alapértel-
mezése lesz. Persze a tartalmak adminisztrációja jogosultsággal rendelkező felhaszná-
lók módosíthatják ezeket a beállításokat.
A Közzétett kapcsoló azt határozza meg, hogy a beküldött tartalom a nyilvánosság szá-
mára elérhető-e. Ha ezt kikapcsoljuk, akkor tulajdonképpen piszkozatot, félkész tartal-
mat hozunk létre, amit persze később megváltoztatva a tartalom publikussá válik. Itt, az
Alapértelmezett beállításoknál (hacsak nem akarunk erős moderációt alkalmazni) ezt
nem kell kikapcsolnunk.
A Hír és az Oldal között itt következik a leglényegesebb különbség: a Címlapra kerül
kapcsoló befolyásolja, hogy a tartalom alapból kikerüljön-e a címlapra, vagy ne. Hírnél
ezt persze hagyjuk bekapcsolva.
A címlapon az oda kerülő tartalmak alapértelmezetten fordított időrendben jelennek
meg, vagyis a legfrissebb hír legfelül. Ez alól kivételt tehetünk: ha bekapcsoljuk a Ki-
emelt, az oldal tetejére kapcsolót, akkor a címlapra kerülő tartalmak időrendjénél erő-
sebb sorrendiséget is alkalmazhatunk.
Az Új verzió készítése kapcsoló akkor hasznos, ha a tartalom módosításakor meg akar-
juk őrizni az előző verziót is, hogy esetleg később vissza lehessen rá térni. Enélkül egy
tartalom módosítása végérvényesen felülírja az előző verziót. Akkor érdemes ezt itt be-
kapcsolnunk, ha a tartalmak minden elmentett (módosított) verzióját meg akarjuk őriz-
ni.
Ha több nyelvű oldalt szeretnénk létrehozni, akkor célszerű a Több nyelv támogatása.
Végül Csatolmányokat is engedélyezhetünk a tartalomtípusunkhoz.
8.Tartalmak 75. oldal

Az eddigiek alapján módosíthatjuk az Oldal tartalomtípusunk beállításait is, elsősorban


a szövegeket. A későbbiekben pedig találkozni fogunk más tartalomtípusokkal is, mint
pl. Könyv, Blogbejegyzés, Fórum téma, sőt magunk is definiálhatunk egyedi tartalomtí-
pusokat46.

8.4. Tartalom beküldése


Sok előkészítés után elérkeztünk oda, hogy beküldjük az első, tesztelésre szolgáló tartal-
munkat.
Az eddigi ábrákon is jól látható volt a Navigáció nevű bal oldali menüblokk, bár beje-
lentkezett felhasználóként a blokk címeként az azonosítónkat (az ábrákon Nagy Gusz-
táv) láthattuk. Itt most a Tartalom beküldése menüponton kell kattintanunk. Mind a
menüben, mind az oldalon választhatunk a rendelkezésre álló tartalomtípusok közül
(68. ábra). Ez utóbbinál megjelenik a korábban megadott leírásunk is.

68. ábra: Tartalom beküldése

A kipróbálás kedvéért küldjünk be egy hírt a honlap fejlesztésével kapcsolatban (69. áb-
ra). Elsőre csak a hír címét és tartalmát töltsük ki.

69. ábra: Hír beküldése

Az Előnézet gombbal lépjünk tovább.

46
Ennek elsősorban a CCK modulok használata esetén lesz jelentősége.
76. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

70. ábra: Hír előnézete

Jól látszik a Közzétételi beállításoknál, hogy a Hír tartalomtípusnál beállítottak szerint a


Közzétett és a Címlapra kerül kapcsoló be van kapcsolva. Ezt akár felül is bírálhatjuk47
erre a hírre nézve: kapcsoljuk ki a Közzétett kapcsolót. Végül a Beküldés gombbal ment-
sük el a hírünket.
A mentett hír innentől kezdve létezik (Az oldal fejlesztése elindult Hír létrejött., 71. áb-
ra). Ha korábban egy másik oldalra navigáltunk volna, akkor a félkész tartalmunk elve-
szett volna. Emiatt a tartalom beküldésekor nagy figyelemmel kell dolgoznunk, illetve a
példánkhoz hasonlóan csak piszkozatként (nem Közzétett) is beküldhetjük a tartalmat,
amit később tovább bővíthetünk, majd közzétehetünk.

71. ábra: A hír létrejött

Jól látszik az ábrán, hogy a tartalmaink megtekintésekor az alapértelmezett Megtekintés


mellett szerepel a Szerkesztés lehetősége is. Ez utóbbi hatására visszajutunk a szerkesz-
tési felülethez, ahol módosítani, bővíteni, törölni, illetve a hír teljes elkészülésekor köz-
zétenni tudjuk azt.
Ez utóbbit próbáljuk is ki: a Szerkesztés gomb után a Közzétett kapcsolót kapcsoljuk be,
majd Beküldés.

47
Más tartalombeküldők esetén nem biztos, hogy engedélyezni fogjuk az alapbeállítások módosítását. Pél-
dául erre a lehetőségre építve megoldható, hogy a beküldött híreket a szerkesztő moderálni tudja.
8.Tartalmak 77. oldal

8.5. A tartalmak megtekintése


Jogos az igényünk, hogy a beküldött tartalmainkat a későbbiekben is bármely látogató
megtalálhassa. Ha azonban vadul elkezdünk kattintgatni a honlapunkon, nem mindig
egyszerű a hírünket megtalálni.

8.5.1 Címlap
A figyelmes olvasó azt várja, hogy a hír a kezdőoldalon (a Címlapon) jelenjen meg. Erre
azonban az offline működés miatt hiába számítunk. Egy érdekességet azonban kihasz-
nálhatunk: A Drupal alatt a tartalmakat ún. node-okba szervezve kezelhetjük. Innen is
sejthető, hogy a következő URL végződés a majdani, publikus címlapot mutatja:
?q=node
Ebből is látszik, hogy a Drupal a kezdőoldalnak a jelenlegi beállításoknál a node oldalt
tekinti. (Ez a 49. ábra alján, az Alapértelmezett címlapnál is jól látszott.)

8.5.2 Tartalmak keresése


Természetesen van más lehetőségünk is egy tartalom megkeresésére. Korábban is lát-
tunk már, hogy a honlapunkon elérhető egy Keresés mező, amiben kulcsszavak alapján
kereshetünk. Természetesen itt csak a publikus és már leindexelt tartalmaink között ke-
reshetünk. Az Adminisztráció menüben is van lehetőségünk keresni, itt már az összes
tartalom között kereshetünk, például a közzé nem tett piszkozataink között is.
A jelen esetben ugyanakkor a legkézenfekvőbb a Tartalom menüpont, ahol listázhatjuk,
szűrhetjük az eddigi tartalmakat.

72. ábra: Tartalmak listázása, szűrése

A táblázatban közvetlen szerkesztési linket is találhatunk (Műveletek). A Frissítési lehe-


tőségek között válogatva akár csoportosan is végezhetünk műveleteket a tartalmainkkal
(Frissítés).
A teszt hírünket most már kikapcsolhatjuk, vagy akár véglegesen törölhetjük is.
78. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

8.6. Ellenőrző kérdések


● Mit értünk alapértelmezett beviteli forma alatt? Kinek van joga használni?
● Mire jó a HTML-szűrő? Miért érdemes használni?
● Mik az előnyei, hogy Drupalban különböző tartalomtípusokkal dolgozhatunk?
● Tartalom beküldésekor mi a szerepe a Címlapra kerül kapcsolónak?
● Tartalom beküldésekor mi a szerepe a Közzétett kapcsolónak?
● Tartalom beküldésekor mi a szerepe a Kiemelt, az oldal tetejére kapcsolónak?
● Mi alapján dönti el a Drupal, hogy mi és milyen formában kerüljön a címlapra?

8.7. Feladatok
● A honlapjára küldjön be különböző típusú, különböző formázásokat tartalmazó
tartalmakat!
● Próbálja ki a különböző beviteli formákat is!
● Küldjön be nem megengedett HTML tagokkal és Szűrt HTML beviteli formával
tartalmat, majd vizsgálja meg a megjelenített tartalom HTML forrását!
● Állítsa át a Közzétételi beállításokat, és így is küldjön be újabb tartalmakat!
● Változtassa meg a tartalomtípusok beállításait, és ismét küldjön be tartalmakat!
● Változtassa meg egyes tartalmak beküldési idejét és közzétételi beállításait, majd
figyelje meg a címlapon történő változásokat!
9.A honlap kialakítása 79. oldal

9. A honlap kialakítása
Ha már tudjuk, mi a célunk a honlapunkkal, akkor kezdjünk bele az oldal kialakításába.
Ehhez meg kell válaszolnunk még a következő kérdéseket.

9.1. Alapkérdések

9.1.1 Milyen oldalaink lesznek?


A válasz egy konkrét, tételes lista legyen. Például:
● kezdőoldal (hírekkel)
● kapcsolat
● termékkategóriák tartalomjegyzéke
● termékkategóriák oldalai
● termékek oldalai
● vendégkönyv oldal
● stb.

9.1.2 Milyen viszonyban állnak az oldalak egymással?


Itt az alá-fölé rendeltségi viszonyon kívül gyakori a mellérendelt kapcsolat is. A válasz az
oldal navigációjának kitalálásában fog segíteni.
Illusztrációként nézzünk meg egy professzionális eszköz, a GUI Design Studio48 példá-
ját:

48
http://www.carettasoftware.com/gds/
80. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

73. ábra: Navigáció tervezés

Az ábra lényeges mondanivalója, hogy meg kell terveznünk, mely oldalakról mely másik
oldalakra navigálhatunk.

9.1.3 Az oldalakon milyen blokkok legyenek?


Itt már az oldal funkcionális látványterve készül. A fő kérdés az, hogy a klasszikus 1,2
vagy 3 oszlopos oldalelrendezés közül melyiket választjuk, és melyik szélső oszlopban
milyen tartalmú dobozokat szeretnénk elhelyezni. Ráadásul még a dobozok sorrendjét is
meg kell terveznünk.

9.1.4 Milyen menüket, milyen menüpontokat szeretnénk al-


kalmazni?
Fontos tisztáznunk, hogy a hagyományos felső vagy oldalsó menüt, esetleg mindkettőt
alkalmazzuk. A menüpontok sorrendje, hierarchiája szintén nem közömbös. Jól át kell
hát gondolnunk, hogy a látogatóink számára leglogikusabb, legáttekinthetőbb struktúrát
tudjuk nyújtani.
Az alapkérdések tisztázása után vágjunk bele ismét a Drupal alkalmazásába.
9.A honlap kialakítása 81. oldal

9.2. Menük és blokkok kialakítása


A legritkább eset, amikor az oldal menüpontjai egy mindössze néhány elemű listába he-
lyezhetők. Sokkal gyakoribb, hogy almenükben, illetve többféle49 menüben kell gondol-
kodnunk.
A Drupal a menüpontokat technikailag kétféle módon teszi használhatóvá. Egyrészt a
többnyire (de nem kizárólag) vízszintes felső menüként szereplő Elsődleges linkek nevű
menü, másrészt a többnyire valamelyik oldalsávon (oszlopban) megjelenő menüblok-
kokban. Az utóbbira már eddig is láthattunk (sőt használhattuk is) egy példát, ez pedig a
Navigáció menü.

74. ábra: Menük adminisztrációs oldal

9.2.1 Elsődleges linkek


Először az Elsődleges linkek összeállítását érdemes megtanulnunk, hiszen egyszerűbb
esetekben ezzel minden oldalt közvetlenül elérhetővé lehet tenni. Az Elsődleges linkek
megjelenése és a megjelenés helye smink kérdése50.
Itt most számunkra legfontosabb előnye, hogy a menü már létezik, csak menüpontokkal
kell feltöltenünk. (Hamarosan látni fogjuk, hogy más menüket először létre kell hoz-
nunk.)
Ha beküldünk pl. egy Oldal típusú tartalmat, akkor megfigyelhetjük a Menü beállítások
eddig nem használt részt (75. ábra).
Megjegyzés: A szerző Oldal típusú tartalmat javasol a főmenü (elsődleges linkek) pontja-
iként.

49
A szerző a lehetőségek közül eleve kizárja az ún. legördülő menüket, amelyeknek egy honlapon (ergonó-
miai okok miatt) általában semmi helyük. Kivételt esetleg az adminisztrációs felület kialakításánál érde-
mes tenni.
50
Bizonyos sminkek nem jelenítik meg az Elsődleges linkeket, más sminkek akár a másodlagos stb. menüt
is megjelenítik.
82. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

75. ábra: Oldal elhelyezése az Elsődleges menüben

A Cím a menüben megjelenő feliratot fogja jelenteni, a Leírás pedig a szükség esetén
megjelenő felugró szöveget.
A Szülő menüpont segítségével állíthatjuk be a menüpontnak a menühierarchiában be-
töltött helyét. (Az oldalunkon elérhető több menü egy közös fába szervezve jelenik meg,
a megfelelő pont kiválasztásával tehát a menüt, és az azon belüli pozíciót is meg tudjuk
határozni.
Végül a Súly az egy helyen (egy szülő alatt) levő menüpontok relatív sorrendjét szabá-
lyozza. (A nagyobb számokkal ellátott „nehezebb” menüpontok lesüllyednek.)

9.2.2 Navigáció menü


Ebben a menüben jelennek meg a legalapvetőbb navigációs lehetőségeken (pl. Kilépés,
Saját adatok) kívül a honlap fejlesztéséhez, adminisztrálásához szükséges menüpontok
(76. ábra). Ez a menü a benne található menüpontok között fa hierarchiát képes megva-
lósítani.
Az ábrán jól megfigyelhető, hogy a Navigáció menü beállításainak megfelelően jelennek
meg a bal oldali menüpontok: A nem engedélyezett (szürkével szereplő) Keresés menü-
pont nem jelenik meg a navigációs menüben, viszont a Saját adatok igen. Ráadásul a
sorrendben és a hierarchiában is könnyen megfigyelhető az összefüggés. (Az ábrán terje-
delmi okok miatt nem szerepel a teljes Navigáció menü.)
9.A honlap kialakítása 83. oldal

76. ábra: Navigáció menü beállításai

Jól látszik, hogy a nem engedélyezett menüpontok könnyen bekapcsolhatók.


A Menüpont hozzáadása linkkel új menüpontokat is felvihetnénk, de most ezt ne tegyük
meg: a szerző véleménye szerint a Navigáció menüt érdemes csak az adminisztrátorok-
nak fenntartani, a többi látogatónak pedig más menüket biztosítani.

9.2.3 A blokkok beállítása


A menük (az Elsődleges linkek kivételével) blokkokban elhelyezve jelennek meg az olda-
lon. Ezért meg kell néznünk, hogy mit is tehetünk a blokkjainkkal.
(Blokkokban nem csak menük jelenhetnek meg, ahogy azt később látni fogjuk.)
Nézzük meg a Blokkok adminisztrációs oldalát (77. ábra). Az oldal furcsasága a csak
ezen adminisztrációs oldalra jellemző, szaggatott szegéllyel jelzett régió-feliratok megje-
lenése. E feliratok (Fejléc, Bal oldalsáv, Jobb oldalsáv, Tartalom, Lábléc) azt jelzik, hogy
az oldal (egész pontosan a smink) milyen helyekre tud blokkokat helyezni.
(Egyes sminkek akár egész más nevű és helyű régiókat is tartalmazhatnak.)
84. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

77. ábra: Blokkok adminisztrációs oldal


9.A honlap kialakítása 85. oldal

Az ábrán mindössze két bekapcsolt és négy Tiltott blokkot láthatunk. Már ezen az össze-
foglaló oldalon is beállíthatjuk, hogy melyik blokk hol jelenjen meg, és mi legyen a
blokkjaink relatív sorrendje. (Itt a háttérben a korábban már említett súlyozás van, de a
Drupal 6-os verziója itt elrejti ezt előlünk, és akár egérvonszolással is befolyásolható a
sorrend.)

Részletesebb beállítások
Nézzük meg a részletesebb beállítások lehetőségeit, kattintsunk a Navigáció blokk mel-
letti beállítás linkre (78. ábra).
A blokk címe mezőbe írt szöveg felülbírálja a blokk „örökölt” címét (például a Navigáció
szó a menü neve, amit a blokkban meg akarunk jeleníteni), de akár cím nélküli blokkot
is meghatározhatunk, ha <none> szöveget írunk bele.
Beállíthatjuk, hogy a felhasználók testre szabhassák-e az oldalukat a blokk kikapcsolásá-
val. (Ez elsősorban a sok időt honlapon töltő felhasználóknál érdekes, például közösségi
oldalak esetén.)
A blokk megjelenését köthetjük jogosultsághoz is. Drupal alatt a jogosultságkezelés
alapvetően csoportos szinten működik, vagyis megjelenítést felhasználói csoportonként
engedélyezhetjük. Alapértelmezetten a blokkok mindenki számára elérhetők, de a Navi-
gáció menü esetén a szerző gyakorlata, hogy ezt csak a legbelső szerkesztői körköz tarto-
zó csoport számára teszi elérhetővé. (Az ábrán látható Szerkesztő csoportról a későbbi-
ekben lesz szó, itt most csak ők kapnak jogot a Navigáció menü eléréséhez.)
A megjelenést akár útvonalakhoz is köthetjük. Ekkor a blokk csak az útvonalak által
meghatározott, vagy ellenkezőleg: azok által kizárt oldalakon fog megjelenni. E mód-
szerrel például egy többnyelvű oldal51 könnyen elkészíthető, ahol az angol nyelvű oldalak
útvonala mind az en/* mintára illeszthetők, így az angol nyelvű menüblokkokat csak
ezen útvonalakon jelenítjük meg.

51
E módszer eredménye látható az AGTEDU konferencia (http://www.kefo.hu/agtedu/) honlapján.
86. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

78. ábra: Navigáció menü blokk beállításai


9.A honlap kialakítása 87. oldal

9.2.4 A főmenü elkészítése


Sok oldalnál előfordul, hogy az Elsődleges linkek menü nem teszi lehetővé az összes
igény kiszolgálását. Néhány indok:
● nem fér ki minden menüpont
● túl zsúfolt lenne, nem vihető bele csoportosítás
● nem vihető bele hierarchia
Ezért megnézzük annak lehetőségét, hogy hogyan tudunk a Navigáció menühöz hasonló
újabb menüt (akár többet is) létrehozni.
Példánkban egyetlen menüblokkra van szükségünk, ami a Menü nevet fogja kapni. Néz-
zük meg, hogyan is alakítsuk ki a menünket.
Először is menjünk a Menü adminisztrációs oldalra. Hozzunk létre egy új menüt (Menü
hozzáadása). (79. ábra)

79. ábra: Új menü létrehozása

Ez után hozzunk létre egy menüpontot (Menüpont hozzáadása) a kezdőoldalra mutató


linkkel (<front>), Címlap címmel (80. ábra).
A cím alatt megadhatnánk egy leírást, ami kis súgó szövegként fog megjelenni, ha az
egérmutatót a menüpontra visszük.
Megadhatjuk a szülő menüpontot (esetünkben Menü) és a menüpontok relatív sorrend-
jét definiáló Súlyt is.
88. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

80. ábra: Címlap menüpont létrehozása

Menünk még mindig nem látszik sehol, ugyanis a Menü blokkot az alapértelmezett Til-
tott állapotból még nem billentettük ki. Tegyük be bal oldalra a Blokkok adminisztráció-
ja oldalon, a 77. ábrának megfelelően. Ezek után a Menünknek meg kell jelennie az olda-
lon.
A menüblokkokban szereplő menüpontok kialakításával további oldalakat fűzhetünk be
az oldal menüszerkezetébe.
Végül megjegyezzük, hogy

9.3. Ellenőrző kérdések


● Mit értünk Elsődleges linkek alatt? Logikailag miben tér el más menüktől?
● Írjon két példát blokk alkalmazására!
9.A honlap kialakítása 89. oldal

● Miért adunk meg a blokkok adminisztrációs oldalon súlyokat?


● Mik egy új menü létrehozásának és beüzemelésének főbb lépései?
● Lehet-e egy oldalt (útvonalat) több menübe is elhelyezni? Indokolja!

9.4. Feladatok
● A 3. fejezetben megtervezett honlapjával kapcsolatban ismét válaszoljon a fejezet
kérdéseire!
● Hozzon létre az elsődleges menüben 2-3 menüpontot!
● Hozzon létre egy másik menüt, jelenítse meg jobb oldalt, és helyezzen el benne is
menüpontokat!
● Kapcsoljon be minden blokkot, amit a rendszer jelenleg nyújtani tud! Állítson be
olyan sorrendet, amelyik a legszimpatikusabb!
90. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

10.További modulok kiválasztása, telepítése


Ahogy az eddigiekben láthattuk, a Drupal alapcsomagjában található alap (core) modu-
lok segítségével igen sok szolgálatatáshoz jutunk. A Drupal erejét tovább növeli, hogy az
5-ös sorozathoz ezres nagyságrendű kiegészítő modul érhető el, amelyek közül a sikere-
sebb/fontosabb modulok 6-os verzióra portolása is szépen halad. Természetesen ezen
modulok minőségében nem bízhatunk meg ugyanúgy, „vakon”, mint az alap modulok
esetén, de körültekintő alkalmazásukkal hihetetlen sok programozói munkától kímél-
hetjük meg magunkat.
A modul jó minőségére utaló jelek, ha
● ez már a sokadik verzió (tehát nem 0.1, hanem pl. 1.6-os)
● van hozzá minél több nyelvi fordítás (vannak, akik annyira jónak tartják, hogy a
fordításra időt szánnak)
● a drupal.hu-n pozitív értelemben utalnak rá
Most néhány olyan kiegészítő modullal folytatjuk ismerkedésünket, amelyek általánosan
használhatóak, és a szerző saját tapasztalatai szerint is megfelelnek az elvárásoknak.

Modulok letöltése
A Drupal hivatalos webhelyén, a http://drupal.org/project/Modules oldalon igen nagy-
számú, és sokféle funkciót megvalósító modult találhatunk. (Ráadásul erre az informá-
ciómennyiségre ráépült http://drupalmodules.com/ oldal egy alternatív kereshetőséget
is ad.)
A letöltés előtt érdemes megfontolni a következőket:
● a kiegészítő modulok helyes működése nem garantált
● minden ismeretlen modult először egy teszt környezetben próbáljunk ki
● a fejlesztői (dev) változatokat csak nagy körültekintéssel érdemes éles környezet-
ben alkalmazni
● a modul letöltése előtt válasszuk ki az alapcsomagunkhoz illő verziót
● a modulok között lehetnek ú.n. függőségek, amelyek miatt egyes modulok csak
más modulokkal együtt lesznek használhatóak

Modulok telepítése
A kiegészítő modulokat .tar.gz kiterjesztéssel tölthetjük le. E tömörített állomány tar-
talmát kell a szerverre feltöltött Drupal alkalmazásunk sites/all/modules52 alkönyvtárá-
ba másolnunk.
A legtöbb modul tartalmaz READE.txt és/vagy INSTALL.txt fájlt. Ekkor elsődlegesen e
leírás szerint kell eljárnunk. A legtöbb esetben a következő lépésekre lesz szükségünk.
A modulunk annak engedélyezéséig még használhatatlan marad. Egy modul működését
engedélyezni, vagy éppen letiltani az Adminisztráció menü Modulok oldalán tudjuk.
(Ténylegesen itt többről is szó lehet, mint engedélyezésről, de a háttérben végbemenő

52
Elvileg a /modules alkönyvtár is alkalmazható a célra, de a Drupal hivatalos ajánlását nem érdemes fi-
gyelmen kívül hagyni. (Előbb-utóbb úgyis minden kétkedő megtapasztalja ennek hátrányait.)
10.További modulok kiválasztása, telepítése 91. oldal

folyamatok ismertetése túlmutat e jegyzet keretein. Részletes információk a modul do-


kumentációjából és forrásának tanulmányozásából nyerhetők.)
A modul tényleges használata előtt még konfigurálnunk is kell azt. Ez többnyire az Ad-
minisztráció oldalon megjelenő újabb menüpontok segítségével tehetjük meg. Érdemes
azonban a modulban található readme.txt és/vagy install.txt fájlokat is alaposan átta-
nulmányozni, egyes modulok esetén bonyolultabb lehet a beüzemelés folyamata.
A következő modulok sorrendje önkényes: a szerző által leggyakrabban használt és leg-
inkább hasznosnak ítélt modulokkal kezdünk.

10.1. A Poormanscron modul


Verzió: poormanscron-6.x-1.0.
Forrás53: http://drupal.org/project/poormanscron
A Poormanscron modul lehetővé teszi időzített feladatok futtatását akkor is, ha a szol-
gáltató egyébként nem nyújt cron futtatási lehetőséget. Az időzített feladatokból ugyanis
kisebb, még nem zavaró részletekben a felhasználói kéréseket terheli meg.
Többek között szabályozhatjuk a két futtatás közötti minimálisan eltelt időt, valamint a
naplózás lehetőségét is. Általában a következő beállítások megfelelőek:

81. ábra: Poormanscron beállítások

53
A forrás címe a modulok döntő többségénél így épül fel.
92. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

10.2. A Pathauto modul


Verzió: pathauto-6.x-1.1.
A tartalmaink útvonalának (URL) egységes kezelése nem egyszerű feladat: sok-sok gépe-
lésre ítél bennünket. E modul igen sokféle módon teszi lehetővé az útvonalaink automa-
tikus előállítását.
Ha a tartalom beküldőnek nincs „útvonal álnevek létrehozása”jogosultsága, akkor neki
nincs is jogosultsága az útvonal beállítására. Akinek pedig van, annak sem kell kézzel ki-
tölteni, hiszen a modul automatikusan létrehozza azt (82. ábra).

82. ábra: Tartalom beküldésekor automatikusan létrejövő álnév

A modul működésének alapelve, hogy a cím alapján generál kisbetűs és ékezetek nélküli
útvonalat. Ehhez a modul könyvtárában található i18n-ascii.example.txt állományt
i18n-ascii.txt névre kell rövidítenünk, hogy a benne található megfeleltetések alapján54
tudja az ékezetes betűk ékezet nélküli verzióit meghatározni.
Az adminisztrációs oldal (ami az Útvonal álnevek adminisztrációs oldal alá épül be) igen
sok beállítást tartalmaz, néhány lényegesebbet vizsgáljunk meg.

10.2.1 Általános beállítások


● Kérjük a változások kijelzését (Verbose)
● Elválasztó (Separator) az aláhúzás legyen
● Kisbetűsítsünk: Character case: Change to lower case
● Az ékezetes karakterek korrekt kezeléséhez kapcsoljuk be:
Transliterate prior to creating alias, és kapcsoljuk ki: Reduce strings to letters
and numbers from ASCII-96
● A törlésre javasolt rövid angol szavakat is érdemes eltávolítani (Strings to Remo-
ve).

54
E megfeleltetések nem minden esetben megfelelőek. Például e verzió a ő és ű betűket oe és ue betűkre
cseréli. Ekkor a fájlt megfelelő szerkesztő programmal pl. Notepad++ szerkeszthetjük.
10.További modulok kiválasztása, telepítése 93. oldal

83. ábra: Pathauto általános beállítások


94. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

10.2.2 Speciális karakterek


A legkülönbözőbb írásjelek (az idézőjeltől a fordított per karakterig) kiválaszthatjuk,
hogy
● törölni,
● az elválasztó karakterre cserélni, vagy
● meghagyni szeretnénk.

84. ábra: Speciális karakterek

Az e beállítások között nem szereplő karakterek fognak csak az i18n-ascii.txt szerint cse-
rélődni.

10.2.3 Útvonal beállítások


Elsősorban a tartalomtípusainktól függ, hogy milyen további beállítási lehetőségeink
vannak. Nézzünk meg pár tipikus beállítást, ami alapján a további beállítások kikövet-
keztethetők.
● alapvetően a tartalmak esetén: [title] a címet fogja alapul venni
● blog esetén: blog/[user] a felhasználói nevet helyettesíti a blog/ után
● fórum esetén: [vocab]/[catpath] a fórum szótár és a fórum téma nevét fogja ala-
pul venni
● felhasználó esetén: felhasznalo/[user] a felhasználói nevet helyettesíti a blog/
után
Figyelembe lehet venni a generáláskor pl. a dátumot is.
Több blokk esetén van lehetőség használni a Bulk generate aliases kapcsolót. Ebben az
esetben az összes olyan útvonal automatikusan generálásra fog kerülni, ahol még nincs
alilas.
A Create feed aliases segítségével az RSS csatornák generálását írhatjuk elő.
Végül vessünk egy pillantást a generált Útvonal álnevek listájára (85. ábra).
10.További modulok kiválasztása, telepítése 95. oldal

85. ábra: Generált útvonal álnevek

10.3. Az FCKEditor modul


Verzió:
● FCKEditor: 2.6.2.
● Illesztő modul: fckeditor-6.x-1.2-1.
Ha fontos számunkra a szövegek gyorsan formázhatósága, akkor nem mondhatunk le
valamilyen vizuális szerkesztőről sem. Az itt bemutatásra kerülő modul mellett a
TinyMCE-t szokták még sokan ajánlani.
Az FCKEditor modul lehetővé teszi, hogy a Drupaltól függetlenül fejlesztett FCKEditor-t
(86. ábra) a Drupal alatt használjuk. Itt tehát két dolgot kell letöltenünk: a Drupal mo-
duljaként elérhető illesztő modult, és a http://www.fckeditor.net/ oldalról letölthető
külső szerkesztőt.

86. ábra: Az FCKEditor működés közben


96. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

Az editor használata hasonlít az ismert szövegszerkesztők működésére, de azért a fel-


használók részéről gyakorlási időt is rá kell szánni, és nem hátrány a HTML nyelv alap-
szintű ismerete sem.
A kettős letöltés előrevetíti, hogy ennek a modulnak a telepítése nem lesz egyszerű fel-
adat. Sokak tapasztalata, hogy a modul beüzemelése sok esetben problémás, a működé-
se – néha – bizonytalan, így sokan feladják a használatát.
A Beviteli formák között beállítható Sortörés-átalakítást érdemes kikapcsolnunk, ha az
FCKEditor (vagy más vizuális szerkesztő) használatát minden felhasználónak engedé-
lyezzük.
A Felhasználó kezelés, Jogosultságok oldalon az access fckeditor jogot engedélyeznünk
kell a kívánt csoportok számára. Persze az editor sokféle szolgáltatása közül minden cso-
portnak csak annyit engedélyezzünk, amennyire a csoport tagjainak feltétlenül szüksége
van. Egy lehetséges megközelítést mutat a 87. ábra: a Default (egyszerűbb) profilt hasz-
nálhatják a be nem jelentkezett látogatók, míg az Advanced profilt az azonosított fel-
használók. Természetesen újabb profilok is létrehozhatók egyes csoportok számára.

87. ábra: FCKEditor beállítások

10.3.1 Globális beállítások


A Global profile beállításai minden profilra érvényesek, ezért nézzük meg először ennek
a lehetőségeit.
Ha többféle azonosított csoport számára is definiálunk profilt, akkor a Role precedence
részben adhatjuk meg e csoportok sorrendjét. E sorrendet akkor fogja a modul figyelem-
be venni, ha valamely felhasználó több csoportnak is tagja, és e csoportokhoz más profil
tartozik.
A Visibility settings alatt azt adhatjuk meg, hogy mely szövegszerkesztő blokkokban le-
gyen használható az FCKEditor, és melyekben ne jelenjen meg. (Néha ez utóbbi prakti-
kusabb.) A megadás történhet a megjelenő (include) vagy a kizárt (exclude) logika men-
tén, valamint az editor HTML mező ID-je55 (Fields...) és az oldal útvonala (Path...) alap-
ján. Nagyon ritka, amikor az alapbeállítások nem megfelelőek, ezért legtöbbször nem
kell a beállításokkal törődnünk.

55
Ennek megértéséhez HTML ismeretek kellenek.
10.További modulok kiválasztása, telepítése 97. oldal

10.3.2 A profilok beállítási lehetőségei


Az alap beállítások (Basic setup) alatt a profil nevét, és a profilt használni jogosult cso-
portot állíthatjuk be.

88. ábra: Profil alap beállítások

A további beállítások többsége is megfelelő szokott lenni, illetve a megértéshez szüksé-


ges ismeretek a tárgynak nem előfeltételei.

10.4. Az IMCE modul


Verzió: imce-6.x-1.1.
Az IMCE modul a fájlok feltöltéséhez, kezeléséhez, és speciálisan képek feldolgozásához
használható.
Alapvetően elérhető vele, hogy a szerverre feltöltsünk állományokat az általunk megha-
tározott könyvtárstruktúrába, és a feltöltött fájlokat többféle módon felhasználjuk (89.
ábra). Például lehetőségünk lesz egy feltöltött képet átméretezni, és később akár több ol-
dalba is beilleszteni a kép újabb feltöltése nélkül.
A felhasználók számára tárterület-kvótát alkalmazhatunk.

89. ábra: IMCE működés közben


98. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

A beállítások között legfontosabb az FCKEditorral való integráció engedélyezése. Ekkor


az editor kép beszúrás ikonjára kattintva a Kép tulajdonságai (90. ábra) ablakon megje-
lenik a Böngészés a szerveren gomb is. Ezen kívül érdemes még a méretekre (dimensi-
on) vonatkozó beállításokat és a feltöltési könyvtárat (upload directory) beállítani. (E
beállításokat csoportonként tehetjük meg.)

90. ábra: FCKEditor kép beszúrás

A Böngészés a szerveren gomb használatára az IMCE ablakát láthatjuk (89. ábra). Így
nem csak a saját gépünkről tölthetjük fel a fényképeinket, hanem a szerver fájlrendsze-
rébe egyszer feltöltött képeket utólag is szerkeszthetjük, és többször is felhasználhatjuk.

10.5. Az Image modul


Verzió: image-6.x-1.0-alpha3.
Az Image modul lehetővé teszi, hogy képeket küldjünk be tartalomként, azokat galériá-
ba szervezzük, a képeket más tartalomtípusokhoz kapcsoljuk, vagy akár tömeges impor-
tálást is végezhetünk. Ennek megfelelően a modul öt részre osztható: az alap Image mo-
dulra négy kiegészítő modul épül (Image Attach, Image Gallery, Image Import, Image
Magick Advanced Options).

10.5.1 Az Image alap modul


Az alap Image modul engedélyezése esetén a létrejövő Kép tartalomtípust használva tar-
talomként küldhetünk be egy képet. Konfiguráláskor egy kijelölt feltöltési könyvtárat,
megengedett legnagyobb méretet, valamint különböző megjelenítési módok maximális
méreteit állíthatjuk be.
Megjegyzés: Az Image és az IMCE modulok képkezelése egymástól független: se a konfigurációban, se a
felhasználásban nincs átjárhatóság. Ezért a szerző gyakorlata, hogy a kettő közül a legtöbb látogatónak
csak az egyiket (jellemzően az Image-t) engedélyezi.
10.További modulok kiválasztása, telepítése 99. oldal

Konfiguráció után a jogosultsággal rendelkező látogatók esetén már nincs akadálya a


kép beküldésének.

Image Attach
Az Image Attach engedélyezése esetén a tartalmainkhoz (hasonlóan a csatolt állomá-
nyokhoz) képeket is csatolhatunk. (Ehhez a tartalomtípus beállításait is frissítenünk
kell.)
Bármelyik engedélyezett tartalomtípus esetén a 91. ábrához hasonló lehetőségünk lesz.

91. ábra: Kép csatolása tartalom beküldésekor

10.5.2 Az Image Gallery modul


Az Image Gallery bekapcsolása után a Webhely beállítása / Galéria oldalon beállíthat-
juk az egy oldalon megjelenő képek számát, és kikapcsolhatjuk a sokak szerint zavaró
node információkat (dátum, beküldő).
Ez után keressük meg a Kategóriák adminisztrációs oldalt. Itt a modulunk elkészített a
képeink számára egy Galéria nevű kategóriát, amit először is konfigurálhatunk a szótár
szerkesztése linken. (Az alapértelmezésekhez képest a többszörös hierarchiát érdemes
átgondolni.)
Ettől kezdve egy Kép tartalom beküldésekor egyből megadhatjuk azt is, hogy melyik ka-
tegóriába tartozik.
A végeredmény magáért beszél: téma szerint böngészhető galéria oldalakat kaptunk (92.
ábra).
100. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

92. ábra: Galéria navigáció

10.5.3 Az Image Import modul


Az Image Import modul segítségével képek tömeges importálását oldhatjuk meg. Ehhez
először is a Kép importálás (Webhely beállítása) adminisztrációs oldalon be kell állíta-
nunk azt a könyvtárat, amelyikbe FTP eléréssel a képeket fel akarjuk tölteni, majd a
Kép importálás (Tartalom kezelés) adminisztrációs oldalon folytassuk a tömeges im-
portálást. Itt egy listát kapunk a könyvtárban talált fájlokról (amit az FTP kapcsolatunk-
kal közben feltöltöttünk), amiből kiválaszthatjuk, hogy melyeket akarjuk importálni,
melyik galériába kerüljenek a képek, és szövegeket is kapcsolhatunk a képeinkhez.

10.6. Az Administration Menu modul


Verzió: admin_menu-6.x-1.0.
Az adminisztrációs feladatok döntő része az Adminisztráció menüből érhető el – több-
nyire 2-4 oldalletöltés után. Az Administration Menu modul lehetővé teszi, hogy az Ad-
minisztráció menü fontosabb szolgáltatásai újabb oldalletöltések nélkül bárhonnan elér-
hetők legyenek. A 93. ábrán jól látható, hogy akár a kezdőoldalról is közvetlenül (egy ol-
dalletöltés árán) el tudunk jutni a Felhasználó hozzáadása oldalra.
10.További modulok kiválasztása, telepítése 101. oldal

93. ábra: Az Administration menu modul használat közben

A modul telepítése a szokásos módon történik. Konfigurációként egyetlen beállítási le-


hetőségünk annak eldöntése, hogy kinek legyen joga a a menüt használni. (Természete-
sen ettől a jogtól még nem lesz senkinek joga adminisztrációs funkciók ellátására, tehát
az egyéb jogokkal szinkronban kell engedélyezni.)

10.7. A Captcha modul


Verzió: captcha-6.x-1.0-rc2.
A Captcha modul megpróbálja megakadályozni, hogy a bot programok56 regisztrálni,
vagy névtelenül hozzászólást beküldeni tudjanak. Ez az előzőnél hatásosabb, de ugyan-
akkor a látogatók számára kényelmetlenebb lehetőség.
A Captcha modul nem egy, hanem három, egymásra épülő modul. Célja, hogy a honla-
pokat linkekkel teleszemetelő robotok ellen védelmet nyújtson. Legelterjedtebb megol-
dása (Image captcha) egy képre generált ellenőrző kód alapján működik, de sokan alkal-
mazzák a szöveges kérdéseket is (Text captcha).

56
A spam hozzászólásokat bizonyos intelligenciával rendelkező programok küldik, többnyire zombi gépek-
ről (a gép tulajdonosának tudta nélkül).
102. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

94. ábra: Az Image Captcha modul működése

A konfigurációs oldalon több oldalhoz (pl. regisztráció) beállíthatjuk, hogy melyik capt-
cha módot akarjuk használni, vagy akár el is tekinthetünk az oldalon ettől (95. ábra).

95. ábra: Captcha beállítások

A 96. ábra az Image captcha beállításait mutatja.


10.További modulok kiválasztása, telepítése 103. oldal

96. ábra: Az Image captcha beállításai

A Hozzáférés szabályozása oldalon egyes csoportokat teljesen felmenthetünk a captcha


használata alól.

10.8. Az External Links modul


Verzió: extlink-6.x-1.6.
Az External links modul a honlapról kifelé mutató linkekhez kapcsolódó szolgáltatáso-
kat nyújt. A konfigurációja igen egyszerű, mindössze az alábbi 3 beállítási lehetőségünk
van:
104. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

97. ábra: External links configuráció

● akarjuk-e a 97. ábrán is látható ikont a linkek után


● az aldomaineket belső oldalnak tekintjük-e (ha igen, akkor az előző kép se fog
megjelenni)
● új ablakban akarjuk-e57 a külső linkeket megnyitni.

10.9. A Lightbox2 modul


Verzió: lightbox2-6.x-1.8.
Függőség: jquery_update.
A Lightbox2 modul segítségével képeink megjelenítését a látványos Lightbox58 effektu-
sával fűszerezhetjük.

57
A szerző személyes véleménye szerint ez inkább a látogatókra kellene bízni, ezért a bekapcsolását nem
javasolja.
58
http://www.huddletogether.com/projects/lightbox2/
10.További modulok kiválasztása, telepítése 105. oldal

98. ábra: A Lightbox2 működés közben

Telepítése előtt a JQuery Update modult is telepítenünk kell.


A konfigurációja igen összetett, de már az alapbeállításokkal is képes az Image modullal
létrehozott képek esetén a megfelelő működésre.

10.10.A SpamSpan modul


Verzió: spamspan-6.x-1.0.
A SpamSpan modul a szövegekben megjelenő e-mail címek elrejtéséért felelős.
Szemlátomást a használata esetén semmi különbség nem látszik, de ha az oldal forrását
megtekintjük, hasonló HTML kódot fogunk látni:
<span class="spamspan">
<span class="u">nagy.gusztav</span>
[at]
<span class="d">gamf [dot] kefo [dot] hu</span>
</span>
A modul szerver oldalon így „elrontja” az e-mail címeket, hogy a böngészőben Java-
Script segítségével „kijavítsa” azokat. Ebből a látogató semmit nem vesz észre, de a spam
robotok munkáját jelentősen megnehezíti.
A modul működése beviteli szűrőként történik, így a Beviteli formáknál tudjuk konfigu-
rálni is:
● beviteli formánként tudjuk engedélyezni vagy tiltani
● az engedélyezett beviteli formák beállításánál tudjuk finomhangolni (mit mire
cseréljen):
106. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

99. ábra: A SpamSpan finomhangolása

Érdemes az alapbeállításokat lecserélni, hogy ezzel is nehezítsük a robotok dolgát.

10.11.A Webform modul


Verzió: webform-6.x-2.1.3.
A Webform modul olyan felhasználóktól származó adatgyűjtésre használható, amely
adatok nem a honlap részévé szántak, hanem külső felhasználásra. Tipikus példa a kü-
lönböző (pl. konferencia) jelentkezések lebonyolítása (100. ábra).
10.További modulok kiválasztása, telepítése 107. oldal

100. ábra: Konferencia jelentkezés Webform segítségével

A modul telepítése után egy Űrlap nevű tartalomtípus jön létre. Az űrlap összeállítása
igen összetett feladat, itt nincs lehetőségünk a teljes ismertetésre.
Megfelelő jogosultsággal a beküldött adatok megtekinthetők, vagy le is tölthetők további
felhasználásra.

10.12.Ellenőrző kérdések
● Honnan tudunk kiegészítő modulokat letölteni?
● Kiegészítő modul kiválasztásánál/alkalmazásánál mire érdemes figyelni?
● Írja le a kiegészítő modulok telepítésének legfontosabb (általános) lépéseit!
● Mi a Poormanscron modul szolgáltatása?
● Mi a Pathauto modul szolgáltatása?
● Mi az FCKEditor modul telepítésének nehézsége?
● Mi az IMCE modul szolgáltatása?
● Mi az Image modul alapszolgáltatása?
● Az Image modulok kívül milyen modul szükséges kategorizálható képgalériák lét-
rehozásához?
● Mi a Captcha modul célja? Hogyan éri el azt?
108. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

10.13.Feladatok
● A fejezet moduljai közül válogassa ki a honlapja számára fontosakat!
● Keresse meg és töltse le a legfrissebb stabil verziókat!
● Telepítse és alkalmazza a modulokat a honlapjához!
● Keressen további hasznos modulokat, és tesztelje azokat!
11.Felhasználókezelés 109. oldal

11. Felhasználókezelés
A honlapunk kialakításában eddig egyedüli szereplőként vettünk részt. A látogatók visz-
szajelzéseire számítva, vagy ha nem mindenki számára szeretnénk minden tartalmat
publikálni, elengedhetetlen lesz a felhasználók kezelésével foglalkoznunk.
Jelenleg tehát kétféle felhasználóval találkozott az oldalunk:
● Névtelen, nem azonosított felhasználó, aki minden publikus tevékenységet meg-
tehet az oldalon.
● Adminisztrátor felhasználó (mi magunk), aki mindent megtehet az oldallal.

11.1. Felhasználók létrehozása


Először is el kell döntenünk, hogy a felhasználók regisztrációját szeretnénk engedélyez-
ni, vagy a felhasználó létrehozás jogát magunknak akarjuk megtartani. (A kettő közötti
átmeneti állapot az adminisztrátori elfogadáshoz kötött regisztráció.)
Hasznos az is, ha a regisztráció során „kikényszerítjük” egy valódi e-mail cím megadását,
hogy szükség esetén meg tudjuk keresni a felhasználóinkat. (Ez esetben az oldalunknak
kell tudni levelet küldeni.)

101. ábra: Felhasználó beállításai

Érdemes kitölteni a regisztrációs irányelveket is a későbbi félreértések elkerülése érde-


kében.
Ez után különböző, a rendszer által (az adminisztrátor nevében) küldött e-mail üzenetek
szövegét fogalmazhatjuk át.
110. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

A felhasználók egy része barátságos gesztusnak veszi, ha regisztrált felhasználóként sze-


mélyessé tehetik a felhasználói megjelenésüket. Éppen ezért hasznos lehet a felhaszná-
lóknak engedélyezni az aláírásuk megszerkesztését és egy személyes képük feltöltését.

102. ábra: Felhasználói kép támogatás

A beállítások mentése után a regisztrált látogatók a saját adataik között megadhatják a


fényképüket is.

11.2. Felhasználók kezelése


A létező felhasználóink adatait adminisztrátorként bármikor módosíthatjuk.
Ha sok felhasználónk van, akár név szerint is kereshetünk közöttük, de még hasznosabb
szolgáltatásokat érhetjük el a Felhasználók adminisztrációs oldalon. Itt felhasználót lét-
rehozni, felhasználókat listázni, szűrni, vagy akár csoportos műveletet végrehajtani is tu-
dunk.
11.Felhasználókezelés 111. oldal

103. ábra: Felhasználók

11.3. Jogosultságkezelés
A látogatók regisztrációjának legfontosabb oka, hogy az egyes látogatóknak pont annyi
jogot tudjunk adni, mint amennyire (a honlap tulajdonosa szerint) szüksége van. Mivel
egy honlap esetén akár sok ezer felhasználó is lehet, lehetetlen lenne (de kisebb létszám
esetén sem lenne célszerű) a jogokat felhasználónként meghatározni. Ehelyett a látoga-
tóinkat csoportonként fogjuk jogosultságokkal ellátni. (Természetesen egy látogató több
csoportnak is tagja lehet, ekkor a kapott jogok összeadódnak.)
Alapértelmezésben két csoport létezik a Drupalban, melyek nem is törölhetők:
● Anonim felhasználók: nem regisztrált, illetve nem belépett felhasználók, vagy
más néven látogatók.
● Azonosított felhasználók: ebbe a csoportba kerül automatikusan minden regiszt-
rált felhasználó.
Ezen kívül szerepkörönként újabb csoportokat is létrehozhatunk (104. ábra).
112. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

104. ábra: Csoportok

A tényleges jogokat tehát csoportoknak (vagyis a csoport tagjainak) engedélyezhetjük. A


jogosultságok szerkesztése link csoportonként, míg a Felhasználó kezelés, Jogosultsá-
gok oldalon az összes csoportnak együtt tudjuk a jogosultságait szerkeszteni.
11.Felhasználókezelés 113. oldal

105. ábra: Jogosultságok beállítása

11.4. Ellenőrző kérdések


● Hogyan tudunk egy felhasználónak pl. az Írás tartalomtípushoz tartalombeküldé-
si jogot adni?
● Van-e a Drupalban olyan regisztrált felhasználó, amelyik nem tagja semelyik cso-
portnak? Indokolja!
● Hogyan aktiválhatunk/deaktiválhatunk egy felhasználót?
● Hogyan állíthatjuk be a regisztráció módját?
114. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

12.Blog oldal kialakítása


A blog oldal alapvető funkciói közé az időrendben megjelenő bejegyzések és a hozzáfű-
zött megjegyzések tartoznak. Éppen ezért az oldal kialakításához megfelel akár az alap-
értelmezett Írás tartalomtípus is, esetleg Bejegyzésre (vagy Post-ra) módosítva.

12.1. Tartalmaink címkézése


Blog oldalak esetén tipikusnak számít a címkék (más néven) tagok alkalmazása. Ennek
érdekében az alaprendszer moduljai közül a már megismert Taxonomy modult kell
használnunk.
Először is hozzunk létre a Kategóriák adminisztrációs oldalon egy új szótárat, például
Témák névvel, majd finomhangoljuk a szótár szerkesztése oldalon (106. ábra).
A legfontosabb a következők bekapcsolása:
● Szabad címkézés
● Többszörös választás
● Szükséges
(A szabad címkézés elvi kérdéseihez tartozik, hogy egy tartalom esetén hány címkét is
használjunk. Az egyik véglet szerint egy is elegendő, a másik szerint akár 8-10 is elfogad-
ható. A szerző véleménye szerint a 2-5 közötti címke-számot csak ritkán érdemes túllép-
ni.)
12.Blog oldal kialakítása 115. oldal

106. ábra: Kategória szerkesztése a címkékhez

E beállítások hatására a tartalmaink beküldésekor a Cím mező után megjelenik a Témák


mező is, amibe legalább egy kapcsolódó címkét be kell írnunk:

107. ábra: Címkék megadása

A beírásnál eddig még nem használt címkéket is definiálhatunk, de akár egy korábban
használt címkét is kereshetünk. Ez utóbbi esetben elég néhány betűt begépelni a cím-
kénkből, és máris elkezd animálni a sor végén található kis (eddig üres kört formázó) ké-
pünk. (A háttérben aszinkron kérések futnak le a szerver felé, az AJAX technológiát fel-
használva.) A találati listából már könnyedén választhatunk (108. ábra).
116. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

108. ábra: Korábbi címkék közötti keresés

Érdemes még megemlíteni, hogy a címkéket egymástól vessző karakterrel kell elválasz-
tanunk.
A címkézéssel nem csak egyszerű információt közöltünk a látogatóinkkal, hanem egy
újabb navigációs lehetőséget is nyújthatunk: a kész tartalmaink valamelyik címkéjére
kattintva a választott címkéhez tartozó összes bejegyzés listája jelenik meg:

109. ábra: Kategória listázása

12.2. A Tagadelic modul


Az előbb bemutatott navigációt kicsit tovább viszi a Tagadelic külső modul. Ennek lé-
nyege, hogy a címkéket egy (tartalomjegyzékhez hasonló, ún. címkefelhő) oldalra össze-
12.Blog oldal kialakítása 117. oldal

gyűjti, és a címkékhez tartozó bejegyzések számosságát betűmérettel szimbolizálja (110.


ábra).

110. ábra: Címkefelhő

Nézzük meg a modul beállításait is:

111. ábra: Tagadelic beállítások

Természetesen a modul tud blokkot is szolgáltatni, amit a blog oldalon valahol fixen el-
helyezhetünk:
118. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

112. ábra: Tagadelic blokk az oldalon

Jól látszik az ábrán, hogy nem szerencsés túl hosszú, több szóból álló címkéket alkal-
mazni. Néha azonban nehéz elkerülni is.

12.3. A Comment modul


A blog oldalaknál nagy jelentőséggel bír a látogatók interakciójának lehetősége: ez elő-
ször is a hozzászólások lehetőségében nyilvánul meg.
Kapcsoljuk be a Comment rendszermodult, majd konfiguráljuk a Hozzászólások admi-
nisztrációs menü Beállítások fülén (113. ábra). Itt csupán néhány beállítást szükséges
magyaráznunk.
12.Blog oldal kialakítása 119. oldal

113. ábra: Hozzászólások beállítása

A megjelenési mód beállításánál választható Beágyazott mód időrend helyett beljebb


kezdve, az érkezett válaszok szerint csoportosítva történő megjelenítést teszi lehetővé.
Ezt a megközelítést még elég kevés oldalon használják, pedig a szerző véleménye szerint
sokkal jobban követhetővé teszi a hozzászólások olvasását.
120. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

Természetesen nem szabad arról sem megfeledkeznünk, hogy a hozzászólások beküldé-


sének még további feltételei is vannak:
● Az adott tartalom beküldésekor a Hozzászólás beküldési beállítások dobozban az
Olvasható/Írható beállítás szerepeljen. (A Csak olvasható beállítás például egy
lezárt fórum témánál felelne meg.)
● A Jogosultságok adminisztrációs oldalon a hozzászólások hozzáférése (megjele-
nítése) mellett a beküldésére is adjunk lehetőséget, lehetőleg adminisztrátori el-
fogadás nélkül is (114. ábra).

114. ábra: Jogosultságok

A konfiguráció elvégzése után várhatjuk oldalunkhoz a hozzászólásokat.


Érdemes még megemlíteni, hogy a Hozzászólások adminisztrációs oldal alapértelmezett
(Listázás) fülén hasonló listázási és tömeges módosítási lehetőségeik vannak, mint a
Tartalom adminisztrációs oldalon a tartalmainkra nézve.

12.4. Védekezés a spam hozzászólások ellen


Ha nem regisztrált látogatók számára engedélyezzük a hozzászólások beküldését, akkor
van esélye, hogy spam hozzászólások célpontjává válik oldalunk. (Itt a spamelők célja
olyan kulcsszavak és kifelé mutató linkek elhelyezése az oldalon, amelyekkel a saját ol-
daluk keresőoldalakon való pozícióját emelni szeretnék. Pl. 115. ábra.)

115. ábra: Spam hozzászólás (részlet)

A védekezésnek több lehetséges módja is van.


● Kikapcsoljuk a hozzászólások lehetőségét (nem megoldás)
● Kikapcsoljuk a névtelen hozzászólás lehetőségét (nem mindig megoldás)
○ A kapcsolati adatok megadását letiltjuk
● Alkalmazunk valamilyen spam szűrő modult
● Alkalmazunk valamilyen captcha modult.
12.Blog oldal kialakítása 121. oldal

12.5. Ellenőrző kérdések


● Mit értünk címkézés (tag-elés) alatt?
● Hogyan tudjuk használatba venni a blog oldalaknál tipikus címkézést? Sorolja fel
a legfontosabb lépéseket!
● Hogyan lehet az egy címkéket tartalmazó tartalmakat kilistázni?
● Mit jelent megjegyzések listázásánál a beágyazott mód?
● Mi a spam hozzászólások célja? Hogyan tudunk ellene védekezni?
122. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

13.Közösségi oldal kialakítása


A közösségi oldal – jegyzetünk szempontjából – elsősorban a közösségi tartalom-előállí-
tás, és csak másodsorban a közösségi kapcsolatok alakítása köré épülő szolgáltatásokat
jelenti.
A közösségi oldalaknál a korábban bemutatott Comment modul alapvető jelentőségű. A
szintén alapvetőnek tekinthető fórum szolgáltatáshoz is elengedhetetlen.

13.1. A Forum modul


A Forum modul célját talán nem érdemes túlságosan részletezni, a témakörökbe osztha-
tó, Téma mentén szerveződő többszereplős beszélgetéseket értjük alatta. A Forum alap-
modul, és a Comment modul bekapcsolása szükséges a működéséhez.
A modul engedélyezésekor automatikusan létrejön a Fórum téma tartalomtípus, amit
céljainknak megfelelően konfigurálhatunk.
Ezen kívül létrejön a kategóriák között is egy új szótár Fórumok néven. Ennek a szótár-
nak a használatával tudjuk meghatározni a klasszikus fórumok működésénél megszokott
témakörök rendszerét. A szótárt szerkesztve láthatjuk, hogy a fórum néhány területen
korlátozza a szokásos kategória-beállításokat: például nem engedélyezi egy téma több
kifejezéshez kapcsolását, vagy a szabad szavas témamegjelölést.
Plusz szolgáltatásként viszont keressük meg az Adminisztráció menü Fórum menüpont-
ját. Itt a beállítások fülön néhány – magáért beszélő – beállítást tehetünk meg. Az igazi
érdekesség viszont, hogy a fórumainkat itt listázva megjelenik a csoport (container) fo-
galma. Itt tehát olyan fórum csoportokat tudunk létrehozni, amelyek csak a tartalmazott
fórumok miatt vannak, közvetlen témát indítani nem tudunk bennük. (Példának tökéle-
tesen megteszi egy Állás csoport, amely a tartalmazott Állást keres és Állást kínál fóru-
mokon keresztül lesz használható, de közvetlenül nem.)
Amennyiben nem szimpatikus ez a megközelítés, törölhetjük a Fórumok nevű szótárun-
kat, és létrehozhatunk helyette egy másik, a céljainkban megfelelően konfigurálható szó-
tárt.

13.2. A Poll modul


A Poll modul segítségével klasszikus szavazás bonyolítható le. A modul a Drupal alap-
moduljai között bekapcsolható, ezután egy új tartalomtípusként jelenik meg. Küldjünk
be egy új szavazást:
13.Közösségi oldal kialakítása 123. oldal

116. ábra: Szavazás beküldése

A szavazás beküldésekor a szokásos cím mező a Kérdés nevet kapja. Alapértelmezetten 5


válasz lehetőséget adhatunk meg, de ez bővíthető. Érdemes az ábrán megfigyelni, hogy a
szavazási lehetőségek szövegén kívül a szavazatok alapértelmezett számát (0) is módo-
síthatjuk. (Itt nem feltétlenül csalási lehetőségre kell gondolni, akár egy máshol elkez-
dett szavazást is lehet ilyen módon folytatni.)
A beküldéskor beállíthatjuk a szavazás időtartamát, illetve bármikor kézzel is lezárhat-
juk a szavazást, ha utólag szerkesztjük.
Nem szabad elfeledkezni arról sem, hogy a szavazást és a szavazás eredményének meg-
tekintését kinek is engedélyezzük: a Hozzáférés szabályozása oldalon ezt is beállíthat-
juk.
Hasznos lehetősége még a modulnak a Legfrisebb szavazás blokk. Így mindig lesz egy
aktuális szavazás az oldalon.
124. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

13.3. A Blog modul


Első ránézésre furcsának tűnhet, hogy a Blog modul nem a 12. (Blog oldal kialakítása)
fejezetben került elő. Ha azonban alaposabban megnézzük a modul szolgáltatásait, ak-
kor jól látszik, hogy olyan oldalak esetén a leghasznosabb, ahol több felhasználó egy ol-
dal keretein belül blogol.
A blog modul engedélyezése után elérhetővé válik a Blogbejegyzés tartalomtípus, amit
persze kedvünk szerint testre szabhatunk, vagy például szótárt hozhatunk létre a címké-
zéshez, végül pedig szabályozhatjuk (Jogosultságok), hogy mely csoportok hozhassanak
létre Blogbejegyzést. A jogosultsággal rendelkező felhasználók máris tudnak bejegyzést
beküldeni.
A beküldés után a bejegyzésnél jól láthatóan megjelenik a blogbejegyzésre való utalás is
(a címkékhez hasonlóan):

117. ábra: Blogbejegyzés beküldés után

Természetesen itt is linkről van szó, a Nagy Gusztáv blogja linkre kattintva a felhaszná-
ló további bejegyzései is elérhetővé válnak. Ehhez hasonló funkciójú hivatkozás kerül a
felhasználói oldalra is:

118. ábra: A blogbejegyzések elérhetők a felhasználói oldalról is


13.Közösségi oldal kialakítása 125. oldal

A modulnak az is hasznos szolgáltatása, hogy egyedi RSS csatornát kérhetünk felhaszná-


lónként. (Például a http://kbgy.hu/?q=blog/1/feed útvonalon.)

13.4. A Book modul


A Book modul segítségével a tartalmainkat (node-okat) hierarchiába szervezhetjük
(mint egy könyv fejezetei és alfejezetei). A Book alapmodul engedélyezése után megjele-
nik a Könyv tartalomtípus, amelynek újdonsága lesz a plusz hierarchia szerinti navigáció
felépítése és alkalmazása.
A Könyvlap beküldésekor megjelenik a Szülő lista is, ahol beállíthatjuk a könyvlap szülő
elemét. Másrészt a kész könyvlap esetén megjelenik a Gyermek lap hozzáadása szer-
kesztési link is, amivel a szülő kiléte is egyértelművé válik.
Végül meg kell még említeni, hogy egy könyvlap gyermekeként tetszőleges más típusú
tartalom is beszerkeszthető. Ehhez a beillesztendő tartalmat megnyitva megjelenő Váz-
lat fület kell alkalmaznunk.
A blokkok között megjelenő Könyv navigáció blokk nagyon szépen áttekinthető menüt
ad a navigációhoz.

13.5. Tartalmak megosztása RSS csatornákon


A kezdőoldalon is megjelenő tartalmaink megosztására könnyedén tudunk szolgáltatást
nyújtani. Ennek legegyszerűbb módja a Tartalom megosztása blokk (119. ábra) bekap-
csolása, aminek hatására elérhetővé válik egy RSS ikon, amihez az rss.xml útvonal van
rendelve.

119. ábra: Tartalom megosztás

Ezen kívül bizonyos sminkek speciálisabb RSS csatornákhoz is adhatnak linkeket, pl. a
Kategóriák alapján (pl. taxonomy/term/31/feed útvonal), vagy a Blog modul csoportosí-
tása szerint (blog/1/feed). (Természetesen az RSS csatornákat nem a smink állítja elő,
csak az útvonalakat leshetjük el belőle.)

13.6. Az Aggregator modul


Az Aggregator modul lehetővé teszi, hogy a honlapunkon más honlapok RSS kimeneteit
tartalomként automatikusan megjelenítsük.

13.6.1 Csatorna létrehozása


A csatorna egyetlen RSS forrás definiálását, a letöltések elvégzését és publikálását teszi
lehetővé. Működéséhez cron futtatás szükséges, hiszen nem állandóan, csak bizonyos
126. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

időközönként van szükség (és lehetőség) a távoli szerver meglátogatására, a csatorna


tartalmainak letöltésére.
Hozzunk létre egy új csatornát (120. ábra).

120. ábra: Csatorna létrehozása

A címen kívül természetesen az URL-t és a frissítési időt is meg kell adnunk. (Ez utóbbi
az az idő, amennyi maximális késéssel az RSS tartalmak megjelennek az oldalunkon.)
A csatorna kimenetét a hozzá tartozó blokk bekapcsolásával tekinthetjük meg (121.
ábra).

121. ábra: Aggregator blokk

A 121. ábrán érdemes még megfigyelni, hogy (megfelelő jogosultságokkal) lehetőségünk


van egyetlen gombnyomással (b) a tartalomra reflektálva saját tartalmat létrehozni (122.
ábra).
13.Közösségi oldal kialakítása 127. oldal

122. ábra: Aggregator tartalom alapján blogbejegyzés

További érdekes lehetőségeket nyújt a kategóriák használata, amivel több RSS csatorna
tartalmát együtt tudjuk kezelni.

13.7. Ellenőrző kérdések


● Fórum használata esetén mi a szerepe egy szótár létrehozásának?
● Hogyan tudjuk megoldani, hogy az oldalunk rendszeres látogatói könnyen követ-
hessék az új fórum témákat és az új hozzászólásokat?
● Mi a Book modul specialitása?
● Mely tartalmak fognak megjelenni az RSS csatornán?

13.8. Feladatok
● Bővítse honlapját a célkitűzéseinek megfelelő modulokkal!
● Hozzon létre olyan közösségi oldalt, ahol a szerkesztők csoport tagjainak blogolá-
sa adja a fő tartalmat!
128. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

14.Sminkek használata
14.1. Sminkek telepítése
A modulokhoz hasonlóan külső sminkeket is telepíthetünk Drupal honlapunk alá. Ehhez
a letöltött smink állomány tartalmát a sites/all/themes alkönyvtárba kell másolnunk,
majd a sminket engedélyezni a Sminkek adminisztrációs oldalon.
Jó azonban tudni, hogy a sminkek minősége jelentősen eltérhet egymástól. Itt nem csak
a vizuális megjelenésre, vagy a HTML/CSS szabványosságra, hanem további tipikus hi-
bákra is érdemes felkészülni. Például:
● nem lefordítható szövegek kerültek a sminkbe
● bizonyos (a Drupal által ismert) kimeneti információkat nem jelenít meg (pl. az
új jelzés a tracker modul működése esetén)
● a beépített Dátum beállításokat nem veszi figyelembe
● bizonyos moduloktól a smink szétesik
A megfelelő smink kiválasztása után a sminkünket testre is szabhatjuk:

123. ábra: Sminkek beállításai


14.Sminkek használata 129. oldal

A sminkek nem minden (egyébként a Drupal által konfigurálható) tartalmi elemet tud-
nak figyelembe venni. A fenti ábra bal oldalán minden kiválasztható, de egyes sminkek
esetén lehetnek szürke elemek is.
Az ábra jobb oldalán látható, hogy tartalomtípusonként lehet a beküldési információk
(név, dátum) megjelenítéséről dönteni. (Például hírek esetén megjeleníteni, de oldalak
esetén nem.)
Egy tetszőleges sminket az oldalhoz a következők segítségével tudjuk illeszteni:
● logó cseréje
● webhely ikon cseréje
● Webhely információk oldalon a honlap nevének beállítása (49. ábra)
Természetesen ezzel még csak alkalmaztuk, és nem szabtuk személyre a sminket.

14.2. Sminkek módosítása


Megjegyzés: a fejezet csak bevezető jellegű, és – mivel a tárgynak nem előfeltétele sem-
milyen webfejlesztői ismeret, ezért – a számonkérésben nem fog szerepelni.
Az alapmodulban szereplő vagy más által készített sminkek gyakran nem felelnek meg a
megrendelő és/vagy a látogatók igényeinek. Ezért két lehetőségünk van:
● saját sminket hozunk létre59, vagy
● egy meglévő sminket módosítunk.
Természetesen itt csak ez utóbbi témával fogunk foglalkozni. Nézzünk néhány lehetősé-
get.

14.2.1 Képek cseréje


Szükséges előismeret: képszerkesztő program alkalmazása.
Sok smink60 tartalmaz egy fő dekorációs képet, amely alap webes ismeretekkel cserélhe-
tő, és ezzel a honlap témájához illő hangulatra hangolható.

124. ábra: A szerző honlapja,

59
A sminkek létrehozásához vagy módosításához a http://drupal.org/phptemplate oldalon találhatunk
elegendő információt.
60
Például Marinelli, Andreas 02, Terrafirma Theme
130. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

125. ábra: és a dekorációs kép

A következő lépéseket kell elvégeznünk:


1. Keressük meg a dekorációs kép pontos helyét a böngészőnk segítségével: a képen
jobb egérgombot nyomva, a helyi menüből válasszuk ki a Háttérkép megjeleníté-
se (vagy hasonló) menüpontot. Ez a szerző által használt GlossyBlue61 smink ese-
tén a sites/all/themes/glossyblue/images/header-bg.jpg (125. ábra).
2. FTP kapcsolatunkkal töltsük le a képet a saját gépünkre. (Készítsünk biztonsági
másolatot is róla!)
3. Képszerkesztő programmal hozzunk létre ugyanekkora és ugyanilyen nevű képet.
4. Töltsük fel a képet az eredetit felülírva.
5. Frissítsük a böngészőnkben az oldalt.
Ezzel a módszerrel persze egyes további képek is lecserélhetők. Mindig meg kell azonban
győződnünk arról, hogy a kép tényleg eredeti méretében fog-e minden esetben megje-
lenni.
Megjegyzés: a webes tartalmak többlépcsős (böngésző, proxy stb.) gyorsítótárazása
miatt előfordulhat, hogy a kép látszólag nem cserélődik. De a Ctrl + F5 vagy Ctrl + Dele-
te kombinációk rövid időn belül segíteni szoktak.

14.2.2 CSS formázás


Szükséges előismeret: HTML és CSS.
Kisebb módosítások bármelyik smink esetén eszközölhetők, de komolyabb módosításra
olyan sminket érdemes választani, amelyik direkt a CSS szintű továbbmódosításra lett
kialakítva62.
Megjegyzés: a következő leírás nem a legjobb megközelítés, de itt ennek bemutatására
van lehetőségünk.
1. Keressük meg a sminkünk könyvtárában a style.css fájlt
2. Szerkesszük a CSS szabályainak megfelelően
3. Töltsük fel a sminkhez készített képeinket is a megfelelő (tipikusan images nevű)
alkönyvtárba
4. Teszteljük az oldalak újratöltésével
Tesztelni több, különböző jellegű oldalon, és több elterjedt böngészőben is érdemes.

61
http://drupal.org/project/glossyblue
62
Például Framework, Zen, Artists C01, Hunchbaque,
14.Sminkek használata 131. oldal

14.2.3 Szerkezeti átalakítás, hibák javítása


Szükséges előismeret: PHP, (sablonrendszerek).
A szerkezeti átalakítás legegyszerűbb esete, ha a smink által előállított HTML oldal szer-
kezete nem megfelelő a számunkra. Ekkor a smink page.tpl.php, esetleg block.tpl.php,
box.tpl.php, comment.tpl.php vagy node.tpl.php állományának átszerkesztésére van
szükség. Ezek ismertetése azonban jelentősen meghaladja e jegyzet lehetőségeit.

14.3. Ellenőrző kérdések


● Hogyan lehet egy más által készített sminket használatba venni?
● Mik a drupal.org-on található sminkek használatának hátrányai?

14.4. Feladatok
● Keressen egy a honlapja számára megfelelő sminket!
● Telepítse, majd a lehető legtöbb szituációban tesztelje a sminket!
● Hozzon létre egy teszt felhasználót, akinek engedélyezze a smink használatát!
132. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

15.A Views modulok


A Views modul a tartalmaink listázására szolgál. Az alapbeállítások szerinti Drupal
rendszer által nyújtott szolgáltatás (kezdőoldal a friss Címlapra kerülő tartalmakkal) is
megvalósítható, sőt továbbfejleszthető a Views modul segítségével.
A modul használatával az adminisztrátor olyan oldalakat és blokkokat tud létrehozni,
amelyekkel bizonyos tartalmak (pl. fórum témák vagy blog bejegyzések) teljes vagy szűrt
listájának időrendben, abc szerinti, vagy akár más sorrendben történő megjelenítését te-
szi lehetővé.

15.1. Telepítés
E modul használatba vételét is a modul letöltésével és a fájlok bemásolásával kell kezde-
nünk. Ezután kapcsoljuk be a Views modult, hogy nézeteink lehessenek, és a Views UI
modult, hogy a nézeteket szerkeszthessük, újakat hozhassunk létre. Ez utóbbi modulra
csak a fejlesztés idejére lesz szükségünk, a nézetek elkészülése után akár ki is kapcsol-
hatjuk.
Az adminisztrációs menü Views (Nézetek) linkje a nézeteink kezelését és létrehozását le-
hetővé tevő oldalra vezet.

126. ábra: Nézetek listája

Nézzük meg először az Alapértelmezett nézeteket. Ezek olyan nézetek, amelyek még
nem élnek, de ha bekapcsoljuk (Enable), akkor az adott szolgáltatást megvalósítását át-
veszi a Drupal egyéb részeitől.
15.A Views modulok 133. oldal

15.2. Kezdőoldal
A frontpage nézet szerkesztésével (sok mindent még nem fogunk változtatni) betekin-
tést nyerhetünk a nézetek működésébe. Nézzük meg, hogyan is áll elő az alapértelmezett
kezdőoldalunk. A 127. ábrán jól látszik, hogy igen összetett szerkezetű modullal állunk
szemben.

127. ábra: A frontpage nézet szerkesztése

A modul szerkesztőfelülete AJAX alapú, és balról jobbra, és fentről lefelé logikai hierar-
chiába szervezett.
Először is az alap beállításokat (Defaults) láthatjuk, szerkeszthetjük, de már most látszik
az is, hogy a frontpage kétféle megjelenítést valósít meg: Page és Feed. Előbbit a kezdő-
oldalt böngészőből nézve, utóbbit pedig RSS olvasóval olvasva érhetjük el.
134. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

15.2.1 Mi jelenik meg a nézetben?


Ha semmi egyéb beállítás nem szerepelne, akkor a nézetben minden létező tartalom
(node) megjelenne. Kezdőoldalra viszont nem mindent kell kitenni, csak azt, ami a felté-
teleinknek megfelel. A Szűrők dobozban látszik a két feltételünk:
● Tartalom: Címlapra kerül True
● Tartalom: Közzétett True
Vagyis csak a mindkét jelzőt kipipálva beküldött tartalmak kerülnek a címlapra.
Persze ilyen tartalomból is sok lehet, ezért fontos a rendezési sorrend (Sort criteria):
● Tartalom: Sticky asc
● Tartalom: Post date asc
Vagyis a kiemelt tartalmak elől, a többi utána; és a beküldés dátuma szerint csökkenő
sorrendben.
A Basic settings alatt még az
● Use pager: Igen
● Items per page: 10
érdekesebbek számunkra: 10 tartalmanként, lapozóval fog megjelenni.
Természetesen e jellemzőket meg is változtathatjuk, pl. állítsuk 20-ra az előbbi számot:
a 10-es számra klikkelve megjelenik a szerkesztő felület.

128. ábra: Views tulajdonság szerkesztése

Az Offset értékével néhány tartalmat kihagyhatunk a listázásból63.

63
Egy lehetséges példa: egyik nézettel csak az első öt tartalmat listázzuk címmel, összefoglalóval, a másik
nézettel ötöt kihagyva, a következőket listázzuk csak címmel, összefoglaló nélkül, majd a két nézetet egy-
más alá tesszük a kezdőoldalra. A második nézethez fogjuk az Offset értékét 5-re állítani.
15.A Views modulok 135. oldal

A frontpage nézet létrehozásával akár testre is szabhatjuk és le is cserélhetjük a kezdőol-


dalt az Alapértelmezett címlap beállításával (49. ábra).

15.2.2 Hírek megjelenítésének időzítése


A Drupalt használva felmerülhet az az igényünk, hogy tudjunk olyan tartalmakat is be-
küldeni, amelyek nem azonnal, hanem csak egy bizonyos idő elteltével jelenjenek meg az
oldalon. Felmerülhet az ötlet, hogy adjunk meg olyan beküldési időt, ami csak a jövőben
fog bekövetkezni. Ez azonban önmagában még nem hozza a várt eredményt, hiszen az
előbb láttuk, hogy pontosan milyen tartalmak fognak a kezdőoldalon megjelenni. Kis
trükkel azonban megoldhatjuk, ha egy újabb szűrőt veszünk fel a fronpage nézethez a
Tartalom: létrehozás idejéhez.

129. ábra: Szűrő hozzáadása

Természetesen ez a megoldás csak a kezdőoldalon nem jeleníti meg a megadott időpon-


tig a tartalmainkat, de más módon (pl. Friss tartalom, RSS, Keresés) a tartalom elérhető
marad. A legegyszerűbben például a most leváltott node útvonalon. (Ezt azonban a leg-
több látogató nem fogja ismerni :-)
136. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

16.A CCK modulok


A CCK modulcsalád a tartalomtípusokra koncentrál.
A Drupal alapcsomaggal létrehozott tartalomtípusok csak két mezőt tartalmaznak: a cí-
met és a törzset. A CCK (egész pontosan a Content) modul legfontosabb szolgáltatása,
hogy lehetővé teszi a tartalomtípusok bővítését további mezőkkel. Az egyes mezők speci-
ális típusokkal és jellemzőkkel írhatók le.

16.1. Telepítés
Az alap CCK modulok telepítését a szokásos módon kezdjük: másoljuk a letöltött64 és ki-
tömörített cck könyvtárat a sites/all/modules alkönyvtárba. Minden további modul függ
a Content-től, ezért ezt mindenképpen, és általában az alábbiakat érdemes engedélyezni.

130. ábra: CCK modulok

64
http://drupal.org/project/cck
16.A CCK modulok 137. oldal

Ekkor a következő mezőtípusok válnak elérhetővé:

Node Reference Egy másik node-ra való hivatkozás


(megjelenni általában link formában fog)

Integer, Decimal Szám

Text Tetszőleges szöveg

User Reference Egy felhasználóra való hivatkozás (általában ez is link lesz)

A típusokat tovább specifikálhatjuk, illetve megadhatjuk a bevitel módját is. Például re-
ference típusoknál Select List és Autocomplete Text Field közül választhatunk.
Nézzünk példát mindkettőre, nézzük meg, hogy az Informatika Szakcsoport vezetőjét és
adminisztrátorát hogyan adhatjuk meg:

131. ábra: Select List alkalmazása

132. ábra: Autocomplete Text Field alkalmazása


138. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

Szövegek és számok bevitelénél a következő lehetőségeink vannak:

Select list Előre megadott értékek közül választhatunk

Check boxes/radio buttons Előre megadott értékek közül választhatunk

Single on/off checkbox Egyetlen jelölőnégyzetet kapcsolhatunk ki-be

Text Field A szöveget gépeléssel vihetjük be

További CCK modulok telepítésével újabb mezőtípusok is elérhetővé válnak: például dá-
tum, link, kép.

16.2. Mező létrehozása


A mezők létrehozását a kiválasztott tartalomtípus szerkesztési oldalán kezdhetjük a Me-
ző hozzáadása gombbal. Először meg kell adnunk az új mező gépi vagy belső (csak az
adminisztrációnál használatos) nevét, az emberek számára érthető nevét, és választa-
nunk kell a mezőtípusok közül. Végül a Folytatás gombbal a második oldalra léphetünk.
(A második lépés felépítése sok mindenben függ attól, hogy milyen típusú mezőt válasz-
tottunk.)

133. ábra: Új mező létrehozása- 1. lépés

Példaként egy gyakran előforduló esetet, egy teljesen általános szöveges mezőt hozzunk
létre (133- ábra). A Mező neve legyen szoveg, címkéje pedig Szöveg. A Folytatás gomb
után a Felületi elem típusánál pontosíthatjuk, hogyan is működjön a mezőnk, majd
16.A CCK modulok 139. oldal

újabb folytatás után létre is jön az új mezőnk (bár a testreszabás még hátravan). Igen
sok jellemzőt finomíthatnunk még. Jelen esetben beállíthatjuk:

134. ábra: Új mező létrehozása- 3. lépés

Az egyes információk esetén összefüggések is lehetnek. Például ha felsorolunk a Megen-


gedett értékek-et, akkor az alapértelmezett érték kiválasztásához menteni kell a beállítá-
sokat, és csak újabb szerkesztés (beállítás) esetén tudjuk azt kiválasztani.
140. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

Összességében elmondható, hogy igen sok próbálgatásra, kísérletezésre van szükség a


lehetőségek alapos megismeréséhez.
Természetesen más típusú mezőknél ez az űrlap jelentősen eltérhet. (Később további
példákat fogunk még látni.)
Nézzük meg, hogy a tartalom beküldésekor hogyan fog változni az űrlapunk:

135. ábra: A Szöveg mező tartalom beküldéskor

Érdemes megfigyelni, hogy a Content modul telepítésével a Törzs mező már nem kötele-
zően kitöltendő.

16.3. Mezők megjelenítése


A mező elmentése után a Mezők megjelenítése oldalra jutunk.

136. ábra: Mezők megjelenítése

A beállításokat kipróbálni talán egyszerűbb, mint leírn.


16.A CCK modulok 141. oldal

16.4. Ellenőrző kérdések


● Mi a CCK modul feladata?
● Milyen mezőket vehetünk fel a tartalomtípusainkhoz a CCK moduljait telepítve?
● Milyen CCK kiegészítő modulokat ismer?
142. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

17.CCK és Views esettanulmányok


Az e fejezetben bemutatásra kerülő példák az életből származnak, konkrét megrendelői
igényt elégítenek ki. Éppen ezért az ismertetésük is célirányos: a feladatok és megoldá-
suk lesz a középpontban.
Érdemes azt is megjegyezni, hogy a megoldások nem teljesek és nem is feltétlen a leg-
jobb megközelítést alkalmazzák, de a fenti modulok bemutatására megfelelőek.
Ezen kívül azt is meg kell jegyezni, hogy a fejezet példái Drupal 5-ös alatt készül-
tek, de azért az elveket jól illusztrálják.

17.1. Programok időrendben


A kezdőoldalon megjelenő hírek praktikusak, mivel a rendszeres látogatónak lehetősége
van egyszerűen áttekinteni, melyek az általa még nem olvasott tartalmak. Vannak azon-
ban olyan esetek, amikor nem a beküldés ideje, hanem sokkal inkább a hírben szereplő
időpont sorrendje lenne a praktikus65.
A példa bemutatását kezdjük a végénél: először is nézzük meg, mit is szeretnénk az olda-
lon látni.

137. ábra: A program ajánló működése

Az ajánlott programok növekvő időrendben és táblázatos formában jelennek meg.

17.1.1 Tartalomtípus
Létre kell hoznunk egy új Program ajánló tartalomtípust, amihez a szükséges mezőket
felvehetjük.

65
A példa http://kbgy.hu-ról származik, bár sok más honlapon is hasznos lehet(ne).
17.CCK és Views esettanulmányok 143. oldal

138. ábra: Tartalomtípus létrehozása

Ha az alap CCK modult telepítettük, akkor a Mező hozzáadása menüpont segítségével


további mezőket adhatunk a tartalomtípushoz.
A feladatunk szempontjából legfontosabb, hogy dátum/idő értéket tudjunk kezelni. (Eh-
hez a Date modult is telepítenünk kell.) Adjunk tehát egy új mezőt a tartalomtípus-
hoz. Első lépésben válasszuk ki a mező típusát (Date, Select List), majd második lépés-
ként a Dátum mezőre jellemző adatokat adhatjuk meg. Igen összetett, sok beállítási le-
hetőséggel rendelkező oldalt kaptunk, így csak a lényegesebb dolgokat nézzük meg:
● Adjunk nevet (Label) a mezőnek
● Tegyük kötelezővé a kitöltést (Szükséges)
● Válasszuk ki a dátum/idő szükséges elemeit (Granularity; itt az évtől a percig be-
zárólag mindenre szükségünk lesz)
● Válasszuk ki az alapértelmezett dátum formátumot
Az adatok elmentése után hozzunk létre egy szöveges mezőt is a Hely tárolására. (A le-
hetőségek közül most a Text/Text field típust válasszuk ki.
Ha az eddigiekkel kész vagyunk, akkor a következőhöz hasonlót kell látnunk:
144. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

139. ábra: Mezőkkel kiegészült a tartalomtípus

Mentés után akár be is küldhetjük az első program-ajánlóinkat. Az Esemény dátumát és


a Helyet is könnyedén megadhatjuk:

140. ábra: Program ajánló beküldése

A tartalom beküldése után már meg is tekinthetjük a programajánlónk teljes nézetét.

17.1.2 A programajánlók listázása


Térjünk vissza arra a kérdésre, hogy hogyan is áll elő a 137. ábra listája. Hozzunk létre
egy új nézetet, és töltsük ki az esetünkben szükséges mezőket.
17.CCK és Views esettanulmányok 145. oldal

141. ábra: Oldal nézet megvalósítása

Töltsük ki a Név mezőt (például programajanlo). Ez nem tartalmazhat ékezetes betű-


ket, szóközöket, de ez nem is lesz probléma, mert ezt a nevet csak mint szerkesztők fog-
juk látni. Ezzel a névvel tudunk a későbbiekben a nézetünkre hivatkozni.
Valósítsuk meg az oldal nézetet, adjunk meg egy URL-t, ahol a nézet megtekinthető lesz,
állítsunk be táblázatos nézetet, és állítsuk be a lapozót (141. ábra).
A táblázat oszlopaiként vegyük fel az ábrán látható mezőket, rendezéshez pedig válasz-
szuk ki a dátumot:

142. ábra: Mezők beállítása

Szűrjünk tartalomtípus és idő szerint. (Ez utóbbi az aktuális időpont alapján történik.)
146. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

143. ábra: Szűrési feltételek

Kész is vagyunk. Megtekinthetjük a kész programajánlót a 141.ábrán megadott URL-en.

17.2. Online konferencia jelentkezés


Nem ritka, hogy különböző események, programok szervezői a részvételt minimum egy
előzetes regisztrációhoz kötik. Ilyen esetekben hagyományos megoldások közé tartozik,
hogy a jelentkezést e-mailben, vagy postai úton lehet megtenni. Mi sem természetesebb
azonban annál, hogy erre a helyzetre is találhatunk megoldást Dupal alapú honlapunk-
hoz.
(Az itt bemutatott megoldás alternatívájaként a Webform modult is lehetne alkalmazni.)
Kezdjük azzal, hogy milyen adatokat szeretnénk a jelentkezőktől gyűjteni:
17.CCK és Views esettanulmányok 147. oldal

Az ábrán jól látható (*), hogy szinte minden mező kitöltése kötelező
Hozzuk létre először az új tartalomtípust. A fontosabb beállítandók:

144. ábra: Tartalomtípus beküldési űrlap beállítások

Így a törzs mezőt nem kérjük megjeleníteni.


Fontos, hogy a közzétett bejegyzést, és minden további beállítást kapcsoljunk ki.
Vegyünk fel (add group) két csoportot Munkahely és Kapcsolat névvel. Vegyünk fel to-
vábbi mezőket, hogy a bevitelhez legyenek megfelelő mezőink. A mezők mind szövege-
148. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

sek lesznek. Igény szerint a mező létrehozásakor a megfelelő csoportba is helyezzük a


mezőt.

145. ábra: Mezők hozzáadása után

A Hozzáférés szabályozása oldalon mind regisztrálatlan, mind regisztrált látogatóink-


nak engedélyezzük (node modul) a tartalomtípus beküldését, és tiltsuk le a tartalmak
adminisztrációját. (Így nem tudja pl. Közzétett beállítással „elrontani” a folyamatot.)
Végül készítsünk egy olyan nézet oldalt, amelyet csak egy konferenciaszervezéssel meg-
bízott felhasználói csoport számára ad engedélyt a megtekintésre.
17.CCK és Views esettanulmányok 149. oldal

17.3. A GAMF Kar honlapjának információs struktúrája


A honlapon sok szöveges információ mellett igen sok strukturált információt is meg kell
jeleníteni. Ezen információk szerkezetének leírására egyik legjobb66 megoldás az Egyed-
kapcsolat diagram alkalmazása. Nézzünk egy részletet a teljes67 információs struktúrá-
ból:

Szervezeti dolgozik Oktató felelős


egység

vezeti
tanít Tantárgy
része

146. ábra: Egység - Oktató - Tantárgy egyedek és kapcsolataik

Megjegyzés: Az ábrán nem szerepelnek a kapcsolat számosságára vonatkozó informá-


ciók, természetesen a kivitelezéskor ezt is figyelembe kell venni.
A megvalósítás részletes leírása túlmutat a jegyzetünk keretein, de a következő néhány
ábra a legfontosabb információkat bemutatja.

66
A szerző véleménye szerint nem szerencsés például a sokak által ismert relációs adatmodellezés .
67
A honlap 2007 elején 12 tartalomtípusból épül fel.
150. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

147. ábra: Szervezeti egység mezői


17.CCK és Views esettanulmányok 151. oldal

148. ábra: Oktató mezői


152. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

149. ábra: Tantárgy mezői

17.4. Feladatok

17.4.1 Hírek és archív hírek


Alakítsuk át a kezdőoldalunkat, hogy azon csak az 1 hónapon belüli hírek jelenjenek meg
lapozás nélkül. Az oldal alján legyen egy link Archív hírek felirattal, ami csak az 1 hóna-
pon túli híreket jeleníti meg, szükség esetén lapokra tördelve.
17.CCK és Views esettanulmányok 153. oldal

17.4.2 Nyelviskola
Hozzunk létre Tanfolyamtípus nevű tartalomtípust. (Pl. „Angol kezdő”, „Német újrakez-
dő”), amelyeket évente többször is indítanak. Rendeljünk hozzá tematikát, árat..., tehát
olyan információkat, amelyek hosszú távon érvényesek. Hozzunk létre 2-3 tartalmat.
Hozzunk létre Tanfolyam tartalomtípust, amely egy konkrét futó tanfolyamot valósít
meg. Lehessen megadni a kezdés idejét, típusát (Tanfolyamtípus), állapotát
(tervezett/futó/befejezett). Hozzunk létre 4-5 tartalmat.
Hozzunk létre egy menüpontot, ahol időrendben böngészhetünk a tervezett és futó tan-
folyamok között.
154. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

18.Drupal esettanulmányok
Ebben a fejezetben néhány Drupal alapú honlap fejlesztését: a tervezés és kivitelezés
fontosabb lépéseit követhetjük végig.

18.1. Bárányka Keresztyén Óvoda


A Bárányka Keresztyén Óvoda68 a Kecskeméti Baptista Gyülekezet által létrehozandó és
üzemeltetendő, keresztény szellemiségű, de mindenki számára nyitott óvoda lesz.
Az óvoda honlapjának létrehozása előtt nézzük át a tervezés legfontosabb lépéseit.

18.1.1 Tervezés
A honlap jelenlegi elsődleges célja, hogy a leendő óvoda iránt érdeklődő szülőket meg-
felelően tájékoztassa. A látogatói célcsoport is könnyen beazonosítható: az érdeklődő
szülők lesznek a legtöbben, de természetesen az óvoda munkatársai a tartalom feltölté-
sében részt kell hogy vegyenek.
A honlap a közeljövőben jelentősen bővülni fog. Először az építkezés folyamatának be-
mutatása fogja a tartalmat bővíteni, majd a működés megkezdése után az óvoda min-
dennapjainak bemutatása kerül a középpontba. (Megfelelő részvétel és igény esetén akár
komoly interakciókkal, nem mindenki számára elérhető tartalmakkal is bővülhet az ol-
dal.)
Érezhető tehát, hogy 3 egymást követő (bár nem teljesen szétválasztható) időszakban a
honlap célja, így szerkezete is más-más lesz. A kivitelezéskor tehát figyelembe kell venni,
hogy az egyes honlap-funkciók nem egyszerre és nem is feltétlenül teljes körűen fognak
jelentkezni.
A honlap látogatói a következő csoportokba fognak tartozni:
● szerkesztő: (nem teljes körű) adminisztrációs feladatok ellátása
● építő: az építkezés folyamatáról beszámoló személy
● nevelő: az óvodapedagógusok, további alkalmazottak
● szülő: az óvodás gyermekek szülei
● érdeklődő: aki az óvoda működéséről, az építkezésről általános információkat
szeretne megtudni; akár leendő szülőként
További specialitás, hogy egy lényegében egyoldalú információközlésre építő korábbi
verzió (150. ábra) már elkészült, de most Drupal alapon ismét el kell az oldalt készíteni.
Ráadásul a szerkesztőnek úgy kell szerkesztési lehetőséget adni az oldalakhoz, hogy a
készülő oldalt más ne láthassa.

68
A honlap a http://baranykaovi.kbgy.hu/ címen érhető el.
18.Drupal esettanulmányok 155. oldal

150. ábra: Bárányka Keresztyén Óvoda korábbi honlapja

18.1.2 Telepítés
A Drupal 5.5-ös verziója magyar fordítással a szokásos módon telepítésre került. Létre-
jött az admin felhasználó. Ugyanígy a legalapvetőbb beállítások is elkészültek:
● Az oldal offline módra lett kapcsolva.
● A tartalomtípusok Oldal és Hír néven specifikáltak.
● A látogatók adminisztrátori elfogadás nélkül, de e-mail ellenőrzéssel regisztrál-
hatnak, akár fényképet is feltölthetnek magukról.
A modulok közül a következőket kapcsoltuk be és konfiguráltuk.

Alapmodulok
● Book: könyvlapok
● Comment: megjegyzések
● Contact: kapcsolatfelvétel
● Forum: szülőkkel való kommunikáció
● Path: útvonal álnevek
● Search: kereshetőség
● Statistics: látogatottsági adatok
● Taxonomy: kategorizálás
● Tracker: követés
● Upload: mellékletek feltöltése
156. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

Külső modulok
● Hungarian: magyar dátumok
● PoormansCron: időzített feladatok
● URLify: a path automatikus generálásához
● FCKEditor: vizuális szerkesztés
● SpamSpan: e-mail címek elrejtése
● Image, IMCE, Lightbox2, JQuery Update: kép tartalmak, galériák (építkezésről,
óvodai életről)

Oldalak létrehozása
Talán nem triviális, miért is hasznos az Oldal helyett a Könyv modult használni egyes
tartalmak esetén.
Az első fázisban központi jelentésű oldalak (Az oviról, Előzmények, Küldetésünk, Célja-
ink) a főmenüből valószínűleg ki fognak kerülni. Ekkor elképzelhető, hogy Az oviról ol-
dal gyermekeivé kerül a másik három oldal, így a főmenüben csak egy helyet foglal el, de
a könyv navigáció miatt mégis könnyedén elérhető marad a többi oldal is. Ez az átszer-
vezés a Könyv modullal könnyedén megoldható lesz a későbbiekben, ha Az oviról oldal
könyvlap lesz. (A leendő gyermekei más típusú tartalmak is lehetnek.)
A korábban említett három fő funkcióból pillanatnyilag egy menüblokk valósul meg.
Végül a honlap a tartalom és funkcionalitás kialakítása után az eredeti kinézetét is „visz-
szakapta” az eredeti dizájn sminkké fejlesztésével.
18.Drupal esettanulmányok 157. oldal

151. ábra: A Bárányka Keresztyén Óvoda honlapja

18.2. Poli-Tech 2005 Kft.


A Poli-Tech 2005 Kft.69 honlapja sem volt előzmények nélküli. Statikus HTML tartalom
alkotta – mindenféle interakciós lehetőség nélkül. Ehhez képest sokféle egyéb szolgálta-
tást szerettek volna a tulajdonosok megvalósítani. A legfontosabb igények:
● Elérhetőségi információk
● Termék-, és szolgáltatási információk
● Referencia munkák, cégek bemutatása
● Álláshirdetések
● Hírek, azokra megjegyzési lehetőség
● Kapcsolat-űrlap
● Fórum
● Hírlevél
● RSS
A honlap látogatóit ösztönözni szeretnénk a regisztrációra, ezért bizonyos szolgáltatáso-
kat csak nekik engedélyezünk.

18.2.1 Alkalmazott modulok


Az oldal elkészítéséhez a következő modulokat használjuk:

69
http://politech2005.hu/
158. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

Alapmodulok
● Book: könyvlapok, hierarchikus navigációhoz
● Comment: megjegyzések
● Contact: kapcsolatfelvétel
● Forum: fórum kommunikáció
● Path: útvonal álnevek
● Poll: szavazás
● Profile: további információk a látogatókról
● Search: kereshetőség
● Statistics: látogatottsági adatok
● Taxonomy: kategorizálás
● Tracker: követés
● Upload: mellékletek feltöltése

Külső modulok
● Hungarian: magyar dátumok
● PoormansCron: időzített feladatok
● FCKEditor: vizuális szerkesztés
● SpamSpan: e-mail címek elrejtése
● Image, IMCE, Lightbox2: kép tartalmak, galériák (termékekről)
● User Node, Node Profile: a felhasználók adatainak komplex kezeléséhez
● Simple News: Hírlevelek küldése
● Subform Element: Űrlap szolgáltatások
● External links: külső linkek jelzése
● Extended user status notifications: a látogató értesítése az állapotváltozásáról
● Views: különféle listák
● CCK (Content, Fieldgroup, Image, Link, Node Reference, Option Widgets, Text,
User Reference): a különféle tartalomtípusokhoz

18.2.2 Oldalfelépítés
Az oldal felépítése a szokásos szerkezetre épül: hírek a kezdőoldalon, főmenük fent és ol-
dalt, és „közösségi” menük jobb oldalt.
18.Drupal esettanulmányok 159. oldal

152. ábra: A Poli-Tech 2005 Kft. honlap kezdőoldala

18.2.3 Felhasználói adatok


A honlap készítésekor fontos igény volt, hogy a regisztrált felhasználókról nyilván tud-
junk tartani bizonyos információkat. Ehhez az alap Profile modul mellett a User Node és
Node Profile kiegészítő modulokat is igénybe kellett venni.
Nézzünk meg először egy regisztrációt. A szokásos név és e-mail megadásán túl a követ-
kezőket kérjük kitölteni:

153. ábra: Bővített regisztráció


160. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

Ezen adatok egy része csupán megjelenik a későbbi oldalakon, már részeit viszont aktí-
van fel fogjuk használni.
A fenti adatok létrehozása érdekében a Profilok adminisztrációs oldalon a következő
mezőket hoztuk létre:

154. ábra: Profilok adminisztrációs oldal

18.2.4 Nézetek
A felhasználókról két nézetet hoztunk létre.
A Kollégák című nézet csak névtelen látogatók számára jelenik meg, tartalma pedig a
listában való megjelenést engedélyező (153. ábra utolsó sora) felhasználók neveire korlá-
tozódik.
Most csak néhány – talán az eddigiek alapján nem triviális – beállítás következik.
Csak névtelenül lehessen megnézni:

155. ábra: Nézet névteleneknek

A táblázatos nézetbe csak a név mező került bele, de nem kattintható, csak szöveges
(normat text) formában.
Végül az aktív látogatókra szűrünk:
18.Drupal esettanulmányok 161. oldal

156. ábra: Csak aktív tagok

A másik nézet csak regisztráltaknak, és jóval több információt tartalmaz, de ez az eddigi


példák alapján könnyedén összeállítható.

18.2.5 Hírlevelek
A Hírlevelek kezeléséhez a SimpleNews modult alkalmazzuk. Először is létrehoztunk kü-
lönböző témaköröket, amikre a felhasználók külön-külön feliratkozhatnak:

157. ábra: Hírlevél

Igazából (a fórum működéséhez hasonlóan) itt se egy teljesen új dologgal állunk szem-
ben, hanem egy új, Hírlevelek nevű kategória kifejezéseit hozhatjuk ilyen módon létre.
A megfelelő jogosultságok megadása után a látogatók már fel tudnak iratkozni az egyes
témákra a Saját adatok oldalunkon:

158. ábra: Feliratkozás hírlevélre

A Szerkesztők (megint csak a jogosultságok megkapása után) tudnak a tartalom bekül-


désénél hírlevelet létrehozni, és megfelelő kategóriába sorolva elküldeni.
162. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

159. ábra: Hírlevél létrehozása

A cím alatt kiválaszthatjuk, hogy melyik hírlevél témakört szeretnénk megcélozni. Az


üzenet alatt olvashatjuk, milyen speciális szövegek beillesztését kérhetjük. Végül a Hír-
levélküldés beállításai is magukért beszélnek, értelem szerűen, a céljainknak megfelelő-
en tölthetjük ki azokat.

18.3. Tantárgyi oldalak


A 2008-as tavaszi félévben megvalósult a szerző azon terve, hogy az egyes tantárgyak
Drupal alapú oldala ne csak egyszerű híroldalként, esetleg fórumként, hanem közösségi
tanulói oldalként működjön70. Persze itt nem a „hagyományos” közösségi funkciók kon-
centrálunk, hanem a tantárgy teljesítésében építünk a közösségi munka szerepére.

18.3.1 Tervezés
A tantárgyi oldalak zártak abból a szempontból, hogy külső látogatók nem regisztrál-
hatnak, az oldal a tantárgyat hallgató tanulók számára van fenntartva.

70
http://webestkr.nagygusztav.hu/
18.Drupal esettanulmányok 163. oldal

Meg kell még említeni, hogy három tantárgy oldalát kell megvalósítani, amelyekben
ugyan sok a hasonlóság, de vannak jelentős eltérések is.

Az oldal fő funkciói
● Tantárgyi hírek közlése a hallgatók számára
● A hallgatók a házi feladat bizonyos részeinek teljesítését itt a honlapon tudják do-
kumentálni.
● E teljesítéseket hallgatóhoz és részfeladathoz kötötten is ki kell tudni listázni.
● A teljesített részfeladatokat a hallgatótársak tudják kommentálni, értékelni, ami
segítség lesz a végleges értékelésben.
● A hallgatókat további tartalom-építésbe is be kell vonni. Van, ahol wiki, van, ahol
fórum jelleggel.
● A hallgatók aktivitását „mérni” kell gépi módszerekkel is.
164. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

19.Gyakorló feladatok
Ebben a fejezetben olyan feladatok kerülnek bemutatásra, amelyek akár állásajánlat be-
ugró feladatának, akár teljes értékű munkaköri feladatnak tekinthetők.
A megfogalmazások nem feltétlenül pontosak, nem is feltétlenül jók – mint ahogy a va-
lódi megrendelői igények se feltétlenül hozzáértőktől származnak.

19.1. Szálláskereső oldal


A feladat egy szálláskereső oldal elkészítése. A szállásokról strukturált adatokat tárolunk
el adatbázisban.

19.1.1 A publikus felület


A rendszer publikus felületén egy szállás-listát kell látnunk, amit legördülő listákkal tu-
dunk szűrni, szűkíteni bizonyos paraméterek alapján.
Ezen szempontok alapján rendezést is kell tudni végeznie a felhasználónak a felületen. A
paraméterek a következőek:
● szállás neve
● szállás típusa (legyenek pl. Szálloda, Szálló, Apartman, Kemping)
● szállás elhelyezkedése (városok)
● szállás kategóriája (hány csillagos: 1-5)
● szállás árkategóriája (előre definiált intervallumokkal, pl. -2000 Ft/Fő/éj,
2000-4000 Ft/fő/éj, 4000- Ft/fő/éj)
A listában a szállásoknak csak a fenti adatai jelennek meg, plusz egy-egy link, ahol bő-
vebben is meg lehet tekinteni az adott szállást.

19.1.2 Szállásadók felülete


A felhasználói felületet csak regisztrált felhasználók vehetik igénybe. A felhasználók fel-
tölthetik saját szállásaikhoz tartozó adataikat. A következő adatok egy szállásra nézve
következőek:
● szállás neve
● szállás típusa
● címe - város
● címe - utca, házszám
● kategóriája (hány csillagos)
● ár: Ft/fő/éj-ben
● leírás (500 karakter)
● két kép
● szolgáltatások listája - ez egy kb. 8-10 opcióból álló checkbox csoport segítségével
valósítandó meg
19.Gyakorló feladatok 165. oldal

19.1.3 Megvalósítási ötletek


● A megoldás domináns részét CCK típusú oldalak fogják kitenni.
● Bár a megrendelő nem kérte, célszerű lenne térképes navigációval is ellátni az ol-
dalt.

19.2. Befektetési tanácsadó


A feladat egy online értékesítési csatornaként működő üzleti portál elkészítése. A weblap
célja, hogy a látogatók regisztráljanak az oldalon, azaz kérjenek egy igényfelmérési idő-
pontot, ahol majd megbízzák a céget vagyonuk kezelésével. Az oldalnak nyugodt, meg-
bízható, stabil hátteret, konzervatív vagyonkezelő céget kell sugallni.

19.2.1 Publikus szolgáltatások


● feliratkozási lehetőség hírlevélre (automatikus értesítés az új feliratkozóról, a fel-
iratkozó ingyen letölthet egy tanulmányt),
● szavazómodul,
● hírek modul,
● letölthető tanulmányok modul,
● időpont-egyeztetési modul (automatikus e-mail értesítés az új
időpontkérésekről),
● pop-up hírlevél-feliratkozás bekapcsolási lehetőség,
● RSS hírszolgáltatás,
● külön ablakban RSS hírbeolvasási lehetőség más pénzügyi portálokról,
● minden lap alján copyright nyilatkozat

19.2.2 Adminisztrációs lehetőségek


● automatizálható és időzíthető hírlevélküldő rendszer,
● Google Analytics webstatisztika
A későbbiekben lehetséges legyen a portál többnyelvűvé tétele, valamint az értékesítési
partnerek számára egy jelszóval védett partnerportál létesítése, ahol követhetik a jutalé-
kukat és az ügyfélállományukat.

19.2.3 Oldalak elrendezése


A nyitóoldal felső negyede egy kép, esetlegesen cserélődő (flash?) képek legyenek. Üzleti
képek, 1-2 értékesítést támogató mondattal. Itt legyen a cég logója, szlogenje és a cég
neve is (ideálisan a bal felső sarokban). A nyitóoldal közepe táján egy néhány mondatos
bemutatkozó szöveg legyen a cég tevékenységéről, valamint 3-4 friss hír, mellette idő-
pont-egyeztető komponens. Az oldal alján letölthető tanulmányok, szavazás, valamint
hírlevélre feliratkozási lehetőség szerepeljen.
166. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

A többi oldalon a menüpontok, a hír, és az időpont-egyeztető modulok nyíljanak meg. A


felső negyed változatlan, a tartalom nagy része a menüponthoz igazodjon. Minden olda-
lon legyen időpont-egyeztetési és hírlevél-feliratkozási lehetőség.

19.3. Céges weboldal hírekkel, képekkel


A megrendelő igényei a következők:
● Hírek, Újdonságok: az aktuális 10 legújabb hírek kerülne ide.
● Régebbi híreink: a régebbi hírek kerülnek bele.
● Rólunk írták: újság vagy, interneten megjelent cikkek rólunk
● Bemutatkozunk: a cég bemutatása.
● Szolgáltatásaink: itt felsorolnák milyen szolgáltatásokat nyújtunk.
● Árjegyzék: az éppen aktuális árlista mi mennyibe kerül.
● Rendezvények: az aktuális programok kerülnek bele de ezek a Hírek, Újdonsá-
gok menüpontban is szeretnék megjelenne.
● Képgaléria: 10 db. képgaléria lenne indulás képen és havonta 1 db. galériával
bővülne.
● Elérhetőségek: az elérhetőségeink kerülnek bele.
● Vendégkönyv: egy sima egyszerű vendégkönyv kell.
● Kapcsolat: egy kapcsolati űrlap lenne (Név, Email cím, Tárgy és Üzenet.
● Kérdőívek: havonta szeretnék 1 db kérdőívet feltenni az oldalra 15 db kérdéssel.

19.4. Egyesületi honlap

19.4.1 A megrendelő igénye saját megfogalmazásában


Egyesületet hoztunk létre, melynek létszáma várhatóan százas nagyságrendű lesz, és a
tagok közötti kommunikáció elősegítésére használnánk a honlapot. Elvárásaink:
1. legyen nyitófelület mindenki által elérhető általános információkkal, illetve jel-
szóval védett rész csak tagoknak
2. tagoknak egyéni profil szerkesztési lehetőség előre definiált mezők kitöltésével
(kötelező és választható mezők)
3. aktuális programok/képek/cikkek feltöltési lehetősége a felhasználók egy bizo-
nyos csoportjának
4. fórum, ahol topikokat lehet nyitni, kommentelni. Ha lehet, legyen digest funkció
is, azaz aki kéri, annak adott topik tartalmát a megadott címére naponta/hetente/
havonta képes legyen a rendszer postázni, vagy RSS feedet beállítani
5. keresési lehetőség a honlapon (a) tagokra a profilban megadott bizonyos ismér-
vek szerint, vagy (b) szabad-szavas kereséssel
6. szavazási lehetőség
20.Adminisztrációs feladatok 167. oldal

20.Adminisztrációs feladatok
Drupal alapú honlapunk létrehozásával még nem értek véget feladataink. (A java csak
most következik :-)
Saját honlap esetén a honlap tartalmának előállítása, a honlap menedzselése lesz ko-
moly feladat. Ha más(ok) számára hoztuk létre az oldalt, akkor a tulajdonos, a tartalom
előállítók betanítása, folyamatos segítése lesz nagy feladat. Bármelyik esetről legyen is
szó, az oldal karbantartása mindenképpen rendszeres feladatot fog jelenteni. Következ-
zenek tehát a karbantartási funkciók.

20.1. Biztonsági mentés


A biztonsági mentés célja, hogy egy esetleges meghibásodás esetén a biztonsági mentés
felhasználásával az elmentett állapot reprodukálható legyen. (Meghibásodás oka le-
het a szolgáltatónál előálló hardver hiba, egy hacker támadás, egy vírustámadás, de akár
az adminisztrátor egy „rossz mozdulata” is.)
Ideális esetben a tárhelyszolgáltató gondoskodik a rendszeres biztonsági mentésről. Sok
esetben azonban az adminisztrátor feladata ennek elvégzése. Hasonló lépéseket kell ak-
kor is követnünk, ha a honlapunkat át akarjuk költöztetni egy másik tárhelyre (például a
lokális gépünkről egy ingyenes tárhelyszolgáltatóhoz). Ezért e fejezet azok számára is
hasznos lehet, akinek más készít biztonsági mentést.
A biztonsági mentés idejére érdemes a honlapot offline állapotba kapcsolni.

20.1.1 A fájlok elmentése


A fájlok mentéséhez az FTP kliensünket (például Total Commandert) ugyanúgy csatla-
kozzunk a szolgáltatónkhoz, mint a telepítésnél, majd az összes ott található fájlról ké-
szítsünk egy másolatot.

160. ábra: Fáljok biztonsági mentése


168. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

Ha nem első alkalommal készítjük a mentésünket, akkor nem kell feltétlenül mindent
újból lemásolnunk: a Total Commander kiváló szolgáltatást nyújt nekünk a Parancsok/
Könyvtárszinkronizálás menüponttal.
A két panel megfelelő beállítása után keressük meg a fenti menüpontot, majd kezdjük el
az összehasonlítást a következő beállításokkal:

161. ábra: Könyvtárszinkronizálás

Az Összehasonlítás gomb lenyomása után egy teljes összehasonlítás történik, amiről a


következőhöz hasonló71 eredményt kell kapnunk:

162. ábra: Az Összehasonlítás eredménye

Érdemes megfigyelni, hogy a Látható elemekkel összhangban van a találati lista megje-
lenítése.
Következő lépésként a Szinkronizálás gombra kattintsunk. Ennél a lépésnél különösen
legyünk óvatosak, mert itt is tönkretehetjük az oldalunkat.

163. ábra: Szinkronizálás

71
Az ábra egy olyan helyzetben készült, amikor a hálózati kapcsolat megszakadása miatt a fájlok mentése
csak részben történt meg, a folytatást pedig ugyanezzel a módszerrel kezdeményeztük.
20.Adminisztrációs feladatok 169. oldal

A másolás irányaként érdemes csak a szerver felől a mentés helye szerint (az ábrán Bal-
ról jobbra) engedélyezni a másolást, és a Felülírás megerősítését is meghagyni.
A másolás megtörténte után a TC ismét összehasonlítja a két oldal tartalmát. Ha esetleg
valamilyen ok miatt a két fájl nem egyezik meg, akkor még inkább fontos tisztában len-
nünk azzal, hogy melyik irányban kell másolnunk.

20.1.2 Az adatbázis mentése


Legtöbb tárhelyszolgáltató az adatbázishoz való hozzáférést a phpMyAdmin segítségével
teszi lehetővé.
Az adatbázis kiválasztása után az Export fület kell keresnünk. Itt biztonsági mentés ese-
tén az alapbeállítások többnyire megfelelőek, költöztetéskor azonban probléma forrása
lehet például az eltérő verziójú szoftver. (Ekkor először az SQL export kompatibilitás-t
érdemes megnézni.)
A Végrehajt gombra kattintás előtt érdemes még a „gzip-pel tömörítve” lehetőséget is
kijelölni. Így egyetlen tömörített fájlt kell letöltenünk a teljes adatbázismentéshez.

164. ábra: Adatbázis exportálás

20.2.Honlap átköltöztetése, visszaállítása


Akármelyik esetről is legyen szó, az utolsó biztonsági mentésünket kell elővennünk. A
legegyszerűbb esetben mindössze két vagy három egyszerű lépést kell követnünk:
170. oldal Webes tartalomkezelő rendszerek (0.5. verzió)

20.2.1 A settings.php szerkesztése


Átköltöztetés esetén itt adhatjuk meg az új szerver környezet azon adatait, amire a PHP-
nek az adatbázis eléréséhez van szüksége.
Keressük meg a sites/default/settings.php állományt. Szerkesszük egy tetszőleges prog-
ramozói editorral72, amelyik megfelelően tudja a Unix sortöréseket kezelni.
Keressük meg az a sort, amelyik így kezdődik: $db_url. Például:
$db_url = 'mysql://root@localhost/gamf4';
Néhány sorral fentebb láthatjuk a magyarázó szövegben, hogy hogyan kell módosíta-
nunk ezt a sort. A minta:
$db_url = 'mysql://username:password@localhost/databasename';
Természetesen a szöveg mind az öt részét (mysql, username, password, localhost, data-
basename) a saját szerverünknek megfelelően kell módosítanunk.

20.2.2 A fájlok feltöltése


Total Commander a szokásos módon nagyon egyszerűen megoldja a feladatot. (A telepí-
téskor megtett lépéseket érdemes mintául venni.)

20.2.3 Az adatbázis importálása


A phpMyAdmin SQL fülét keressük meg. A korábban lementett .gz kiterjesztésű állomá-
nyunkat kell a Tallózás-sal megkeresni. A beállítások után pedig Végrehajthatjuk az im-
portálást.

20.3.Frissítés
A honlap elkészítése, beüzemelése után sem hagyhatjuk magára a honlapot. Nem ritka,
hogy a Drupal újabb verziója jelenik meg.
Az új verzió megjelenésének két fő oka lehet:
● Hibajavítás esetén az új kiadás az előző verzióban talált hibát javítja. Ekkor – ér-
telemszerűen – alapvető biztonsági cél a frissítés elvégzése.
● Új funkcionalitás esetén a szolgáltatási kör bővülése, valamint az újabb modulok
verzió-igénye miatt lesz a frissítés előbb-utóbb elengedhetetlen.
Amennyiben van rá lehetőségünk, érdemes a szerver rendszergazdáját/üzemeltetőjét
„elérhető közelségben” tudni.
Minden alapcsomag tartalmazza az UPGRADE.txt állományt, ami a frissítés javasolt me-
netét mutatja be. A fontosabb lépések:
1. Készítsünk biztonsági mentést az adatbázisról és a fájlokról.
2. Lépjünk be adminisztrátorként a honlapra.
3. Kapcsoljuk a Drupalt offline állapotba.

72
A Jegyzettömbnél alig kell többet tudnia. Megfelel például:
http://notepad-plus.sourceforge.net/hu/site.htm
20.Adminisztrációs feladatok 171. oldal

4. Kapcsoljuk ki a kiegészítő modulokat, és váltsunk vissza az alapértelmezett


sminkre.
5. Írjuk felül az újabb verzió fájljaival az eredetieket, kivéve a settings.php fájlt.
6. Kapcsoljuk ki az alapmodulokat is.
7. Futtassuk az update.php fájlt értelem szerűen.
8. Kapcsoljuk be a modulokat.
9. Kapcsoljuk a Drupalt online állapotba.
Ideális esetben a frissítés hiba nélkül megtörténik.

You might also like