關閉 WordPress 特定外掛更新檢查,在控制台選單隱藏提示通知

WordPress 停止特定外掛更新檢查

從很早以前 WordPress 就有自動檢查主程式、外掛或佈景主題版本更新的功能,在連接 Jetpack 後還能開啟「自動更新」選項,當遇到外掛有新版本釋出時直接幫你升級上去,讓網站持續維持在最新狀態,特別是遇到外掛有漏洞或臭蟲時縮短對網站造成危害的時間。不過在某些情況下我們可能想讓外掛停留在特定版本,例如外掛大改版功能不如以往、新版本調整價格方案或是手動修改了外掛程式碼等等,有沒有辦法單獨關閉某個外掛程式的更新檢查或通知呢?

上個月我在遇到這個問題時寫了一篇「Easy Updates Manager 自訂 WordPress 更新關閉特定外掛、佈景主題通知」教學,其實是透過外掛程式來控制 WordPress 更新通知,例如將所有更新功能關閉,或是單獨關閉隱藏某些 WordPress 外掛或佈景主題的更新,這部份在 WordPress 還沒辦法做到(只能把更新功能全部關掉)。

後來研究了一下發現有更好的解決方法,只要一段程式碼就可以把特定外掛更新檢查關閉,也不會在控制台出現紅色的更新提示,其餘外掛更新功能依然能夠運作。只要複製以下程式碼並修改其中兩個位置:plugin-folder/plugin.phpplugin-folder2/plugin2.php 改為你要關閉更新的外掛路徑和程式名稱即可。


<?php
// have to add that opening tag to get syntax highlighting… ¯\_(ツ)_/¯
/**
* Prevent update notification for plugin
* http://www.thecreativedev.com/disable-updates-for-specific-plugin-in-wordpress/
* Place in theme functions.php or at bottom of wp-config.php
*/
function disable_plugin_updates( $value ) {
$pluginsToDisable = [
'plugin-folder/plugin.php',
'plugin-folder2/plugin2.php'
];
if ( isset($value) && is_object($value) ) {
foreach ($pluginsToDisable as $plugin) {
if ( isset( $value->response[$plugin] ) ) {
unset( $value->response[$plugin] );
}
}
}
return $value;
}
add_filter( 'site_transient_update_plugins', 'disable_plugin_updates' );

將這段程式碼貼到佈景主題的 functions.php 就能關閉特定外掛程式更新檢查。

使用教學

STEP 1

WordPress 會對外掛和佈景主題進行版本檢查,如果遇到新版本釋出,控制台會出現提示讓使用者升級到最新版本。除此之外,在側邊欄選單、頂部工具列或 WordPress 更新頁面也都會有提示,若想停留在特定版本時只能忍受這些通知,因為 WordPress 還無法讓使用者單獨跳過更新。

WordPress 停止特定外掛更新檢查

WordPress 停止特定外掛更新檢查

STEP 2

將前面提到的程式碼稍作修改,複製到佈景主題函式庫 functions.php,記得要把其中的外掛程式路徑改成你要停止更新檢查的外掛。這裡我是直接使用內建的「佈景主題編輯器」做示範,建議使用一般編輯器,若是不知道要關閉更新的外掛路徑,可以透過 FTP 或是檔案管理功能去查看路徑。

WordPress 停止特定外掛更新檢查

STEP 3

修改後再回到 WordPress 外掛頁面,原本的更新提示就會消失,在選單或工具列的通知也不會繼續顯示,不過要注意的是這個外掛以後就不會自動檢查更新,為了避免安全方面問題,建議還是盡量維持在新版會比較好,若你有特殊需求不想升級那可以透過本文的方式將外掛更新檢查關閉。

WordPress 停止特定外掛更新檢查

值得一試的三個理由:

  1. 單獨關閉 WordPress 特定外掛更新檢查
  2. 無需安裝額外外掛,只要將程式碼貼到函式庫即可使用
  3. 關閉後就不會在外掛頁面、選單和工具列出現更新提示訊息
分享到...