页面回调参数(2)

老葛的Drupal培训班 Think in Drupal

你定义在页面参数中的回调参数将会首先传递给回调函数(也就是说,在传递给回调函数的参数列表中,它放在最前面),其次才是从路径中生成的参数。来自URL的参数仍然可用;为了访问它们,你可以修改回调函数的签名,从而添加来自于URL的参数。所以,对于我们修改后的菜单项,并使用下面的函数签名,那么$first_name将是Jane(页面参数数组的第一项),$last_name将是Doe(页面参数数组的第二项),$a将是John(来自于URL),而$b将是Doe(来自于URL)。
 
function menufun_hello($first_name = '', $last_name = '', $a = '', $b = '') {...}
 
    让我们做一下测试,将Jane Doe放到页面参数中,把John Doe放在URL中,然后看看结果。访问http://example.com/?q=John/Doe,你将看到如图4-6所示的结果(如果你没有得到这些结果,那你一定忘了重构你的菜单了)。
4-6.向回调函数传递和显示参数
 
    在页面回调参数的数组中,键被忽略了,所以你不能使用键来映射函数参数;在这里,只有顺序才是有意义的。回调参数通常是变量,并常用在动态菜单项中。
 

Drupal版本: