移动WordPress安装后出错

时间:2012-06-14 作者:Leeloo

我正在尝试将WordPress站点移动到新服务器,但无法在本地服务器上启动并运行它(运行XAMPP)。

该网站运行得非常好,但当我下载文件、导出数据库并将所有内容连接到本地副本时,我会收到以下错误消息:

Warning: call_user_func_array() expects parameter 1 to be a valid callback, function \'twentyten_widgets_init\' not found or invalid function name in /Users/Tim/Sites/coachhousetimbers.com.au/old/wp-includes/plugin.php on line 405
当我尝试访问网站的仪表板时,会出现以下情况:

Warning: call_user_func_array() expects parameter 1 to be a valid callback, function \'twentyten_widgets_init\' not found or invalid function name in /Users/Tim/Sites/coachhousetimbers.com.au/old/wp-includes/plugin.php on line 405
Warning: Cannot modify header information - headers already sent by (output started at /Users/Tim/Sites/coachhousetimbers.com.au/old/wp-includes/plugin.php:405) in /Users/Tim/Sites/coachhousetimbers.com.au/old/wp-includes/pluggable.php on line 934
有什么想法和/或建议吗?

我过去移动过很多WordPress网站,这是我第一次看到这个错误。我正在运行WordPress 3.2.1。

谢谢

4 个回复
SO网友:Eric Holmes

除了前端出现此错误外,站点是否仍正常工作/显示?

在我看来,您的新托管环境有警告和通知报告。

考虑查看您的wp-config.php 的文件WP_DEBUG 确保设置为false.

根据您对托管环境的控制程度,您应该联系托管提供商以调整PHPerror_reporting 仅限于错误。

EDIT: 我首先建议你去你的开发地点,看看你的wp-config.php 的文件WP_DEBUG 确保设置为true.

避免这些警告的最佳方法是在源位置修复它们。这可能是一个非常简单的修复-它看起来像函数twentyten_widgets_init 在你的主题中不存在,如果你把主题分为二十个十,而不是创建一个child theme, 很可能是这样。您可能错误地重命名了该函数,而没有寻址它所连接的挂钩。

SO网友:brasofilo

尝试运行此搜索替换脚本,因为它能够在序列化选项中执行正确的替换:Search Replace DB.

SO网友:Brad Dalton

您可以做的是安装WP Migrate DB plugin 并在导出数据库之前添加新的服务器路径和站点url。

SO网友:Gogol

下面是简单的方法。

将所有文件按上次安装的顺序复制到新安装中Notepad++ 如果你还没有

  • 通过phpmyadmin导出数据库,并在记事本++中打开导出的sql,然后按CTRL+H(查找和替换对话框)127.0.0.1/mywpinstallation (请记住,后面没有斜杠/“http://”,否则会把一切都搞砸)。

    b、 在replace中,输入生产url,例如。myproductionsite.com (同样,后面没有斜杠或“http://”)。

  • 点击全部替换。

    现在将修改后的sql导入生产数据库,在wp config中更改数据库详细信息。然后使用与localhost中相同的凭据登录到wp管理员永久链接,选择永久链接方案并保存(即使您已经设置了永久链接方案,也要这样做。这样做会为您重写htaccess)如果您已经正确地完成了所有工作,那么您现在应该拥有一个完美的生产现场。请确保采取其他措施来保护您的网站。我不打算在这里讨论这个问题。

    结束

    相关推荐

    Displaying oEmbed errors?

    有时,通过oEmbed嵌入项目是不可能的,例如,当YouTube视频已禁用嵌入时。The oEmbed service will return a 401 Unauthorized, 并且不会转换代码。有没有办法通知用户这一点?当前的工作流是非直观的(至少对我来说),我更喜欢在WordPress页面上,或者更好的是,在编辑器中显示一条消息,说明对象无法嵌入。