1

当用户获得这样的用户密码重置链接时,密码重置像这样http://digitalsuite.unitedway.org/user/reset/3/1356108765/5ff18af572734c897f4d7a2946983a87

它不会自动让他们登录,他们没有收到任何消息,只是立即进入登录屏幕。这是在哪里编码的,所以我可以调试正在发生的事情?谢谢戴安娜

4

1 回答 1

2

当试图找出在 Drupal 中从哪里开始调试时,通常有助于查看定义相关页面的 hook_menu 实现。Hook_menu "...使模块能够注册路径,以定义 URL 请求的处理方式。"

在这种情况下,用户模块的user_menu 函数在 user.module 文件中定义。

$items['user/reset/%/%/%'] = array(
  'title' => 'Reset password',
  'page callback' => 'drupal_get_form',
  'page arguments' => array('user_pass_reset', 2, 3, 4),
  'access callback' => TRUE,
  'type' => MENU_CALLBACK,
  'file' => 'user.pages.inc',
);

请注意,“页面参数”指向位于user.pages.inc 文件中的“user_pass_reset” 。那将是开始调试的好地方。

于 2012-12-25T08:14:42.687 回答