我最初在一个免费的托管服务上安装了wordpress。主机遭到攻击后,我得到了所有文件和数据库的备份,并正在本地主机上恢复该站点(在windows 10上使用wampserver 3.1.0),然后才能更新并将其上载到新的主机服务。
问题是,链接不起作用,一些(并非所有)图像不显示,甚至在编辑模式下也不显示,甚至根本不显示(我的意思是,也没有一个正方形指示损坏的图像)。至于设置,我设置了wordpress url和站点url(在管理控制台中)以指向新的localhost url(http://localhost/b17_14344318). 我还使用Search-Replace-DB
用本地主机url替换旧url的所有实例(使用此脚本替换url之前存在的问题)。
图像问题的一个例子是我在旧安装中的facebook徽标图像。由于它没有出现,我尝试从我的帖子中删除它并重新添加、编辑它(在wordpress上)、删除它并重新上载它、更改文件名并重新上载以使用此“新文件”、删除html代码并重新写入它。。。我还一个接一个地禁用了我的插件,并检查了该图像是否显示,但它没有显示。当我的网站在其旧托管服务上运行时,该图像(与其他有相同问题的图像一样)确实显示了,并且使用的插件与我现在使用的插件相同(但是,我现在使用的Wordpress版本比我在该托管上使用的版本更新)。
通过“添加媒体”按钮添加图像后,它会生成以下代码:
<a href="http://localhost/b17_14344318/2543-2/fb_logo/" rel="attachment wp-att-2549"><img class="alignnone size-full wp-image-2549" src="http://localhost/b17_14344318/wp-content/uploads/2018/08/fb_logo.png" alt="" width="215" height="215" /></a>
我尝试创建一个新页面,以防从备份中恢复的旧页面中出现损坏,但图像仍然“不可见”。这是我通过“添加媒体”按钮添加图像后的效果:
下面是它背后的html代码:
至于链接,当单击任何项目(指向帖子、页面、类别等的链接)时,我会看到这个未设置样式的页面:
还有什么其他我应该试试的吗?
SO网友:Rick Hellewell
WP数据库存储上载媒体项目的URL。当您查看媒体页面上的媒体项目时,可以看到URL。
WP安装的移动为新站点提供了一个新的URL。但数据库中媒体项的URL并不总是更改,具体取决于您的移动方式。
因此,您需要对数据库进行搜索/替换,搜索旧URL并将其替换为新URL。您可以使用phpMyAdmin手动执行此操作,但有一种更简单的方法-像往常一样,“有一个插件用于此”。
我使用\'Better Search and Replace\', 这很容易使用。找到旧URL的所有实例并用新URL替换它,效果很好。修复了媒体项(以及WP数据库中的任何其他位置)中的任何错误URL。当我出于任何原因将网站从一个地方移动到另一个地方时,我会使用它。
当您将站点从本地站点移动到新的托管位置时,需要进行搜索/替换。这是另一个涉及的过程,但您可能希望使用该插件,因为它使数据库中的URL更正更加容易。