如果您有为客户使用 WordPress 搭建网站,那通常在网站上会安装一些必要的插件,但是,客户可能会意外停用这些插件,这可能会影响其网站的功能,甚至会直接导致网站出问题。在本文中,我们将向您展示如何安全地防止客户停用 WordPress 插件而又不限制其对网站的控制。在我们这篇文章中,主要介绍 3 种方法,以便您可以根据不同的需要来使用。
在这里,我们需要安装一个名为 Disable Plugin Deactivation 的插件,该插件将从所有插件中删除“停用”链接。用户仍然可以安装新插件,并且可以随时自行承担禁用此预防措施的风险。这种方法最简单,它还为具有管理员角色的所有用户提供完全控制权,他们可以随时关闭它。你需要做的就是安装并启用这个插件,然后在 插件 - Plugin Deactivation Settins 页面进行设置,如下图所示:
只需选择“禁用插件停用”选项旁边的“Enable”即可关闭所有插件的“停用”链接。(可选)您也可以禁用插件激活,这将阻止用户激活任何其他插件。您还可以关闭插件删除功能,并防止用户安装插件更新。
如果涉及到网站核心功能的插件只有几个,我们并不想完全禁止用户停用其他非必要的插件,那我们可以通过代码来实现仅限制停用特定的 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 行的代码来添加自己的插件信息即可。
以上两种方法都是相对简单地禁用了插件的停用功能,但是如果我们想对客户网站后台限制更多的功能,我们就需要根据用户角色来做更多的操作。如果您对 WordPress 的用户角色方面的知识还不是很了解,建议先看下下面的教程:《WordPress 用户角色与用户能力/权限》。通常,我们建议创建一个“编辑”角色的用户账号给客户,然后使用 Adminimize 插件来设置仅供“编辑”使用的功能。
但是需要注意的是, Adminimize 插件的设置选项非常多,需要对 WordPress 各项功能都比较熟悉才可以进行设置,不过既然有能力为客户搭建网站,应该这个设置也不在话下了。
专业提供WordPress主题安装、深度汉化、加速优化等各类网站建设服务,详询在线客服!