我觉得这应该很简单,但我很难实现它。
我想通过Drupal的菜单系统(通过界面,而不是模块)设置菜单项。我只想让这个菜单项直接转到用户/ [uid] /编辑但是我希望路径显示为我的帐户
我尝试使用hook_url_outbound_alter和inbound_alter来重写my-account路径,但是当我尝试设置菜单项时,Drupal将菜单项的路径重写为/ user / 1 / edit(因为我&#39 ;当我设置菜单时,我以管理员用户身份登录。)
我该怎么做?
答案 0 :(得分:0)
我希望找到一个不需要自定义模块的解决方案,但这就是我最终要做的事情:
function user_edit_menu() {
global $user;
print_r($user);
$items['my-account'] = array(
'page callback' => '_user_edit_page_callback',
'access callback' => '_user_edit_access_callback',
'file' => 'user.pages.inc',
'file path' => drupal_get_path('module', 'user')
);
return $items;
}
function _user_edit_page_callback() {
global $user;
return drupal_get_form('user_profile_form', $user);
}
function _user_edit_access_callback() {
global $user;
return user_edit_access($user);
}
现在我可以将菜单项指向my-account并获取用户编辑表单。