我是 Drupal 的新手,所以我想创建一个自定义用户配置文件的简单模块,特别是我想为用户配置文件插入一些选项卡(传统的用户配置文件有 2 个选项卡“查看选项卡”和“编辑选项卡”)所以现在我想要添加更多 3 个标签。
- 显示历史
- 分享个人资料
- 捷径
但它只适用于经过身份验证的用户而不是管理员配置文件(当管理员显示他的配置文件时,配置文件是传统配置文件)。所以它是我的代码(我的模块名称是:tung_tab),这里是 tung_tab.module 的代码:
function tung_tab_menu()
{
$items = array();
global $user;
//if (!user_access('administer'))
if($user->uid!=1)
{
$items['user/%/rvhistory'] = array(
'title' => 'Review History ',
'description' => 'Review History',
//'page callback' => 'drupal_get_form',
//'page arguments' => array('tung_tab_confirm_reviewh', 1),
'access callback' => 'user_view_access',
'access arguments' => array(1),
'type' => MENU_LOCAL_TASK,
);
$items['user/%/sharehistory'] = array(
'title' => 'Share History',
'description' => 'Share History',
//'page callback' => 'drupal_get_form',
//'page arguments' => array('tung_tab_confirm_shareh', 1),
'access callback' => 'user_view_access',
'access arguments' => array(1),
'type' => MENU_LOCAL_TASK,
);
$items['user/%/sc'] = array(
'title' => 'Shortcut',
'description' => 'Shortcut',
//'page callback' => 'getDescription',
//'page arguments' => array('tung_tab_confirm_shareh', 1),
'access callback' => 'user_view_access',
'access arguments' => array(1),
'type' => MENU_LOCAL_TASK,
);
}
return $items;
}
它适用于管理选项卡,但是当我注销然后与其他用户登录但没有改变时,如果我评论 //if($user->uid) 行,一切都可以,所以当我添加更多代码时在这一行 'title' => 'Review History '.$user->uid,当我是管理员时,它显示 Review History 1 当我用另一个帐户登录时,一切都一样,Review History 1 我不能明白为什么?我认为我的代码出现了一些错误,我将模块放在“mysite/sites/default/modules/”中