我在下面有这个菜单钩子,我正在向函数发送两个参数。
但是在函数中我只接收第一个参数。
有没有人知道如何使用Drupal菜单系统发送和获取多个参数?
function drupal_menu(){
$items = array();
$items['drupal/%/%'] = array(
'title' => t('Welcome to the Hello World Module'),
'page callback' => 'drupal_page',
'page arguments' => array(1,2),
'access arguments' => array('access content'),
'type' => MENU_CALLBACK,
);
return $items;
}
function drupal_page($arg1, $arg2) {
return drupal_json(array('mess1'=>$arg1,'mess2'=>$arg2));
}
答案 0 :(得分:8)
你已经按照正确的方式做了,如果它不起作用,请尝试刷新你的缓存。由于您添加了第二个参数,因此它们可能尚未被清除,Drupal会缓存从hook_menu()返回的项目,因此不必在每个页面上调用它。
答案 1 :(得分:1)
无论如何,你是正确的方式...如果它不适合你,那么尝试以下
function drupal_page($arg1, $arg2) {
$arg1_new = arg(1) ;
$arg2_new = arg(2) ;
return drupal_json(array(
'mess1'=>$arg1_new,
'mess2'=>$arg2_new
)
);
}