2011-12-23 3 views
0

드루팔 (Drupal)에서 노드/컨텐츠 유형을 생성하려고하는데, 최소한 .info, .install 및 .module 파일이 있습니다.드루팔 (Drupal 7의 Node/Content Type에 대한 폼이 표시되지 않습니다.

모듈이 잘 만들어졌으며 모듈 관리 페이지에서 모듈을 활성화/비활성화 할 수 있으며 Drupal은이 모듈을 콘텐츠 유형으로 인식 할 수 있으며 콘텐츠에서 '콘텐츠 추가'를 클릭하면 나타납니다. 메뉴.

모든 것이 잘 작동하지만 그것은 오히려 enter image description here

에서 직접 시작하는 폼 요소 코드는 아래에 나열되어 양식 요소를 표시하지 않습니다

function newNode_form($node,&$form_state) 
{ 
$type = node_get_types('type',$node); 

$form['title']= array( 
    '#type' => 'textfield', 
    '#title' => check_plain($type->title_label), 
    '#default_value' => !empty($node->title) ? $node->title : '', 
    '#required' => TRUE, 
    '#weight' => -5, 
); 

    $form['field1'] = array( 
    '#type' => 'textfield', 
    '#title' => t('Custom field'), 
    '#default_value' => $node->field1, 
    '#maxlength' => 127, 
); 
    $form['selectbox'] = array( 
    '#type' => 'select', 
    '#title' => t('Select box'), 
    '#default_value' => $node->selectbox, 
    '#options' => array( 
     1 => 'Option A', 
     2 => 'Option B', 
     3 => 'Option C', 
    ), 
    '#description' => t('Choose an option.'), 
); 
return $form; 
} 

이 사람이 뭐가 잘못 됐는지 말해 줄 수

추 신 : 그냥 FYI : 내 .install 파일에는 설치 및 제거 후크 기능 만 존재합니다. 아직 DB 테이블을 만들지 못했습니다.이 콘텐츠 유형은 콘텐츠 유형 UI를 작성하는 데 필요한 연습용 코드이며 반드시 완전한 UI는 아닙니다.

답변

0

Drupal의 후크 시스템은 모듈 기능을 동적으로로드하기 위해 소문자와 점수 이하를 사용합니다. 도움을 주셔서 감사합니다, 나는 그것을 파악,

function new_node_form($node, &$form_state) { 
... 
+0

참,하지만 당신의 대답이 잘못되었습니다 :

<module name>_<hook_name> 

은 다음과 같이 함수를 선언하십시오. 모듈의 이름은 newNode입니다. 따라서 new_node 명명 용어를 얻는 것이 해결책이 아닙니다. 대답은 이것이 Pre-Drupal 7 전략이며 노드를 설치하는 Drupal 7 방법이 아니라는 것입니다. 상관없이 도와 주셔서 감사합니다. –