在Drupal 6中将系统变量的编辑功能添加到管理员

时间:2012-12-04 17:40:37

标签: forms drupal drupal-6 global-variables drupal-modules

我创建了一个使用variable_set()设置系统变量的自定义模块。我希望有权具有权限的人能够通过管理员编辑此变量。我确信有一些贡献的模块允许您编辑系统变量,但我一直在寻找一种方法在我的自定义模块中包含此功能。我想可能挂钩到“站点信息”管理表单或者“文件系统”管理表单,并包含一个文本字段,他们可以编辑这个系统变量,它会保存。什么是最好的方法呢?

感谢

1 个答案:

答案 0 :(得分:2)

“网站信息”表单使用system_settings_form(),这意味着您只需将变量作为元素添加到表单中(使用hook_form_alter()或,如下所示,hook_form_FORM_ID_alter())和系统将处理保存它。

function MYMODULE_form_system_site_information_settings_alter(&$form, &$form_state) {
  $form['my_variable_name'] = array(
    '#type' => 'textfield', // or whatever element makes sense
    '#title' => t('Title'),
    '#default_value' => variable_get('my_variable_name', '')
  );
}

同样适用于system_file_system_settings()表格。