[gelöst] Hilfe-> hook_menu() klappt nicht.
am 21.08.2013 - 13:27 Uhr in
Hallo ihr,
ich bin gerade dabei für ein neues Modul was ich entwickle eine Backend Konfigurationsform zu schreiben. Naja, also ich will nur eine Variable dort eintragen die über eine Form definiert wird.
Nur mein hook_menu schient nicht zu funktionieren.
<?php
function test_limit_menu() {
$items['admin/config/services/test'] = array(
'title' => 'test',
'description' => 'Admin From',
'page callback' => 'drupal_get_form',
'page arguments' => array('test_limit_admin_form'),
'access arguments' => array('administer site'),
'type' => MENU_NORMAL_ITEM,
);
return $items;
}
/**
* Admin config form
*/
function test_limit_admin_form($form, &$form_state) {
$form['testlimit_timerange'] = array(
'#type' => 'textfield',
'#title' => t('Welche Zeitspanne'),
'#description' => t('test test test.'),
'#default_value' => variable_get('testlimit_timerange', ''),
'#size' => 50,
'#maxlength' => 100,
);
// Submit button
$form['submit'] = array(
'#type' => 'submit',
'#value' => t('Save settings'),
);
return $form;
}
?>
Das komische daran ist er will den Pfad admin/config/services/test nicht festlegen. Da kriege ich immer ein 404. Also denke ich das das Modul diesen Pfad nicht registriert bekommt. Es wird aber gefunden und es ist auch aktiviert.
Habt ihr eine Idee wie ich rausfinden kann ob er den Pfad irgendwie blockt, also ob drupal sich irgendwie weigert diesen Pfad zu registrieren?
Woran könnte das sonst noch liegen?
Danke für eure Hilfe
- Anmelden oder Registrieren um Kommentare zu schreiben
Mögliche Fehlerquellen: Hast
am 21.08.2013 - 13:47 Uhr
Mögliche Fehlerquellen:
sense-design | online solutions | Do not hack core!
Drupalcenter Verhaltensregeln | Threads bitte auf [gelöst] stellen.
du machst mir gerade richtig
am 21.08.2013 - 13:53 Uhr
du machst mir gerade richtig Hoffnung.
NEIN, ich bin nicht als User 1 angemeldet. Aber als jemand mit Admin Rechten.
Was kann ich tun????
Ich sag schonmal vielen Dank.
am 21.08.2013 - 14:08 Uhr
Ich sag schonmal vielen Dank. Darauf wäre ich nie gekommen!!!
Habs gerade mit dem User admin mit der uid 1 versucht. Darunter klappts perfekt.
Wie kriege ich dies unter den anderen Admins auch zum laufen? Ich dachte immer Administrator ist Administrator, hätte nicht gedacht das es da einen Unterschied gibt.
Nein, erheblicher
am 21.08.2013 - 14:24 Uhr
Nein, erheblicher Unterschied. Du hast in deinem Code die "access arguments" auf "administer site" gestellt, die aber im System nicht definiert sind, der Systemausdruck wäre "administer site configuration"
"administer site" musst Du erst über den hook_permission() definieren.
Zur Info: User 1 bekommt in den Access callbacks immer TRUE zurück, egal welche Berechtigung definiert ist. Es wird hier auf die Zahl 1 geprüft, ein weiterer "Adminaccount" hat dann aber die UID 2 und läuft somit in die normale Berechtigungsprüfung des System.
sense-design | online solutions | Do not hack core!
Drupalcenter Verhaltensregeln | Threads bitte auf [gelöst] stellen.
Vielen lieben Dank für deine
am 21.08.2013 - 14:35 Uhr
Vielen lieben Dank für deine Antwort.
Konnte das Problem beheben. Das war mir garnicht bewust.
Gruß
-Der entspannte Peter