Pravimo modul za Drupal, brz početak
Počnimo sa api.drupal.org, otvorite stranicu hook-a hook_node_presave(), koji se poziva pre dodavanja node-a.
http://api.drupal.org/api/drupal/modules!node!node.api.php/function/hook_node_validate/7
Hook-ovi nam omogućavaju da ubacimo naš kod u standardni tok rada Drupala, dodajemo provere, podatkovna polja, elemente formi i slično.
Dodajemo naš modul u folder sites/all/modules:
sites/all/modules/custom/ sites/all/modules/custom/custom.info sites/all/modules/custom/custom.module
U fajlu custom.info napišite:
name = Custom description = Custom core = 7.x
U fajlu custom.module ćemo proveriti da li polje sadržaja sadrži nešto, ako je prazno prikazaćemo grešku (mada bismo isto mogli da podesimo da polje bude obavezno u Drupalu, ali...):
custom.module
<?php function custom_node_validate($node){ if(empty($node->body['und'][0]['value'])){ form_set_error('node-body', 'Body is empty'); // Prikazujemo grešku i sprečavamo čuvanje node-a } }
U našem slučaju, kada je jezik na sajtu samo jedan, i to und (undefined, neodređeni), proveravamo prvo textarea polja body (jer može biti neograničen broj textarea polja za polja).
Koristite modul devel i njegovu funkciju dsm() da prikažete na ekranu vrednost bilo kog objekta ili niza:
<?php function custom_node_view($node){ dsm($node); }