2012-07-26 6 views
0

hook_form_alter를 사용하여 노드 집합 편집/추가에 무리가 포함 된 필드 세트를 추가하는 모듈을 작성했습니다.Drupal : #weight and forms

필드 세트 (버튼)는 필드의 특정 위젯에 연결되어 있어야합니다. 예를 들어 콘텐츠 유형이 'myContentType'인 본문 필드 위젯 일 수 있습니다. 필자는 필드의 위젯과 필드 위젯을 항상 위젯 위에 필드 세트와 함께 양식에 함께 배치해야합니다. 그래서 이것을 달성하기 위해 양식 요소의 #weight 속성을 사용할 것이라고 생각했습니다.

그래서 hook_form_alter에서 나는 설정 :

$form['buttonFieldset'][#weight] = $form['body']['#weight'] - 1; 

는 그 후 나는 $ 양식 배열에 확인 버튼 필드의 무게는 관련 위젯보다 작은 무게 하나로 설정 얻을 않았다. 나는 이것이 신체의 텍스트 영역 바로 위에 놓을 것이라고 생각했지만, 이것은 일어나지 않았다. 아무도 왜 안 알아요? 아니면 내가 원하는 것을 얻기위한 다른 방법?

답변

0

fielsdset 가중치를 본문 필드의 가중치로 설정하고 본문 필드를 목록에서 아래로 이동하십시오. 그래서 :

$form['buttonFieldset']['#weight'] = $form['body']['#weight']; 
... 
$form['body']['#weight'] = $form['body']['#weight'] + 1; 

이 드루팔이의 #weight을 변경에도 불구하고 제목 필드를 이동 좋아하지 않는 것 같이 몸 필드 바로 위에 제목을 가지고 특히, 작동합니다. titlebody 사이에 무언가를 넣기 위해 title을 움직일 수 없었지만 body을 움직일 수 있습니다.