WordPress 後台更新通知太多:哪些能關、哪些不能關,自動更新怎麼設

WordPress 後台更新通知太多:哪些能關、哪些不能關,自動更新怎麼設

最後更新:2026/10/15

網店的員工早上登入後台要出貨,第一眼看到的是「WordPress 有新版本」、「有 6 個外掛可以更新」、某個外掛的「升級專業版享 7 折」、另一個外掛的「請給我們五顆星」。員工看了也不能處理,只能每天關掉;老闆自己看了想點更新,又怕更新完版面壞掉。

網路上流傳一種做法:把更新檢查整個關掉,後台就清靜了。這個做法的問題是連管理員也看不到更新,網站就這樣用舊版用一年,安全性漏洞沒補。這篇的做法分兩層:非管理員只看到紅色的錯誤訊息,其他通知都藏起來;管理員照常看到更新,但把「自動更新」設成合理的規則,信得過的外掛自動裝、大改版等人確認,更新成功不寄信、失敗才寄。

不想自己改?把這篇交給 AI

把這篇的網址(或全文)連同下面這段話貼給 AI:

我的網站是 WordPress。我想照下面這篇文章,讓非管理員看不到更新提示和外掛廣告,並設定哪些外掛可以自動更新、WordPress 本體只自動更新小版本、更新通知信怎麼寄。
請先問我:我的網站有哪些使用者角色、哪些外掛我信得過可以自動更新、佈景主題有沒有改過。
問清楚之後,再一步一步告訴我:要用哪一段程式碼、貼在哪裡、哪些地方要換成我自己的資料,以及改完怎麼測試。
如果文章的做法不適合我的網站,請直接告訴我原因和替代做法。
文章:(貼上這篇的網址,或整篇內容)

改之前先備份,密碼不要貼給 AI。

先分清楚三種通知

後台上方那些黃色、藍色、綠色的框,來源有三種。第一種是 WordPress 本身的更新提醒:「WordPress 7.x 已經推出」。第二種是外掛和佈景主題的更新數字:選單上「更新」旁邊的紅色數字、外掛列表裡「有新版本」那一行。第三種是外掛自己印的通知:宣傳、評分邀請、設定精靈。

第一、二種只有「可以更新」權限的人看得到,商店經理、編輯這些角色本來就看不到;第三種誰都看得到,也是最煩的。所以對員工來說,要處理的是第三種;對管理員來說,要處理的是「看到了之後怎麼辦」,也就是自動更新的規則。

完整程式碼

// 第 83 篇:後台更新通知哪些能關、自動更新怎麼設

// 1. 不是管理員的人(商店經理、編輯),不顯示「有新版本」的提示和外掛的宣傳通知
add_action('admin_init', function () {
    if (current_user_can('update_plugins')) {
        return; // 管理員照常看到
    }
    remove_action('admin_notices', 'update_nag', 3);
    remove_action('admin_notices', 'maintenance_nag', 10);
    add_action('admin_print_styles', function () {
        echo '<style>.update-nag, .notice:not(.notice-error), .woocommerce-message{display:none !important}</style>'; // 只留紅色的錯誤訊息
    });
});

// 2. 自動更新:只讓信得過的外掛自動更新,其他的自己來
add_filter('auto_update_plugin', function ($update, $item) {
    $auto = ['akismet/akismet.php', 'hello.php']; // 這幾個可以自動更新(外掛檔案路徑)
    return in_array($item->plugin, $auto, true);
}, 10, 2);

// 3. WordPress 本體:小版本(安全性修正)自動更新,大版本等自己確認
add_filter('allow_minor_auto_core_updates', '__return_true');
add_filter('allow_major_auto_core_updates', '__return_false');

// 4. 佈景主題不要自動更新(改過的子主題不受影響,但母主題改版可能動到版面)
add_filter('auto_update_theme', '__return_false');

// 5. 自動更新成功時不要寄信,失敗才寄
add_filter('auto_plugin_update_send_email', function ($enabled, $update_results) {
    foreach ($update_results as $r) {
        if (is_wp_error($r->result)) {
            return true;
        }
    }
    return false;
}, 10, 2);
add_filter('auto_core_update_send_email', function ($send, $type) {
    return $type !== 'success';
}, 10, 2);

