Верхнее меню можно менять довольно давно, собственно по логике с верхним меню и делали работу виджетов.
switch($e->name){ case 'OnManagerMenuPrerender': //if($_SESSION['mgrRole']!=='2') return; unset($menu['reports']); unset($menu['tools']); unset($menu['users']); unset($menu['modules']); unset($menu['elements']); unset($menu['add_resource']); unset($menu['add_weblink']); $menu['remove_locks'] = array('remove_locks','main','Remove locks','javascript:modx.removeLocks();','Удалить блокировки','this.blur();','remove_locks','',0,20,''); $modx->event->output(serialize($menu)); break; }
Единственное замечу что если будет несколько плагинов то удаление элементов нужно делать в последнем плагине, добавлять можно в любом.