Drupal 7 Drupal自定义模块挂钩菜单不使用querystring参数

Drupal 7 Drupal自定义模块挂钩菜单不使用querystring参数,drupal-7,query-string,hook-menu,Drupal 7,Query String,Hook Menu,我通过电子邮件向用户发送一个链接,当他们注册时,他们必须点击,它将自动引导并登录到该网站 我在尝试访问此链接时遇到404错误 发送的电子邮件示例: www.someurl.com/custom_confirm/verify?电子邮件=test@test.com&hash=somehash 自定义确认中的我的挂钩菜单如下所示: function custom_confirm_menu(){ $items = array(); $items['custom_confirm/veri

我通过电子邮件向用户发送一个链接,当他们注册时,他们必须点击,它将自动引导并登录到该网站

我在尝试访问此链接时遇到404错误

发送的电子邮件示例:

www.someurl.com/custom_confirm/verify?电子邮件=test@test.com&hash=somehash

自定义确认中的我的挂钩菜单如下所示:

function custom_confirm_menu(){
    $items = array();

    $items['custom_confirm/verify'] = array(
        'title' => 'Confirming Registration',
        'page callback' => 'verify_email',
        'access callback' => TRUE,
    ); 
    return $items;
}
我的职能

function verify_email()
当我点击此URL时未被调用。它给了我一个404,并且在验证电子邮件功能中没有任何代码


这个菜单有什么问题吗?我不明白这为什么不起作用?

您的语法似乎没有问题,请尝试两种方法,清除缓存,如果不起作用,请禁用,然后卸载自定义模块并重新安装。在激活的模块上动态更改菜单时,菜单往往是一个棘手的问题。如果您的菜单只是一个回调,那么添加type=>menu\callback,否则它将是默认值:菜单中显示的菜单项。我意识到这是因为当我升级到开发环境时,它正在迁移数据库更改,而没有清除开发环境上的缓存--实际上只是缓存问题--似乎您的语法是正确的,请尝试两种方法,清除缓存,如果它不工作,请禁用,然后卸载自定义模块并重新安装。在激活的模块上动态更改菜单时,菜单往往是一个棘手的问题。另外,如果您的菜单只是一个回调,那么add type=>menu\u callback,否则它将是默认值:menu\u NORMAL\u项,它显示在菜单中。我意识到这是因为当我向上推到开发环境时,它正在迁移数据库更改,而没有清除开发环境上的缓存--实际上只是一个缓存问题--