您的位置:首页 > 运维架构 > 网站架构

drupal7 自定义网站变量

2013-10-18 16:57 176 查看
当页面的某个部分不太适合做成node,而又需要数据库存储必要的数据,就可以做到系统配置里

//1.生成menu
//这个menu会自动分配到 configration->system 下面
$items['admin/config/system/flowus'] = array(
'title' => 'Flow Us setting',
'description' => 'Flow Us setting',
'page callback' => 'drupal_get_form',
'page arguments' => array('keats_flow_us'),
'access arguments' => array('administer site configuration'),
'type' => MENU_NORMAL_ITEM,
);

2. 生成相应的form

function keats_flow_us(){
$form['keats_flow_us_facebook'] = array(
'#type' => 'textfield',
'#title' => t('Facebook'),
'#default_value' => variable_get('keats_flow_us_facebook', ''),
'#description' => t('Facebook Link'),
);

$form['keats_flow_us_youtube'] = array(
'#type' => 'textfield',
'#title' => t('YouTobe'),
'#default_value' => variable_get('keats_flow_us_youtube', ''),
'#description' => t('YouTobe Link'),
);

$form['keats_flow_us_twitter'] = array(
'#type' => 'textfield',
'#title' => t('Twitter'),
'#default_value' => variable_get('keats_flow_us_twitter', ''),
'#description' => t('Twitter Link'),
);

$form['keats_flow_us_linkedin'] = array(
'#type' => 'textfield',
'#title' => t('Linkedin'),
'#default_value' => variable_get('keats_flow_us_linkedin', ''),
'#description' => t('Linkedin Link'),
);

$form['#submit'][] = 'keats_flow_us_submit';
//如果直接返回$form, 则不会有保存按钮,需要drupal初始化这个form
return system_settings_form($form);
}

3. 保存配置
function keats_flow_us_submit($form, $form_state) {
variable_set('keats_flow_us_facebook', $form_state['input']['keats_flow_us_facebook']);
variable_set('keats_flow_us_youtube',  $form_state['input']['keats_flow_us_youtube']);
variable_set('keats_flow_us_twitter',  $form_state['input']['keats_flow_us_twitter']);
variable_set('keats_flow_us_linkedin', $form_state['input']['keats_flow_us_linkedin']);
}

//4.调用
$links['fb'] = variable_get('keats_flow_us_facebook', '');
$links['yt'] = variable_get('keats_flow_us_youtube', '');
$links['tw'] = variable_get('keats_flow_us_twitter', '');
$links['in'] = variable_get('keats_flow_us_linkedin', '');
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: