我想要的很简单。我已经注册了一条路径
function spotlight_menu() {
$items = array();
$items['congres'] = array(
'title' => 'Congres',
'title arguments' => array(2),
'page callback' => 'taxonomy_term_page',
'access callback' => TRUE,
'type' => MENU_NORMAL_ITEM,
);
return $items;
}
当触发此菜单项时,我想将(不更改URL)重定向到分类页面,该术语在调用此函数时运行的函数中选择。
我该怎么做(特别是不更改网址)?
答案 0 :(得分:1)
您无法直接拨打taxonomy_term_page
作为page callback
,因为您需要提供加载功能才能加载该术语,这对您设置的设置来说太难了得到。
相反,将您自己的页面回调定义为中介,并直接从taxonomy_term_page
返回输出:
function spotlight_menu() {
$items = array();
$items['congres'] = array(
'title' => 'Congres',
'page callback' => 'spotlight_taxonomy_term_page',
'access callback' => TRUE,
'type' => MENU_NORMAL_ITEM,
);
return $items;
}
function spotlight_taxonomy_term_page() {
// Get your term ID in whatever way you need
$term_id = my_function_to_get_term_id();
// Load the term
$term = taxonomy_term_load($term_id);
// Make sure taxonomy_term_page() is available
module_load_include('inc', 'taxonomy', 'taxonomy.pages');
// Return the page output normally provided at taxonomy/term/ID
return taxonomy_term_page($term);
}