2

几个月前,我为朋友建立了一个使用 Wordpress 的网站,我在 localhost 上开发它并将其导出到他的实时网站 paulscreen.com

我最近被要求为其他人做同样的事情,我以同样的方式开始,我的问题是在某个时候我访问了 paulscreen.com(我不知道如何或何时)并且这样做我已经设置了他的网站到 viciousnature.co.uk,我假设通过更改管理区域选项面板中的主页 url。

现在,当我尝试访问第一个站点的管理区域时,我被重定向到第二个站点。我一直在浏览 wordpress 代码,但编码知识有限,无法找到解决问题的方法。

在不使用管理区域的情况下,我在哪里可以找到编辑主页 url 的选项?

4

3 回答 3

11

请参阅更改站点 URL « WordPress Codex了解不同的恢复方法。您不一定必须能够进入 WordPress 管理后端。

最简单的快速修复是define在 wp-config.php 中添加这些 URL 指令:

define('WP_HOME','http://example.com');
define('WP_SITEURL','http://example.com');

使用新域的 URL,这些将覆盖数据库和旧域中的 URL 设置。您正在对 URL 进行硬编码,并且在使用此方法后,您将无法再在“常规设置”页面上对其进行编辑,但这将使您回到该站点。

如果您在将站点和数据库移动到新域时需要更改域,则需要使用 phpmyadmin 中的查询来更改数据库中的所有 URL,即那些站点 URL,以及主题选项中、帖子内容等中的 URL。

UPDATE wp_options SET option_value = replace(option_value, 'http://www.olddomain.com/', 'http://www.newdomain.com/') WHERE option_name = 'home' OR option_name = 'siteurl';

UPDATE wp_posts SET guid = replace(guid, 'http://www.olddomain.com/','http://www.newdomain.com/');

UPDATE wp_posts SET post_content = replace(post_content, 'http://www.olddomain.com/', 'http://www.newdomain.com/');

UPDATE wp_postmeta SET meta_value = replace(meta_value, 'http://www.olddomain.com/', 'http://www.newdomain.com/');

2017 年 2 月 20 日重要更新:

将站点和数据库移动到新的 URL 或域时,现在最好使用它——interconnectit.com WordPress 序列化 PHP 搜索替换工具——而不是直接在我上面发布的 PHPMyAdmin 中查询。Interconnectit 工具将正确处理数据库中的序列化数据,例如 Wordpress 主题和插件使用的数据;在 PHPMyAdmin 中使用这些查询会破坏此类数据,例如用于主题选项、小部件设置等的数据,之后您将不得不重置所有这些选项,这可能会造成混乱。

于 2012-12-16T23:49:54.487 回答
0

哎呀。直接通过 phpmyadmin 对数据库进行更改。登录到服务器面板并查看数据库表wp_options(假设您从未更改过默认前缀,如果您更改了,它将是 yourprefix_options)。

这是siteurl选项,如果您浏览表格,它就在顶部。如果由于某种原因您不再具有面板访问权限,并且只有 FTP,那么您可以上传adminer.php并使用它来更改浏览器中的 siteurl 选项。

于 2012-12-16T23:52:07.813 回答
-1

我更喜欢使用 wordpress 规则:)

因为你永远不知道 wordpress 在幕后做了什么,所以我不会破解 wordpress 数据库。

只需更新您的虚拟主机并将实时域指向您的本地 IP 地址。之后,wordpress 仍会将您重定向到实时 url,但这次您会看到本地项目。

登录到管理面板。转到设置并使用您的本地 URL更改WordPress 地址 (URL)站点地址 (URL) 。保存更改。编辑 vhosts 文件并删除活动域。

现在您可以访问放置本地 url 的本地项目。

注意:当您要将本地数据库导入实时服务器时,请不要忘记反之亦然。

于 2016-09-27T22:15:28.953 回答