Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
drupal表单覆盖主题函数_Drupal_Drupal Fapi_Hook Menu_Hook Theme - Fatal编程技术网

drupal表单覆盖主题函数

drupal表单覆盖主题函数,drupal,drupal-fapi,hook-menu,hook-theme,Drupal,Drupal Fapi,Hook Menu,Hook Theme,我创建了一个生成小表单的模块。 我还创建了一个函数,该函数应该为表单设置主题,覆盖标准主题。 但出于某种原因,它不调用主题函数。我忘了什么吗 function mailinglist_menu() { $items['mailinglist'] = array( 'title' => t('Beheer mailinglist'), 'page callback' => 'mailinglist_overzicht', 'access arguments

我创建了一个生成小表单的模块。 我还创建了一个函数,该函数应该为表单设置主题,覆盖标准主题。 但出于某种原因,它不调用主题函数。我忘了什么吗

function mailinglist_menu() {

  $items['mailinglist'] = array(
    'title' => t('Beheer mailinglist'),
    'page callback' => 'mailinglist_overzicht',
    'access arguments' => array('access content'),
    'type' => MENU_CALLBACK,
  );

  return $items;
}

function mailinglist_overzicht() {

  return drupal_get_form('mailinglist_form');

}

function mailinglist_form($form_state) {

  $form['to'] = array(
    '#type' => 'fieldset', 
    '#title' => t('Aan'), 
    '#tree' => TRUE,
  );
  $form['to']['functies'] = array(
    '#type' => 'checkboxes', 
    '#title' => t('Functies'),
    '#options' => mailinglist_getFuncties(),
    '#description' => t('Selecteer de functies die je wilt mailen.'),
  );

  return $form;
}

function theme_mailinglist_form($form) {
    $output .= '<div class="foo" style="background-color: #000;">sdfsdfsdfdfs';
    $output = drupal_render($form['to']['functies']);
    $output .= '<div class="bar">';
    $output .= '</div></div>';
    $output .= drupal_render($form);

  return $output;
}
函数mailinglist\u菜单(){
$items['mailinglist']=数组(
'title'=>t('Beheer邮件列表'),
“页面回调”=>“邮件列表”,
“访问参数”=>数组(“访问内容”),
“键入”=>菜单\u回调,
);
退回$items;
}
函数mailinglist_overzicht(){
返回drupal_get_表单(“邮件列表表单”);
}
函数mailinglist\u form($form\u state){
$form['to']=数组(
“#类型”=>“字段集”,
“#title”=>t('Aan'),
“#tree”=>正确,
);
$form['to']['functies']=数组(
“#键入”=>“复选框”,
“#title”=>t(‘函数’),
“#选项”=>mailinglist_getFunctions(),
“#description”=>t('Selecteer de functions de die je will mailen'),
);
返回$表格;
}
函数主题\邮件列表\表单($form){
$output.='sdfsdffs';
$output=drupal_render($form['to']['functies']);
$output.='';
$output.='';
$output.=drupal_render($form);
返回$output;
}

我想你忘了实现hook\u主题。尝试添加以下内容:

function mailinglist_theme() {
  return array(
    'mailinglist_form' => array(
      'arguments' => array('form' => NULL),
    ),
  );
}
添加此代码后,不要忘记刷新主题注册表