我在服务器上的测试域名上开发了一个新的wordpress网站。 我已经准备好了网站上线...但我不得不将wordpress网站移动到另一个我们也在我们服务器上托管的域名。
所以我所做的是从测试域名复制所有根文件夹内容,并将内容粘贴到新域名的根文件夹中。
然后我登录到wordpress,更改了所有必要的设置,如WORDPRESS URL和SITE ADDRESS URL以及每个页面中的图像绝对URL,以确保我拥有所有内容的正确URL。
当我点击MEDIA时,我可以看到所有图像正常。
太棒了...然后我去看看网站直播,我发现有很多图片丢失了!它们都在MEDIA面板中 - 但不会出现在网站上!
然后,我仔细检查所有图像是否正确地进行了修补......它们都是。
现在为什么有些图像出现而其他图像却出现? 我甚至试图添加一张新照片并使用该照片代替另一张未显示的照片,并且新照片甚至都没有出现。
我的问题在哪里?
例如,我的网站上没有显示图片的1张幻灯片,给我一张图片的“找不到图片”错误:
Image not found: http://www.domain.com/wp-content/themes/natural
/lib/timthumb.php?src=http://www.domain.com/wp-content/uploads/2012/08/breakfast-gallery-011.jpg&w=610&h=0&zc=1
答案 0 :(得分:0)
好的,我将以一些建议回答我的问题。 很明显,我的一些图像是“硬编码”,因为我发现因为我找不到某些不显示的逻辑原因(即使我查看MySQL中的表格数据),也因为我不是数据库工程师/开发人员 - 我不准备深入研究,因为可能导致进一步的问题...所以我决定取下整个wordpress网站,创建一个新的数据库,重新安装wordpress,我导入了一个导出的xml文件,我在“迁移网站”之前创建并保存(幸运)。
建议:
1)无论您是否迁移wordpress网站,请始终通过创建wordpress结构的导出来定期备份您的网站。它可能会在将来为您节省大量工作。
2)如果你是开发人员和初学者以及像我一样的MYSQL,我建议你在你想要的实际域名上创建你的wordpress网站。这将使您免于“迁移”的麻烦,因为我刚刚经历过...并且花了很多时间。从错误中吸取教训。虽然上面的问题可能有一个解决方案,但这可能超出了我的专业知识/知识,也可能不属于你...所以让自己轻松一点:)
答案 1 :(得分:0)
问题不在于图像URls只是硬编码。 URL的最后一部分是经过编码的,但您很可能在URL中嵌入了“/ wp-content /”,表示图像的URL字符串是动态创建的。我查看了我的wp_postmeta表,并且有所有部分图像URls(像这样 - 2013/03 / expanse2.jpg)。现在这个URL的起始部分和域名在哪里?域名是我案例中所有图片网址实际上缺少的部分。我使用phpmyadmin深入挖掘数据库(但我推荐Webmin,如果你可以启动并运行)。我跑进了“wp_options”表中的“home”字段。问谷歌wordpress是一个合适的“主页”,它带我到这个页面(http://codex.wordpress.org/Function_Reference/home_url),这一行就在那里(home_url()位于wp-includes / link-template.php 。)去了那个文件,发现它控制了URL的构建方式,但没有专门控制上传的图片网址。最后,我进入了一个有图像的页面,查看了高级设置,发现图像URL只是遗漏了域名。我用精彩的搜索和替换脚本来修复它。完成