Drupal 菜单\本地\任务问题

Drupal 菜单\本地\任务问题,drupal,drupal-modules,Drupal,Drupal Modules,我正在尝试在drupal中向菜单添加一个选项卡,并使用此功能对其进行测试: function my_module_menu() { $items['user/%user/classifieds'] = array( 'title' => 'Action', 'type' => MENU_LOCAL_TASK, 'page callback' => 'my_module_page', 'page arguments' => array(1

我正在尝试在drupal中向菜单添加一个选项卡,并使用此功能对其进行测试:

function my_module_menu() {
  $items['user/%user/classifieds'] = array(
    'title' => 'Action',
    'type' => MENU_LOCAL_TASK,
    'page callback' => 'my_module_page',
    'page arguments' => array(1),
    'weight' => 2,
  );
  return $items;
}

但是什么也没有出现。为什么?

您需要
访问回调
,或者至少需要
访问参数
访问回调
默认为
用户访问()
,如果未定义):


另外,在更改
hook_menu()

时,请确保重建菜单或清除缓存。您需要
访问回调
,或者至少是
访问参数
访问回调
如果未定义,默认为
用户访问()
):


另外,在更改
hook\u menu()

hmmmm…时,请确保重建菜单或清除缓存…我使用了您发布的代码,但仍然看不到选项卡…:(我还通过将所有表与名称中的_cache关联来清除缓存。还有菜单缓存(cache\u menu),但仍然没有成功。是否定义了函数
my_module_page
,它是否返回包含页面输出的字符串?更改
hook_菜单
时唯一需要重建的是菜单。允许您单独执行此操作;否则,只需转到站点配置->性能,然后单击清除缓存数据按钮即可n、 哇。很酷。它就在那里。似乎删除表还不够。另一件事:在D6中,我们使用它作为访问参数:“访问”=>user\u访问(TPZCLASSIFIED\u PERM\u VIEW\u PROFILETAB),我必须如何在D6中使用它?如果我以上述方式使用它,我将无法看到该页面,因为缺少权限。您需要使用定义权限,它将返回一个字符串数组。然后,您将能够使用
array('permission name'))
用于
访问参数
。只需确保用户在用户管理->权限上设置了该权限。嗯…我使用了您发布的代码,但仍然看不到选项卡…:(我还通过将所有表与名称中的_缓存关联来清除缓存。还有菜单缓存(cache_菜单),但仍然没有成功。是否定义了函数
my_module_page
,它是否返回包含页面输出的字符串?更改
hook_菜单
时唯一需要重建的是菜单。允许您单独执行此操作;否则,只需转到站点配置->性能,然后单击清除缓存数据按钮即可n、 哇。很酷。它就在那里。似乎删除表还不够。另一件事:在D6中,我们使用它作为访问参数:“访问”=>user\u访问(TPZCLASSIFIED\u PERM\u VIEW\u PROFILETAB),我必须如何在D6中使用它?如果我以上述方式使用它,我将无法看到该页面,因为缺少权限。您需要使用定义权限,它将返回一个字符串数组。然后,您将能够使用
array('permission name'))
用于
访问参数
。只需确保用户在用户管理->权限中设置了该权限即可。
function my_module_menu() {
  $items['user/%user/classifieds'] = array(
    'title' => 'Action',
    'type' => MENU_LOCAL_TASK,
    'page callback' => 'my_module_page',
    'page arguments' => array(1),
    'access arguments' => array('access content'),
    'weight' => 2,
  );
  return $items;
}