程式碼放在 Code Snippets 這類外掛或子主題,放法和備份方式見〈WooCommerce 結帳頁改成台灣習慣〉。

五段各做了什麼

第 1 段只對「沒有更新外掛權限」的人生效,也就是管理員以外的所有角色。它拿掉 WordPress 本身的更新提醒和維護提醒,再用一行樣式把所有通知藏起來,只留紅色的錯誤訊息(notice-error)。錯誤訊息要留,因為「無法連線到資料庫」「寄信失敗」這種東西員工該看到。管理員登入看到的畫面完全不變。

第 2 段決定哪些外掛可以自動更新。WordPress 5.5 之後,外掛列表每一列都有「啟用自動更新」的連結,可以一個一個點;這段用程式統一管,名單裡的外掛自動更新,不在名單的一律不自動,就算有人在列表點了「啟用」也會被這段蓋過去。名單用外掛的檔案路徑,在外掛列表每一列的「啟用自動更新」連結網址裡看得到,或看外掛資料夾下的主檔名。建議放進名單的是:作者更新頻繁、每次更新都很小、壞了也不影響版面的外掛,例如防垃圾留言、安全掃描、備份這些;WooCommerce、頁面編輯器、佈景主題這類改版會動到畫面的,留給自己手動更新,更新前先備份。

第 3 段是 WordPress 本體。小版本(7.1.2 到 7.1.3)通常是安全性和錯誤修正,自動裝最安全;大版本(7.1 到 7.2)會改功能、改編輯器,等自己有空、備份好再按。這兩行就是這個規則,WordPress 預設也是這樣,寫出來是確保沒有被其他設定改掉。

第 4 段關掉佈景主題的自動更新。你用子主題改過的東西不會被母主題更新蓋掉,但母主題改版有時會改結構,版面可能跑掉,所以主題更新要親自看一眼。

第 5 段管通知信。WordPress 每次自動更新都會寄信給管理員,外掛多的網站每週好幾封「已更新」,久了就不看了,真的失敗那封也跟著漏掉。這段讓成功的不寄、失敗的才寄,WordPress 本體也一樣。

測試結果

我們在本機測試站用「商店經理」和管理員各登入一次:

  • 商店經理登入控制台,加程式碼前看得到一則一般提示和一則錯誤訊息(測試用的),加了之後只剩錯誤訊息。
  • 管理員的外掛列表,「自動更新」那一欄:名單裡的 Akismet 和 Hello Dolly 顯示「自動更新已啟用」,WooCommerce、PDF 發票外掛顯示「自動更新已停用」,和名單一致。
  • 用程式查自動更新的判斷:Akismet 為真、WooCommerce 為假;本體大版本為假、小版本為真;外掛更新成功不寄信。

自動更新不等於不用管

自動更新幫你省掉的是「點按鈕」的時間,不是「確認網站沒壞」的責任。建議每週固定一天登入後台看一眼:有哪些更新等著、自動更新有沒有失敗的信、前台首頁和結帳頁打開看看。更新之前備份、更新之後檢查,這套流程在〈WordPress 網站上線前的檢查清單〉的保護那一節有,上線後每個月照做一次就好。

後台其他讓員工困擾的東西,像用不到的選單、太小的按鈕,可以看〈WordPress 精簡後台〉和〈WordPress 後台依角色換樣式〉,三篇合起來,員工的後台會清爽很多。

網站要有人照顧,但不用天天照顧

更新通知堆在後台沒人理,和自動更新把網站更新壞了沒人發現,是同一個問題的兩面:沒有人負責看。規則定好之後,看的人只要每週花十分鐘。

如果你沒有時間每週看一次,或想把更新、備份、安全檢查交給固定的人,可以先看〈IG 帳號不是你的資產〉想想網站要做到什麼。MIMI 專做客製化網頁設計,也提供網站管家服務,每個月幫你更新、備份和檢查。MIMI 提供臺北網頁設計服務,臺北的店家可以用電話、Email 直接和設計師討論;費用可以先看首頁的製作費用參考,歡迎聯絡 MIMI。

WordPress functions.php 常用小技巧:改掉不順的翻譯、摘要長度、RSS 加圖片、自訂文章網址、拿掉版本號
WordPress 自己寫短代碼:年份、營業中、活動倒數、最新文章,四個例子學會

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

我的車
願望清單
最近瀏覽過的
類別