移动WordPress Multisite,但我的主题自定义已停止工作。为什么?

时间:2014-12-22 17:13:04

标签: php wordpress multisite

我最近将多站点网络迁移到了新域名。目前网络中只有一个站点(我正在为网络构建站点,我正在将这个站点推送到临时服务器进行测试)。

要移动网站,我执行了以下操作:

  • 转移所有文件
  • 从数据库A导出完整数据库并在暂存时导入数据库B
  • 跑了一系列发现&替换所有表上的查询以使用新域替换旧域
  • 使用正确的数据库信息和更新的网址
  • 更新了登台服务器上的wp-config.php文件

在这个阶段几乎一切都很完美,除了主题定制之外的一切。我意识到它存储为序列化数组,并且我相应地更新了每个字段的长度。请参阅下面的储值:

a:19:{i:0;b:0;s:8:"tcx_logo";s:72:"http://stange.********.com/wp-content/uploads/2014/11/***-***-bottle.png";s:13:"tcx_address_1";s:12:"***** Avenue";s:13:"tcx_address_2";s:0:"";s:12:"tcx_citytown";s:7:"*******";s:10:"tcx_county";s:6:"******";s:12:"tcx_postcode";s:8:"**** ***";s:11:"tcx_country";s:0:"";s:7:"tcx_lat";d:**.**********0000076470314525067806243896484375;s:7:"tcx_lng";d:-*.**********00000065853100750246085226535797119140625;s:12:"tcx_facebook";s:12:"************";s:11:"tcx_twitter";s:12:"************";s:18:"nav_menu_locations";a:2:{s:9:"main-menu";i:2;s:6:"footer";i:3;}s:16:"tcx_openingtimes";s:0:"";s:13:"tcx_foodtimes";s:225:"<dl class="dl-horizontal">
    <dt>Monday to Thursday:</dt>
    <dd>12noon - 2:30pm & 5:30pm - 9:00pm</dd>

    <dt>Friday & Saturday:</dt>
    <dd>12noon - 2:30pm & 5:30pm - 9:00pm</dd>

    <dt>Sunday:</dt>
    <dd>12noon - 8:00pm</dd>
</dl>";s:13:"tcx_telephone";s:13:"**** *** 5535";s:9:"tcx_email";s:27:"info@****************.co.uk";s:14:"tcx_bookatable";s:17:"Bookatable Widget";s:10:"tcx_seekom";s:13:"Seekom Widget";}

敏感信息已为******'d。

每当我访问主题的自定义区域时,我都会看到字段,但看不到任何值。前端中也没有显示任何存储的值,这使我认为数据库中的此字段存在问题。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您的问题似乎与此部分有关:

s:225:"<dl class="dl-horizontal">
    <dt>Monday to Thursday:</dt>
    <dd>12noon - 2:30pm & 5:30pm - 9:00pm</dd>

    <dt>Friday & Saturday:</dt>
    <dd>12noon - 2:30pm & 5:30pm - 9:00pm</dd>

    <dt>Sunday:</dt>
    <dd>12noon - 8:00pm</dd>
</dl>"

...我觉得你把这些人物弄错了。当然,如果我剪切并粘贴您的版本 - 并替换您在数字字段中放置的星号 - 我需要将长度设置为243而不是224,以便正确反序列化。但是,考虑到Stack Overflow的复制和粘贴可能会使事情变得混乱,因此很难确定。几乎可以肯定的是,空白中存在一些问题会导致难以诊断。

如果手动更新序列号出现问题,您应该会看到错误,至少在服务器错误日志中会出现错误,这有助于您查明问题,例如: &#34; PHP注意:unserialize():/ path/to/file.php"中Y字节的偏移量X出错,这可能会给你一些线索。

我建议您不要手动更新长度,而是使用专门为此目的设计的脚本,它将反序列化数据库中的值,进行替换,然后重新排序。在将WordPress数据库推送到我的临时站点时,我将Search-Replace-DB用于此目的。