hook_menu
am 28.02.2008 - 17:41 Uhr in
Hi,
ich möchte einige functionen verschiedener Module ändern, dazu setz ich beim hook_menu an.
z.B.
function mymodule_menu($may_cache) {
$items = array();
if ($may_cache) {
$items[] = array('path' => 'taxonomy/term',
'title' => t('Taxonomy term'),
'callback' => 'mymodule_taxonomy_term_page',
'access' => user_access('access content'),
'type' => MENU_CALLBACK);
}
return $items;
}
allerdings scheint dieser 'path' im taxonomy modul später als in meinem modul gesetzt zu werden, ergo wird wieder überschrieben und somit wieder das orginale callback ausgeführt (taxonomy_term_page statt mymodule_taxonomy_term_page). nur wenn ich testweise $may_cache mal auf true setze funktioniert es wie gewünscht, was ja aber nicht die lösung sein kann.
mit dem devel modul hab ich testweise auch mal eine clear_cache durchgeführt.
Wo ist also mein denkfehler? Müsste ich alles in einen else{} (!$may_cache) part setzen um wirklich sicher zu gehen, das meine funktionen als letztes ausgeführt werden? Und wie ist es wenn ein Fremdmodul z.B. search.modul schon eine else{} part hat, wie überschreib ich diesen? Oder muss ich diese items welche ich neu setzen möchte aus den anderen modulen löschen? Ahh, hilfe, bin verwirrt und komm nicht weiter :)
Danke schonmal im vorraus.
- Anmelden oder Registrieren um Kommentare zu schreiben
als alternative kannst du
am 28.02.2008 - 18:22 Uhr
als alternative kannst du auch in der tabelle "system" der DB den weight deines Modules auf was hoches setzen
-> wird später ausgeführt
--------------
Mein Blog: www.freeblogger.org
Deutscher IRC-Channel: irc.freenode.net #drupal.de je mehr desto besser
... Jabber-me: dereine@jabber.ccc.de Warum Jabber?
Wie so oft, die Antwort war
am 28.02.2008 - 18:29 Uhr
Wie so oft, die Antwort war mal wieder Kürzer als die Frage. Dank dir!!!