Drupal sminkelése III. rész - Régiók kezelése

A Drupal rendszer régiókba helyezi a tartalmakat. Alapértelmezetten öt régiót kezelhetünk a sminkfájlokban anélkül, hogy a smink info fájljában meg kellene adni:

$left
$right
$content
$header
$footer

Ha csak ezeket a régiókat használjuk nem kell külön definiálni a smink info fájljában, anélkül is elérjük a page.tpl.php fájlban. De amennyiben egy új régiót vezetünk be a sminkünkbe, az új régióval együtt a fenti régiókat is meg kell adni, egyébként az alapértelmezett régiókat nem fogja "látni" a rendszer.

Gyakran szükség van arra, hogy olyan területre tegyünk tartalmat - melyet egy blokkban helyezünk el -, ahová alapesetben nincs rá mód, vagy az adott területen több régiót szeretnénk használni, akkor egy új régió bevezetésével könnyedén megoldhatjuk ezt a problémát.

Amint korábban említettem a smink info fájljában kell megadnunk azokat a régiókat melyeket használni szeretnénk. Fontos tehát, hogy ilyenkor már az alapértelmezett régiókat is fel kell venni az info fájlba! Az alábbiak szerint kell definiálnunk régióinkat:

; A regiok megadasanak modja
; regions[regio_neve] = Regio leirasa
regions[left] = Left sidebar
regions[right] = Right sidebar
regions[content] = Content
regions[header] = Header
regions[footer] = Footer
regions[user1] = User1 regiom
regions[user2] = User2 regiom

A következő lépés a gyorsítótár ürítése (Webhely beállítás/Teljesítmény oldalon, vagy a Sminkek oldalon nyomjunk egy mentést minden változtatás nélkül)!
Két új régiót vettem fel user1 és user2 néven. Ezzel tulajdonképpen elértük azt, hogy a page.tpl.php fájlban elérjük a $user1 és a $user2 változókat.

Nyissuk meg tehát a sminkünk page.tpl.php állományát és helyezzük el az új régióinkat a nekünk megfelelő helyre.

<?php if ($user1) : ?>
   <div id="user1">
      <?php print $user1; ?>
   </div>
<?php endif; ?>

Mit is csináltunk? Megvizsgáltuk, hogy a $user1 régióban van-e valami tartalom, ha igen akkor létrehozunk neki egy div-et, melynek egy user1 CSS azonosítót adtunk, majd kiírattuk a régió tartalmát.

Ezek után nagy valószínűséggel még CSS-el formáznunk kell a megjelenést, de ebbe a régióba már elhelyezhetjük a blokkjainkat. Ezzel a technikával tetszőleges helyen és számban hozhatunk létre területeket különböző tartalmaknak igényeink szerint.