dinamica drupal reindirizzamento interno
Domanda
Quello che voglio è piuttosto semplice. Ho registrato un percorso
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;
}
Quando questa voce di menu viene attivato, voglio riorientare (senza cambiare l'url) a una pagina di tassonomia, di cui il termine viene scelto in una funzione che viene eseguita quando questa funzione viene chiamata.
Come posso fare questo (especcially senza cambiare l'url)?
Soluzione
Non è possibile chiamare direttamente taxonomy_term_page
come page callback
come avresti bisogno di fornire una funzione di carico per caricare il termine, che è solo andare a essere troppo difficile con la configurazione che hai.
Invece, definire la propria pagina richiamata come intermediario e solo tornare l'uscita dal taxonomy_term_page
direttamente:
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);
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow