WordPress移除後台的警示

進到WordPress後台的時候,通常都會看到視窗上方有警示,這不一定代表錯誤,通常都是提醒外掛、佈景更新,或是一些提示。

縱使我們自己知道上面的訊息意思,但客戶看到都會多問,為了避免這種越解釋越多的狀況,通常我會選擇移除這些警示,或者只讓最大的管理員看到,作法有很多,請參考下面的code。

 

//移除所有警示
add_filter('ure_role_additional_options', 'ure_add_block_admin_notices_option', 10, 1);
function ure_add_block_admin_notices_option($items) {
    $item = URE_Role_Additional_Options::create_item('block_admin_notices', esc_html__('Block admin notices', 'user-role-editor'), 'admin_init', 'ure_block_admin_notices');
    $items[$item->id] = $item;
    
    return $items;
}
function ure_block_admin_notices() {
    add_action('admin_print_scripts', 'ure_remove_admin_notices');    
}
add_action('admin_print_scripts', 'ure_remove_admin_notices'); 
function ure_remove_admin_notices() {
    global $wp_filter;
    if (is_user_admin()) {
        if (isset($wp_filter['user_admin_notices'])) {
            unset($wp_filter['user_admin_notices']);
        }
    } elseif (isset($wp_filter['admin_notices'])) {
        unset($wp_filter['admin_notices']);
    }
    if (isset($wp_filter['all_admin_notices'])) {
        unset($wp_filter['all_admin_notices']);
    }
}