Drupal 6 jolly assoluti in _menu (), è possibile?
-
19-09-2019 - |
Domanda
è possibile gestire tutti i caratteri jolly in _menu () dal modulo.
So di jolly specifici come
display/page/%
ma che non funziona per i percorsi display/page/3/andOrderBy/Name
Che cosa devo fare per gestire ammount imprevista di parametri come
display/page/3/12/45_2/candy/yellow/bmw/turbo
Voglio avere percorso una display/*
_menu () per gestire tutti gli argomenti.
come posso fare?
Soluzione
Drupal passerà eventuali elementi aggiuntivi come URL I parametri aggiuntivi per la vostra funzione di callback hook_menu
- utilizzare noreferrer func_get_args () nel callback per farli.
Quindi, se registrare un solo display/page/%
wildcard, ma la richiesta effettiva ha due elementi aggiuntivi display/page/3/andOrderBy/Name
, il callback verrà passata '3' come un parametro esplicito, ma anche 'andOrderBy' e 'nome', come quelli aggiuntivi impliciti.
Esempio di callback:
function yourModuleName_display_callback($page_number) {
// Grab additional arguments
$additional_args = func_get_args();
// Remove first one, as we already got it explicitely as $page_number
array_shift($additional_args);
// Check for additional args
if (!empty($additional_args)) {
// Do something with the other arguments ...
}
// other stuff ...
}
Altri suggerimenti
ah;) avevi ragione
ecco come ho risolto.
function mysearch_menu() {
$items['mysearch/%'] = array(
'page callback' => 'FN_search',
'access callback' => TRUE,
);
return $items;
}
function FN_search()
{
return print_r(func_get_args(),true);
};