【问题标题】:Internal links still point to development subdomain?内部链接仍然指向开发子域?
【发布时间】:2017-08-22 05:09:08
【问题描述】:

我将一个 wordpress 站点从子目录 http://www.development.example.com 移动到根目录 public_html。 我已将站点和主页 url 更新为 http://www.example.com 并在控制面板的 phpMyAdmin 中进行了验证。指向其他页面的标题链接按预期工作,但我在主页上的内部跳转链接(例如http://www.example.com/#about)仍然指向子域链接http://www.development.example.com/#about。管理仪表板中或直接在数据库中是否有其他地方可以检查必要的 url 更改以解决此问题?

【问题讨论】:

  • 我还尝试将update_option( 'siteurl', 'http://www.example.com' ); update_option( 'home', 'http://www.example.com' ); 插入到主题的function.php 文件中。

标签: wordpress phpmyadmin migration subdomain shared-hosting


【解决方案1】:

你可以尝试几件事。

1.) 将以下内容添加到您的 wp-config.php 文件中:

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

2.) 如果您有 (SSH) 访问 WP CLI,您可以在您的站点根目录中运行它:

wp search-replace oldomain.com newdomain.com

3.) 试试Better Search Replace 插件。

【讨论】:

  • 我已经将#1 添加到wp-config.php。我最初使用的“搜索和替换插件”不起作用,但您建议的“Better 搜索替换”插件捕获了额外的结果并成功了!
【解决方案2】:

请更新您数据库中的查询

UPDATE wp_options SET option_value = replace(option_value, 'http://olddomain.com', 'http://newdomain.com') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = replace(guid, 'http://olddomain.com','http://newdomain.com');
UPDATE wp_posts SET post_content = replace(post_content, 'http://olddomain.com', 'http://newdomain.com');
UPDATE wp_postmeta SET meta_value = replace(meta_value, 'http://olddomain.com', 'http://newdomain.com');

更改您的 oldomain 链接和 newdomain 链接

希望对你有帮助

【讨论】:

  • 我更喜欢这种查询方法,而不是插件和手动将语句插入文件。下次我迁移 wp 网站时,我会试试这个。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-04-01
  • 2011-07-17
  • 1970-01-01
  • 2020-12-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多