Sziasztok!
Azt szeretném megtudni, hogy a hook_nodapi-ban melyik $OP-ra van szükségem, ha az alábbit szeretném megoldani:
Adott node típus esetén betöltődéskor a body-hoz kapcsoljunk szöveget, de természetesen csak megtekintéskor.
Ha a VIEW operátort (vagy minek a rövidítése az op?) használom, akkor hiába írok bármit a $node->body -ba semmit nem csinál vele :(.
Ha a LOAD opot használom, akkor a szerkesztési oldalon is megjelenik, és már így fogja elmenteni :(.
Az ALTER op jó lenne, de az már a legenerált html kódot tudja manipulálni, így a "xy".$node->body esetén a legtetejére írná ki, nem pedig a CCK mezők alá, ahova szeretném.
Hackeltem egy perpill használhatónak tűnő megoldást:
if ($op == "load" and !strpos($_GET['q'],"/edit") and $node->type == "...") { $node->body = "<div class='...'>...</div>".$node->body; }
Csak nem tudom, ennél lenne-e jobb megoldás. Vagyis szerintem tuti, csak nemtom melyik az :(
Valakinek valami tippje?
Köszönöm,
O. Magus
view op és a $node->content
http://api.drupal.org/api/function/hook_nodeapi/6
"view": The node content is being assembled before rendering. The module may add elements $node->content prior to rendering. This hook will be called after hook_view(). The format of $node->content is the same as used by Forms API.
A lényeg, hogy view op-nál a $node->content változóba - ami egy tömb - na abba kell beletenned amit akarsz. A sorrendet a weight érték fogja meghatározni, ezért ha egy cck mező után akarod betenni, akkor annál nagyobb, de a követkző elemnél kisebb számot kell megadnod.
a példa szerint:
pp
Palócz István
https://palocz.hu | https://tanarurkerem.hu
Köszönet
köszönöm a választ, működik
- - - - -
Orseolo Magus
[email protected]