it-swarm.com.de

Wie löscht man Menü-Caches programmgesteuert?

Ich entwickle ein benutzerdefiniertes Modul. In diesem Modul möchte ich Menü-Caches programmgesteuert löschen. Dafür habe ich verwendet

\Drupal::cache('menu')->invalidateAll(); // for clearing the menu cache      
\Drupal::service('plugin.manager.menu.link')->rebuild(); // rebuild the menu

Aber irgendwie scheint der Menü-Cache nicht geleert zu sein und trotzdem wird das alte Menü angezeigt. Wie kann ich erzwingen, dass Drupal) mein aktualisiertes Menü anzeigt?

4
latikas

Menüs werden über Blöcke angezeigt. Sie müssen wahrscheinlich auch den Block-Rendering-Cache leeren.

\Drupal::cache('block')->invalidateAll();
6
CG Monroe