将参数传递给Drupal模块

时间:2010-06-21 16:48:35

标签: drupal module parameters

如何将参数(例如:SKU12345)传入Drupal模块。 这是我到目前为止所拥有的......

网址:/ my_module / sku / SKU12345

  $items['my_module/sku/%mySKU'] = array(
    'title' => 'Information for SKU %',               // include SKU in title 
    'page callback' => 'my_module_with_parm',
 //'page arguments' => array('my_function_name', 3),   // 3rd parameter?
 'page arguments' => array(3),   // 3rd parameter?
    'access arguments' => array('access content'),
    'type' => MENU_CALLBACK,
    'file' => 'my_module.pages.inc',
  );


//function my_function_name()
//{}

function my_module_with_parm($my_parm) {

  $output = $my_parm;
  return $output;
}

1 个答案:

答案 0 :(得分:3)

您的基本方法看起来不错,但您需要进行一些小的调整:

  1. 您需要使用'page arguments' => array(2) - (参数计数为零)
  2. 您应该使用$items['my_module/sku/%']作为初学者 - %mySKU符号would try to use a 'wildcard loader function',因此需要额外的回调功能。 (根据您的情况,您可能希望稍后使用此机制,但目前它可能会分散注意力)
  3. 如果你想根据传入的名称调整标题,你不能直接使用通配符,你需要使用'标题回调'/'标题参数'组合(与页面回调相同)和参数参数)。