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?

È stato utile?

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);
};
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top