第915行的/wp-content/plugins/polylang/include/model.php中找不到“PLL_Links_”类

时间:2015-09-08 15:31:27

标签: wordpress wordpress-plugin migration

将wordpress上的网站迁移到另一个服务器和另一个域后。 我的网站根目录在同一目录中。我听说这个插件POLYLANG的数据库中有一些配置,但不知道在哪里。 我有一个错误:

  

在第915行的/wp-content/plugins/polylang/include/model.php中找不到类'PLL_Links_'

有人知道如何解决这个问题吗?

4 个答案:

答案 0 :(得分:3)

我遇到了同样的错误,错误之前是“Undefined index”通知。 它是由空$this->options['force_lang'] var。

引起的

此变量从wp_options表加载,此表中的option_namepolylang。应该有一个polylang选项的JSON编码数组。

在我的情况下,可以通过从JSON数据中删除域来解决该问题,因此它读取如下内容:

"domains";a:0:{}

答案 1 :(得分:2)

对于某些人来说,这个问题仍然存在。

我花了很多时间。帮助我的诀窍是从这里回到v.0.9.8 - https://wordpress.org/plugins/polylang/advanced/

然后获取v.1.9.3并将其解压缩到插件文件夹。然后你很高兴去v.2 +

答案 2 :(得分:1)

我来到这里是因为Polylang 2.3.1在数据库迁移后抛出了类似的错误:

Class 'PLL_Links_' not found in /wp-content/plugins/polylang/include/model.php on line 560

如果查看错误中引用的model.php文件中的代码,您可以看到该插件尝试使用' permalink_structure'来检索类名。数据库中设置的选项。如果迁移将此选项更改为Polylang无法处理的内容,则会触发错误。

要解决致命错误,您必须:

  • (重新)移动或重命名Polylang插件文件夹,以便它不会触发错误
  • 通过选项>将永久链接设置设置为WordPress管理中的默认设置。固定链接
  • 重新安装Polylang(或删除/重命名)并在插件概述中重新激活它。

  • 手动删除' permalink_structure'在wp_options表格中。

WordPress应该在此之后正常运行。我还没有发现为什么它无法处理某些永久链接设置,但如果我这样做,我会更新此答案。

答案 3 :(得分:1)

当数据库从本地移动到live时,我在文件中进行了全局域替换。最后的问题是wp_option.option_name =“ polylang”中的序列化数组已损坏。您必须更改域数组中的字符串长度:

wp_option.option_name = ...."domains";a:1: 
{s:2:"en";s:21:"http://example.local/";}....

在本地:

s:21:"http://example.local/";

替换文件后:

s:21:"http://example.com/";

必须是:

s:19:"http://example.com/";