Programsko kreiranje prevoda noda
Zaista, da ne postoje teški klijenti, većina nas bi zaboravila koliko fleksibilan Drupal može biti i kako je njegova arhitektura dovedena skoro do savršenstva. API = Awesome Programming Interface!
Evo jednog scenarija iz stvarnog života: hoće čovek da ima jednu stranu sa svim slikama koje je uploadovao i da na tom istom mestu unese njihov prevod. S druge strane, za razliku od većine zahteva od ovog klijenta, u potpunosti razumem; očekuje ga zadatak slanja na desetine slika, koje treba prevesti na dva jezika i već mogu da zamislim frustraciju kliktanja da bi se dobila željena slika u drugom jeziku.
Posle početnog češanja po glavi, rešenje se svodi na ovo parče koda:
// Pretpostavka je da originalni node // nije preveden i da su enableovani // sledeci jezici: en i de. module_load_include('inc', 'node', 'node.pages'); $orig_node = node_load($nid); $new_node = clone $orig_node; $new_node->tnid = $orig_node->tnid = $orig_node->nid; $new_node->translation_source = $orig_node; $new_node->language = str_replace($orig_node->language, '', 'ende'); $new_node->nid = 0; $new_node->title = 'Neue Titel'; node_save($orig_node); node_save($new_node);
I to je sve što je potrebno. Ovaj kod je spreman za Batch API i klijent je zadovoljan, a ja sam opet srećan što radim u Drupalu.