您可以从中删除所有操作admin_notices
钩最好的方法可能是从钩子本身的最早优先级开始,这样您就可以捕获任何延迟注册的通知。
add_action(
\'admin_notices\',
function() {
if ( ! current_user_can( \'manage_options\' ) ) {
remove_all_actions( \'admin_notices\' );
}
},
0
);
问题是,管理通知几乎没有标准化,可能有插件以错误的方式或在错误的位置注册通知。因此,如果该代码没有捕获到任何通知,则需要根据具体情况对其进行处理。