如何禁止客戶停用必要的WordPress插件

如果您有為客戶使用WordPress搭建網站,那通常在網站上會安裝一些必要的插件,但是,客戶可能會意外停用這些插件,這可能會影響其網站的功能,甚至會直接導致網站出問題。在本文中,我們將向您展示如何安全地防止客戶停用WordPress插件而又不限制其對網站的控制。

在我們這篇文章中,主要介紹3種方法,以便您可以根據不同的需要來使用。

方法1、使用插件禁用WordPress的插件停用功能

在這里,我們需要安裝一個名為 Disable Plugin Deactivation 的插件,該插件將從所有插件中刪除“停用”鏈接。用戶仍然可以安裝新插件,并且可以隨時自行承擔禁用此預防措施的風險。

這種方法最簡單,它還為具有管理員角色的所有用戶提供完全控制權,他們可以隨時關閉它。你需要做的就是安裝并啟用這個插件,然后在 插件 - Plugin Deactivation Settins 頁面進行設置,如下圖所示:

只需選擇“禁用插件停用”選項旁邊的“Enable”即可關閉所有插件的“停用”鏈接。

(可選)您也可以禁用插件激活,這將阻止用戶激活任何其他插件。您還可以關閉插件刪除功能,并防止用戶安裝插件更新。

注意:切勿在客戶站點上禁用插件更新。這會損害WordPress的安全性,并使您的客戶端容易受到安全威脅。

方法2、禁止停用特定的WordPress插件

如果涉及到網站核心功能的插件只有幾個,我們并不想完全禁止用戶停用其他非必要的插件,那我們可以通過代碼來實現僅限制停用特定的WordPress插件。

首先,我們需要找到要禁用的插件位置。WordPress插件存儲在您網站上的 wp-content/plugins 文件夾中。

您可以通過使用FTP客戶端連接到WordPress主機來查看此文件夾。在plugins文件夾內,您將看到該網站上安裝的每個插件的不同文件夾。

在每個文件夾內,您還將找到一個插件文件,該文件通常以該插件命名,并以.php擴展名結尾。

接下來,您需要將以下代碼添加到主題的functions.php文件。

add_filter( 'plugin_action_links', 'wpkj_disable_plugin_deactivation', 10, 4 );

function wpkj_disable_plugin_deactivation( $actions, $plugin_file, $plugin_data, $context ) {
 
    if ( array_key_exists( 'deactivate', $actions ) && in_array( $plugin_file, array(
        'wpforms/wpforms.php',
        'woocommerce/woocommerce.php'
    )))
        unset( $actions['deactivate'] );
    return $actions;
}

注意看下上面代碼的第 6 和 第 7 行,我們分別禁用了 wpforms 和 WooCommerce 兩個插件的停用功能,這樣一來,你就可以在插件列表頁面看不到它們的停用鏈接:

如果你要禁用其他插件,就參考第6/7行的代碼來添加自己的插件信息即可。

方法3、通過用戶角色限制后臺功能

以上兩種方法都是相對簡單地禁用了插件的停用功能,但是如果我們想對客戶網站后臺限制更多的功能,我們就需要根據用戶角色來做更多的操作。如果您對WordPress的用戶角色方面的知識還不是很了解,建議先看下下面的教程:

WordPress用戶角色與用戶能力/權限

通常,我們建議創建一個“編輯”角色的用戶賬號給客戶,然后使用 Adminimize 插件來設置僅供“編輯”使用的功能。

但是需要注意的是, Adminimize 插件的設置選項非常多,需要對WordPress各項功能都比較熟悉才可以進行設置,不過既然有能力為客戶搭建網站,應該這個設置也不在話下了。

倡萌

一個文科IT宅男,喜歡折騰WordPress和被它折騰 ^_^

1 條評論

發表評論