我构建了一个应用程序,其中包括多个WP站点的插件
复制插件文件夹(&M);将“主”应用程序中的文件放入新创建的wp站点的wp content/plugins文件夹中,只需使用简单的wp\\U选项:
-文件夹副本;文件运行正常,文件夹chmod为0755&;0644文件,模仿标准akismet插件安装
序列化插件数据(&L);用它更新“active\\u plugins”字段,序列化的数据格式良好:{br/>s:14:“classic editor”;i:1;s:17:“increase\\u rest\\u get”;i:2;s:34:“wp rest api的jwt身份验证”;i:3;s:17:“myDashboardWidget”;}
array (
0 => \'classic-editor\',
1 => \'increase_rest_get\',
2 => \'jwt-authentication-for-wp-rest-api\',
3 => \'myDashboardWidget\',
)
但是,当我去管理员那里时,我得到以下信息,所有激活的插件都被停用:
<为什么会这样?我在激活/复制过程中是否遗漏了什么
非常感谢,
吉咪
最合适的回答,由SO网友:Jacob Peattie 整理而成
这个active_plugins
数据不正确。以下是我的一个测试站点的样本:
a:3:{i:0;s:34:"advanced-custom-fields-pro/acf.php";i:4;s:31:"code-snippets/code-snippets.php";i:21;s:24:"wordpress-seo/wp-seo.php";}
或:
Array
(
[0] => advanced-custom-fields-pro/acf.php
[4] => code-snippets/code-snippets.php
[21] => wordpress-seo/wp-seo.php
)
请注意,插件由主插件文件的路径(相对于插件文件夹)引用。主插件文件夹包含插件头(示例来自
here):
/**
* Plugin Name: My Basics Plugin
* Plugin URI: https://example.com/plugins/the-basics/
* Description: Handle the basics with this plugin.
* Version: 1.10.3
* Requires at least: 5.2
* Requires PHP: 7.2
* Author: John Smith
* Author URI: https://author.example.com/
* License: GPL v2 or later
* License URI: https://www.gnu.org/licenses/gpl-2.0.html
* Text Domain: my-basics-plugin
* Domain Path: /languages
*/
自
/wp-content/plugins/classic-editor
是一个目录,而不是文件,它没有插件头,因此会被停用。