Saját PHP függvény alapú smink készítése

Legegyszerűbb leírni a tiszta PHP smink készítését, ráadásul a PHPTemplate megértését segíti, ha először ezzel kezdem. Minden smink a themes alatt a saját könyvtárában lakik, és a neve megegyezik a könyvtárnévvel, a kiterjesztése pedig theme. Tehát az themes/sajatsmink könyvtárban van a sajatsmink.theme fájl.

Ezen belül, hasonlóan a modulokhoz, különböző hurkokat valósíthatunk meg. Ezek a hurkok a kézikönyvben theme_-al kezdődnek, élesen elkülönülve a hook_ hurkoktól. Ez utóbbi csak egy jelölés, míg a smink hurkok ténylegesen meg is vannak valósítva a includes/theme.inc fájlban.

Például van egy theme_form_element smink hurok, amit a sajatsmink_form_element fájlban sajatsmink_form_element néven valósítunk meg. Ennek a függvénynek egy stringet kell visszaadni, amit aztán kiír majd a Drupal.

Minden tiszta PHP sminknek meg kell valósítania a theme_features hurkot, ez egy tömböt ad vissza. A tömb leírja, hogy ez a smink mire képes. Lehetséges elemei:

logo
Megadhatunk egy logót. A sminknek ellenőriznie kell a default_logo (logikai) és logon_path (string) változók értékeit.
toggle_logo
A logó ki-be kapcsolható.
toggle_name
A weboldal neve ki-be kapcsolható.
toggle_search
A keresés doboz ki-be kapcsolható.
toggle_slogan
A jelmondat ki-be kapcsolható.
toggle_mission
A misszós üzenet ki-be kapcsolható.
toggle_primary_links
Az elsődleges hivatkozások ki-be kapcsolhatóak.
toggle_secondary_links
A másodlagos hivatkozások ki-be kapcsolhatóak.
toggle_node_user_picture
A smink meg tudja jeleníteni a felhasználók képét a tartalmai mellett.
toggle_comment_user_picture
A smink meg tudja jeleníteni a felhasználók képét a hozzászólásai mellett.

Például:

function chameleon_features() {
return array(
'logo',
'toggle_name',
'toggle_slogan',
'toggle_primary_links',
'toggle_secondary_links');
}
?>

Az alap disztribúcióban ilyen típusú smink a chameleon. Angolul ezen az oldalon találhatjuk meg a smink hurkok listáját.