Drupal-hook form alter

来自站长百科
跳转至: 导航、​ 搜索

导航:上一页


格式:hook_form_alter(&$form, &$form_state, $form_id)

参数详解

  • $form 组成表单的表单元素的嵌套数组
  • $form_state 一个带key,包含表单当前状态的数组
  • $form_id 代表表单名称的字符串. 即本函数生成的表单名.

作用:在在表单被解析前对其进行修改。


实例应用:对联络表进行修改。

创建一个简单的模块即可:首先创建.info文件,接着再创建一个.module文件。这里只贴出.module的代码。

<?php  
function contactus_form_alter(&$form, $form_state) { 
if( $form_id == 'contactus_form' ) {
$form['company'] = array(  
'#title' => t('公司名称'),  
'#type' => 'textfield',  
);  
$form['phone'] = array(  

'#title' => t('电话'),  

'#type' => 'textfield',  
'#required' =>'true',  
);  

unset($form['copy']);  

$order = array('name','mail', 'subject', 'company', 'phone','message','submit');  

foreach($order as $key => $field) {  

$form[$field]['#weight'] = $key;  

} 
}
}

去后台启用你的模块即可。