禁用特定/個別 WordPress 外掛的更新通知,以及禁用 WordPress 外掛更新通知幾種方法

正在檢視 3 個帖子:1-3 (共 3 個帖子)
  • 作者
    帖子
  • 詩語
    管理員
    • 文章數量: 5,932
    @feibisi
    樓主

    要禁用此更新通知,設定選單或管理儀表板中的任何其他位置都不會切換。為了防止 WordPress 在您的 WordPress 儀表板上顯示這些資訊片段,您需要將 PHP 程式碼片段新增 到您的 functions.php 檔案中。

    因此,請轉到您主題的資料夾 (/ wp-content / themes / your-theme) 並開啟 functions.php 檔案。

    現在透過該檔案底部的以下程式碼:

    禁用 WordPress 更新通知

    // hide update notifications
    function remove_core_updates(){
    global $wp_version;return(object) array('last_checked'=> time(),'version_checked'=> $wp_version,);
    }
    add_filter('pre_site_transient_update_core','remove_core_updates'); //hide updates for WordPress itself
    add_filter('pre_site_transient_update_plugins','remove_core_updates'); //hide updates for all plugins
    add_filter('pre_site_transient_update_themes','remove_core_updates'); //hide updates for all themes

    如果您只想隱藏核心更新,主題更新或外掛更新,請刪除最後三行中的任何一行。

    儲存你的檔案,並在你的 WordPress 管理區更新通知應該消失。如果您與客戶合作,這可能是一個優雅的解決方案,讓您儘可能簡單地保持客戶儀表板的介面。

    詩語
    管理員
    • 文章數量: 5,932
    @feibisi
    樓主

    「有一個新版本的 XYZ 外掛可用」 。這個訊息對 WordPress 管理員來說非常熟悉。但有時候,我們需要把它關掉。例如,我只是定製了一個外掛,不想讓我的定製程式碼被不知道這個外掛的人覆蓋。

    WordPress 的,外掛更新通知

    實際上有多個解決方案。讓我告訴你怎麼做。

    解決方案 1 ​​ – 更改版本號
    沒有太多的駭客,只需將外掛的版本號更改為超大號碼 (如 999.9) 就可以停止更新通知。因為 999 應該保持很長一段時間的最新版本。

    但是當我遇到來自客戶端的 「禁用 WordPress 外掛更新通知」 的請求時,我意識到我需要一個認真的解決方案,而不是用虛假的版本號欺騙。快速谷歌搜尋顯示另外兩個選項。

    解決方案 2 – http_request_args 鉤子

    // Disable plugin update check
    function my_prevent_update_check($r, $url) {
        if (0 === strpos($url,'https://api.wenpai.org/plugins/update-check/')){
            $my_plugin = plugin_basename(__FILE__);
            $plugins = unserialize($r['body']['plugins']);
            unset($plugins->plugins[$my_plugin]);
            unset($plugins->active[array_search($my_plugin, $plugins->active )]);
            $r['body']['plugins'] = serialize($plugins);
        }
        return $r;
    }
     
    add_filter('http_request_args', 'my_prevent_update_check', 10, 2);

    這個程式碼片段掛鉤到 http_request_args 中,並從 http 請求中傳遞的查詢引數中移除外掛。因此,這段程式碼片段必須插入到我們要禁用更新檢查的外掛中。

    如果有多個外掛我們想禁用更新檢查,我們需要插入這個片段到每個外掛。並確保我們在不同的外掛中使用不同的函式名稱。 (即 my_prevent_update_check_nnn 而不是 my_prevent_update_check)

    解決方案 3 – site_transient_update_plugins 掛鉤

    // Disable plugin update check
    function my_disable_filter_plugin_updates($value) {
    	unset($value->response['plugin/plugin.php']);
    	return $value;
    }
     
    add_filter('site_transient_update_plugins', 'my_disable_filter_plugin_updates');

    這個解決方案更簡單但更強大。要使用它,我們可以把它放到 function.php 或我們自己的外掛 (我最喜歡的) 中。只要記住將第 3 行中的 「plugin / plugin.php」 替換為實際的外掛路徑和主 PHP 檔案。例如:使用

    Akismet 在/ akismet.php

    將停止檢查更新外掛 Akismet 的 WordPress 。

    要在更多外掛上禁用更新檢查,只需使用相同的 unset() 函式宣告每個外掛即可。例如:以下程式碼將停止對 Akismet&Events Manager 的更新檢查。

    // Disable plugin update check
    function my_disable_filter_plugin_updates($value) {
    	unset($value->response['akismet/akismet.php']);
    	unset($value->response['events-manager/events-manager.php']);
    	return $value;
    }
     
    add_filter('site_transient_update_plugins', 'my_disable_filter_plugin_updates');
    詩語
    管理員
    • 文章數量: 5,932
    @feibisi
    樓主
    此回覆已被標記為私有,🔒 僅樓主及管理員可見。
正在檢視 3 個帖子:1-3 (共 3 個帖子)
  • 哎呀,回覆話題必需登入。

話題資訊

  • 當前位於:疑難雜症
  • 2 條回覆
  • 1 個參與人
  • 最後回覆:<a href="https://bbs.weixiaoduo.com/users/feibisi/" title=" 檢視詩語的個人資料" class="bbp-author-link"><span class="bbp-author-name"> 詩語</span></a>
  • 上次活動:<a href="https://bbs.weixiaoduo.com/topic/24427/#post-24429" title=" 回覆至:禁用特定/個別 WordPress 外掛的更新通知,以及禁用 WordPress 外掛更新通知幾種方法">7 年、 3 月前</a>