Tippek és trükkök

Tartalomszervezési megoldások I. - Taxonomy és Book modul

Illyés Edit képe

Az egyik leggyakoribb feladat honlapkészítés során, hogy a webhelyre feltöltött nagy mennyiségű tartalmat (írásokat, oldalakat, képeket – Drupal szakzsargonban: a node-okat) valahogyan rendszerezzük. Erre a Drupal alapcsomag két modult is kínál: a Taxonomy (kategorizáló) modullal a tartalmakat kategóriákba sorolhatjuk, a Book (könyv) modullal pedig "szülő-gyermek" kapcsolatot, azaz hierarchikus viszonyt alakíthatunk ki közöttük. Egyszerűbb webhelyeken ez általában elegendő a tartalmak rendszerezéséhez; azonban ahogy honlapunk egyre összetettebbé válik, előfordulhat, hogy beleütközünk az alapcsomag korlátaiba. Ilyenkor kiegészítő modulok telepítésével növelhetjük a Drupal képességeit. Az alábbi kétrészes cikkben először a tartalomszervezés problémáját ismertetjük, majd többféle, egyre növekvő komplexitású megoldást mutatunk be kezdő és haladó Drupal webmesterek számára.

Tartalomszervezési megoldások II. - Views és CCK modul

Illyés Edit képe

Negyedik megoldás: Views

Tételezzük fel, hogy egyesületünk honlapján a csapatnevek mellet nem 2 hanem 4 további kategóriát szeretnénk bevezetni: Fiúk, Lányok, Hazai játékosok, Vendégjátékosok. Ez a – rendkívülinek nem nevezhető – helyzet azt eredményezi, hogy webhelyünk szerkezete, és ezzel párhuzamosan a menürendszer kényelmetlenné és a kategóriák közötti átfedésektől függően nehezen áttekinthetővé vált:

Újság elektronikus kiadása CCK alapokon

Illyés Edit képe

Ma már szinte minden nyomtatott sajtótermék elérhető interneten is. Ezeknek az internetes verzióknak a fejlesztése során két felfogás valamelyike szokott érvényesülni: az egyik szerint egy külön online verziót készítenek, amibe feltöltik a nyomtatott példány fontosabb cikkeit; a másik szerint az internetes és a papíralapú verzió lehetőség szerint legyen egymás tükörképe.

Kapcsolat űrlap és levél módosítása a Drupalban

Hojtsy Gábor képe

Korábban már írtam a hook_form_alter() előnyeiről és működéséről. Ennek segítségével – némi programozással – elérhetjük, hogy a Drupal módosítása nélkül a rendszer űrlapjai kedvünkre változzanak meg. De mi van akkor, ha az űrlapok változtatása nem elegendő? Az utóbbi hetekben a Weblabor.hu 4.6.x-es rendszerről 5.x-es Drupal rendszerre frissítésén is munkálkodom szabadidőmben, és éppen ma értem el a Weblabor szerkesztőit is megcímző kapcsolati űrlap funkcióhoz.

Multisite beállítás - lépésről lépésre

pakati képe

Jó ideje próbáltam már multisite-ot létrehozni Drupal használatával, de minden lépésnél hiányzott egy pici plusz infó, hogy akkor most "pontosan hogyan és mit és hová írok, stb...". De ma, hála PP-nek, sikerült összehozni a dolgot, s gondoltam megoszton veletek eme nagyszerű dolgot!

Menüpontok egyedi osztályba sorolása

oky képe

A drupal.org-on lévő egyik cikk (Enable custom bullets/icons for specific menu items) adta az alapötletet: osztálynevet adni menüpontokhoz, hogy utána egyedi stílust lehessen rájuk alkalmazni. Az eredeti cikk nagy hibájának tartottam, hogy csak modul által definiált menüponthoz lehetett használni. Én viszont azt szerettem volna elérni, hogy bármelyik menüponthoz lehessen osztályt definiálni az adminisztráción keresztül. A 4.7.4-es kiadás fájljait módosítottam ennek érdekében.

Modul telepítési problémák kezelése a scheduler modul példáján

pp képe

Sokan nem tudják, mire kell felkészülniük egy modul telepítésekor. A Drupalhoz számos modul érhető el, amelyekkel a bővíthetjük a funkciók tárházát. Ezek a modulok azonban nem mennek át azon a szigorú minőség ellenőrzési és biztosítási metóduson, mint a Drupal alaprendszerben találhatóak. Ezért aztán fel kell készülnünk, hogy számtalan problémával kell szembenéznünk, amit vagy meg tudunk oldani, vagy keresnünk kell valakit, aki megoldja ezt nekünk.

A Drupal menürendszere

chx képe

A hook_menu() kampó megvalósításai elérési címeket jegyeznek be, megadva azok kezelőfüggvényeit, jogosultság értékeit, és megjelenítési adataikat.

Paraméterek

$may_cache Logikai érték, mely azt jelzi, hogy a visszaadott elemeink a gyorsítótárba kerülnek-e. A menü gyorsítótára felhasználófüggő, tehát az elemeket szinte mindig gyorsítótárazhatjuk, kivéve ha a felhasználó aktuális helyzetétől függnek. A node_menu() megvalósításában láthatunk példát olyan elemre, amit nem szabad gyorsítótárba tenni.

Útvonal kiegészítése az aktuális oldal címével

pp képe

Feladatul kaptam, hogy az útvonalban (breadcrumb) jelenjen meg az aktuálisan megjelenített tartalom címe is. Úgy gondoltam, hogy a smink módosításával érdemes megoldani a problémát, hiszen az útvonalak összeállítása különböző helyeken történik a Drupalban.

Megkerestem a következőt a page.tpl.php-ben (phptemplate esetén)