Drupal 6 - Saját node type fordítása

gpista képe

Sziasztok!

Készül egy oldalam, amin állásírdetések is megjelennek. Az álláshírdetéseket egyedi node típusok, amit a saját modulom definiál.
A hírdetésnek van "title" mezője, ami a node eredeti "title" mezője, de van ezen kívül néhány saját mező ("intro", "description", stb.).
Az az érdekes, hogy amikor egy hírdetést le akarok fordítani, akkor a formban az eredeti "title" mező kivételével minden más mező üresen jelenik meg.
A hook_load() lefut, szépen fel is építi a node-ot, hozzáadja a saját mezőit, sima szerkesztésnél meg is jelennek az értékek, de fordításnál a "title" kivételével minden saját mező üres.
Én csinálok valamit rosszul? (Gondolom...) A translations modul a hook_load()-ból hívja le az eredeti nyelvű node-ot amikor új fordítást akarunk kezdeni? Ha igen, akkor miért nem jelennek meg a saját mezőim? Ha nem, akkor melyik másik hook-ot kell implementálnom?

Előre is köszi a segítséget!

gpista képe

Kicsit beleásva a translation.module forrásába rájöttem a megoldásra. A translation module meghívja a hook_nodeapi-t $op="prepare translation" paraméterrel.
A lényeg, hogy implementálni kell a hook_nodeapi-t, nálam most valahogy így néz ki:

function mymodule_nodeapi(&$node, $op, $a3, $a4) {
/*...*/
  switch ($op) {
    case "prepare translation":
      $node->intro = $node->translation_source->intro;
      $node->description = $node->translation_source->description;
      $node->requirements = $node->translation_source->requirements;
      $node->benefits = $node->translation_source->benefits;
      $node->other = $node->translation_source->other;
      break;
/*...*/
  }
}
0
0
Hojtsy Gábor képe

Nagyon jól sikerült rátalálni, pont így kell!

0
0