[オーサリング情報と公開オプション]セクションのすぐ下にあるノード編集フォームにカスタム構成領域を追加するにはどうすればよいですか?
質問する
21980 次
2 に答える
14
hook_form_FORM_ID_alter()を使用できます 。以下の例:
function my_module_form_node_form_alter(&$form, $form_state) {
// if you are targeting a specific content type then
// you can access the type:
$type = $form['#node']->type;
// Then
if ($type == 'my_content_type') {
// use a contact settings for the sake of this example
$form['contact'] = array(
'#type' => 'fieldset',
'#title' => t('Contact settings'),
'#weight' => 100,
'#collapsible' => TRUE,
'#collapsed' => FALSE,
);
// add simple checkbox to the field set
$form['contact']['approve'] = array(
'#type' =>'checkbox',
'#title' => t('Contact me'),
);
}
}
データの保存については、 examplesプロジェクトを参照することをお勧めします。多くのドキュメントを含む多くのコード例があります。また、さまざまな種類のフォーム要素の詳細については、フォーム APIを確認してください。お役に立てれば。
于 2012-11-25T02:41:31.807 に答える
4
次のコードは、添付画像の最後のメニューを生成します。
$form['barclays_epdq'] = array(
'#type' => 'fieldset',
'#access' => TRUE,
'#title' => 'Barclays ePDQ',
'#collapsible' => TRUE,
'#collapsed' => TRUE,
'#group' => 'additional_settings',
'#weight' => 100,
'barclays_epdq_active' => array(
'#type' => 'checkbox',
'#title' => 'Enable this webform to send users to your Barclays ePDQ store to make a payment',
'#default_value' => $active_state,
),
);
ps: フォームは hook_form_alter にあります
于 2012-11-27T14:26:40.180 に答える