[gelöst] Reihenfolge mehrerer node_access Module
Eingetragen von kodubis (2)
am 03.12.2014 - 15:07 Uhr in
am 03.12.2014 - 15:07 Uhr in
Servus,
wie kann man die Reihenfolge von Modulen festlegen, die jeweils den Hook node_access implementieren? Ich habe weder was in den Hilfeseiten hier gefunden noch was ergooglen können. Auf Drupal.org finde ich nur, dass das nciht empfohlen wird ... ich benötige aber Simple_access (für die rollen-bezogene Prüfung) plus ein nachgelagertes Modul, das auf Vocabularies abfrägt. Aber egal, in welcher Reihenfolge ich die beiden Module installiere, immer zieht Simple_access als zweites ...
Gruß, merci,
Daniel
- Anmelden oder Registrieren um Kommentare zu schreiben
Mit dem Modul
am 03.12.2014 - 17:22 Uhr
Mit dem Modul https://www.drupal.org/project/modules_weight kannst du mit einer UI einiges bewirken.
Viele Grüße
Roger
Drupalentwickler München
CMS Frameworker Drupal @ Reinblau
Also ich bin ja kein großer
am 04.12.2014 - 09:21 Uhr
Also ich bin ja kein großer Fan davon, für jedes Wehwechen gleich ein neues Modul zu installieren. Dieses Modul Weight macht auch nichts anderes, als den Wert der "weight" spalte in der Tabelle "system" für das jeweilige Modul zu ändern. Du kannst Dir auch einfach deine system-Tabelle vornehmen, die Node Access Module heraussuchen und hier den Wert in der weight-Spalte setzen - je höher desto später wird das Modul aufgerufen.
Reihenfolge
am 05.12.2014 - 10:36 Uhr
Merci für die Tipps, werde ich ausprobieren. Wobei ich generell (und aus schlechter Erfahrung heraus) dagegen bin, manuell in internen Tabellen einer Applikation herumzuwerkeln. Lieber ein Modul, das zwar auch nix anderes macht, aber das eben sauber und kontrolliert.
Mich wundert, dass bei Drupal die Möglichkeit der Änderung der weights der Module nicht vom Core angeboten wird. Ansonsten lässt sich ja auch bei allem ein weight einstellen ...
Also generell funktioniert die Reihenfolgeänderung für Module. Gilt allerdings nicht für die Prüfung von access-rights. Module (bzw. hooks) mit hook_node_access werden vor solchen mit
hook_node_grants (wie z.B. in SimpleAccess9 ausgeführt. Kann das jemand bestätigen? Dazu kenne ich mich Drupal-intern zu wenig aus.
(Falls dem strukturell so ist, muss ich mir eine andere Lösung überlegen für mein spezifisches Problem.)
Anmerkung: Nach dem Ändern der Module-weights muss man noch den Cache leeren ...
Letzter Stand: Aufgrund der in Drupal gegossenen festen Reihenfolge (erst alle hook_node_access und dann alle hook_node_grants) muss ich mir für mein spezifisches Problem eine andere Lösung überlegen (Favorit: mehrere separate hook_node_access). Danke aber für all die Tipps und den Hinweis auf module_weights, das kann ich an anderer Stelle brauchen.