Ich verwende Drupal 7, Views 3 und hook_menu_alter
function MYMODULE_menu_alter(&$items){
$items['client/place/%'] = array(
'access callback' => 'custom_function',
);
}
Um die Sichtbarkeit der Ansicht (Zugriff) zu überschreiben und auch die Caches zu leeren, aber dies scheint nicht zu funktionieren. Kann jemand etwas Licht darauf geben, wie dies gelöst werden kann. Ist dies der richtige Weg, um den durch eine Ansicht definierten Pfad zu überschreiben?
Danke im Voraus
Antworten:
Erinnerung: Mit dem Modul "Ansichten" können Sie den Zugriff über die Benutzeroberfläche von Ansichten festlegen
Wenn Sie Ihre eigene Logik erstellen möchten; So sollte Ihr Code aussehen:
Stellen Sie sicher, dass Ihr Modul nach dem Views-Modul aufgerufen wird. Normalerweise beträgt das Gewicht des Views-Moduls 10; Ihr Modul sollte also 11 oder mehr sein.
Vergessen Sie auch nicht, Ihren Cache zu leeren.
quelle
hook_module_implements_alter
Ihrehook_menu_alter
Implementierung nach Ansichten zu verschieben und dann die Menüelemente anzuzeigen, die Ansichten hinzugefügt haben. Funktioniert ungefähr so wie das Festlegen des Modulgewichts, außer dass Sie kein explizites Gewicht für Ihr Modul festlegen müssen.$items['user/%views_arg/posts']['access callback'] = 'MYMODULE_custom_access_callback';