【问题标题】:Plugin could not be deleted due to an error: Could not fully remove the plugin(s) my-plugin/my-plugin.php由于错误而无法删除插件:无法完全删除插件 my-plugin/my-plugin.php
【发布时间】:2012-08-09 15:40:44
【问题描述】:
为什么卸载以下(空)插件会导致错误?
这里是my-plugin/my-plugin.php:
<?php
/*
Plugin Name: My Plugin
*/
和my-plugin/uninstall.php:
<?php
当我点击“删除”然后确认时,我收到以下错误:
由于错误而无法删除插件:无法完全删除
插件 my-plugin/my-plugin.php。
这里有什么问题?
~/Sites/wordpress/wp-content/plugins/my-plugin $ ls -ll
total 16
-rwxrwxrwx@ 1 me staff 34 13 Aug 21:43 my-plugin.php
-rwxrwxrwx@ 1 me staff 6 13 Aug 21:44 uninstall.php
【问题讨论】:
标签:
wordpress
uninstallation
【解决方案1】:
确实,所有权问题。运行以下命令后,我可以成功删除插件。
chown -R <myself>:<myself> my-plugin
【解决方案2】:
正如我发布的 here:
这可能是本地文件权限或 WordPress 配置的结果。
要修复本地文件权限,您可以:
-
如果您有 root shell 访问权限(例如在 VPS 服务器上),您可以运行以下命令:
sudo chown www-data:www-data * -R
sudo usermod -a -G www-data YOUR-USERNAME-HERE
这确保了 Web 服务器被授予访问“组”权限。
将文件和目录权限更改为 775(如果失败,则为 777),以便 PHP 可以写入必要的文件/文件夹。为获得最佳安全性(特别是如果您在共享主机上),有些人建议仅临时执行此操作以执行更新,然后再次删除写入权限。
更罕见的是,如果您在 /wp-config.php 中的 WordPress 配置设置为使用以下内容,也会发生此错误:
define( 'FS_METHOD', 'ftpext' );
这告诉 WordPress 它需要使用 FTP 来进行文件更改,而不是直接使用本地文件系统。该行后面很可能是 FTP 登录信息。如果此登录信息不正确,则 WordPress 将无法登录并执行文件系统更改。
【解决方案3】:
这对我有用:
-
chmod 777 -R <yourfilename>
-
将define('FS_METHOD', 'direct'); 添加到wp-config.php 文件中