在WP多站点上添加新站点时出现问题

时间:2015-07-04 作者:Milad

WordPress multisite中的这个问题已经存在了两到三个月,我仍在等待解决方案或更新。

添加新站点时,出现以下错误:

警告:preg\\u match()要求参数2为字符串,wp中给定的对象包含/格式化。php在线3435

警告:preg\\u match()要求参数2为字符串,wp中给定的对象包含/格式化。php在线3424

警告:preg\\u match()要求参数2为字符串,wp中给定的对象包含/格式化。php在线3435

警告:strip\\u tags()要求参数1为字符串,wp中给定的对象包含/格式化。php在线3407

警告:strip\\u tags()要求参数1为字符串,wp中给定的对象包含/格式化。php在线3407

可捕获的致命错误:类WP\\u error的对象无法转换为WP includes/kses中的字符串。php在线1038

有没有人在不威胁数据库的情况下找到了安全的解决方案?

我已经找到了一些关于this post. 他们说我们应该改变以下价值:

define(\'DB_COLLATE\', \'\');
收件人:

define(\'DB_COLLATE\', \'utf8mb4_general_ci\');
我们的网站安全吗?

我们的网站上有很多帖子,我们不想给我们的数据库和网站带来任何问题。

1 个回复
最合适的回答,由SO网友:Milad 整理而成

这个问题在WordPress的下一次更新中得到了解决。顺便说一下,如果您还没有更新WordPress的版本:

在wp配置中设置DB\\U COLLATE就足够了。php:

define(\'DB_COLLATE\', \'utf8mb4_general_ci\'); // on condition that your DB_CHARSET is \'utf8mb4\'
就是这样!

错误隐藏在文件\\wp includes\\wp db中。函数init\\u charset()中731行的php。对于多站点模式,如果DB\\U COLLATE为空,则使用“utf8\\U general\\U ci”排序规则。如果DB\\u字符集为“utf8mb4”,则会发生错误。

为新站点创建并查询不存在的表时会出现实际错误(“2”会随着站点数量的变化而变化):

wp\\U 2\\U条款

wp\\U 2\\U term\\U分类法

wp\\u 2\\u term\\u关系

wp\\U 2\\U commentmeta

wp\\U 2\\U注释

wp\\U 2\\U链接

wp\\U 2\\U选项

wp\\u 2\\u邮差

wp\\U 2\\U岗位

someone suggested this solution 而且效果很好。

结束

相关推荐

如何在WordPress MultiSite中添加新站点和映射自定义域?

我在域上安装了wordpress多站点我将每个站点定义为一个子域例如:www.Example。com—主域www.test1。实例com---是另一个类似的站点,我有另外4/5个站点使用wordpress(WPMU)的单个安装现在我想添加一个完全限定的域,例如www.mydomain。com访问www.test1。实例com我曾尝试在我的web主机的cPannel中使用驻车域,但这是不可能的,因为子域实际上是由wordpress创建的在许多论坛中,我读到有一个插件(WordPress MU域映射),但我不