2010-07-19 7 views
3

노드를 만들 때 분류 용어로 태그를 지정해야하는 모듈을 만들고 있습니다. node_save가 hook_nodeapi을 (호출하기 때문에, 내가 node_save()를 호출 할 때hook_nodeapi()의 노드에 프로그래밍 방식으로 분류법을 추가하려면 어떻게해야합니까?

function hook_nodeapi(&$node, $op, $a3 = NULL, $a4 = NULL) { 
    switch ($op) { 
    case 'insert': 
     $node->taxonomy = array(1 => taxonomy_get_term(1)); 
     node_save($node); 
    break; 
    } 
} 

코드는 단지 루프에 간다 :이 작업을 수행하는 hook_nodeapi()를 구현 한, 그래서 같이 거기에 용어를 추가하는 것을 시도하고있다). node_save를 호출하지 않으면 아무 것도 저장되지 않습니다. 내가하지 않으면 나는 싫어한다. thi를하는 올바른 방법에 대한 아이디어가 있습니까?

답변

3

$op="presave"을 사용하여 원하는 방식으로 분류를 변경 한 다음 분류 모듈에 조건을 저장하게 할 수 있습니다. 나중에 node_save를 사용할 필요가 없습니다. 실제로 nodeapi 구현시 노드 저장은 피해야합니다.

0

는 node_save() 여부를이 전화를 필요로 윌 hook_form_alter()$form_state

+0

에 추가하는 데 사용? – itsbruce

관련 문제