Mehrere Argumente auf Menü Rückruf
-
28-09-2019 - |
Frage
Ich weiß, wie ein Argument zu einem Menü zu übergeben Rückruf
$items['someaddress/%'] = array(
'title' => 'title',
'page callback' => 'some_function',
'page arguments' => 1,
'type' => MENU_CALLBACK
);
Ich verstehe nicht, warum das Argument übergeben wird $_POST['nid']
ist aber das funktioniert. Es entspricht Seite Argument 1.
function some_function (){
$node = isset($_POST['nid']) ? node_load($_POST['nid']) : FALSE;
}
Ich versuche jetzt mehrere Argumente übergeben. $items['someaddress/%/%/%'] = array(
und suche ein Codebeispiel dafür, wie ich das tun.
Danke!
Lösung
Verwenden Sie ein Array für page arguments
:
$items['someaddress/%/%/%'] = array(
'title' => 'title',
'page callback' => 'some_function',
'page arguments' => array(1, 2, 3),
'type' => MENU_CALLBACK,
);
function some_function($arg1, $arg2, $arg3) {
// Insert code here
}
Sie sollten immer halten Argumente zum Menü Rückruf als Array weitergegeben, sowieso .
Zu Ihrer Information: Das Verhalten, das Sie sehen, ist, wie Drupal-Menü-System konzipiert ist. Die Zahl entspricht jedes Argument in das Menü geführt wird. 1 ist das erste Argument, 2 der zweite, etc.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow