首页 > 解决方案 > Wordpress 将旧 URL 重定向到新 URL

问题描述

我想将我的旧网站帖子重定向到新网站。我不能一一写,因为有1000多个帖子。主要问题是新网址在帖子名称后有帖子 ID。

旧网站网址

https://www.old.com/economy/test-test/

新网站网址

https://www.new.com/test-test-2001/

我试过了,但无法正确添加帖子 ID

RewriteRule ^economy/(.*) https://new.com/$1-2001 [R,L]

标签: wordpress.htaccessredirect

解决方案


您没有说明“错误”到底是什么,但是从给出的示例 URL(以斜杠结尾)中,您的指令将导致重定向到/test-test/-2001,这与预期的 URL 不同/test-test-2001/(您还缺少指令上的斜杠)。

请尝试以下操作 - 如果还没有的话,这需要在 WordPress 前端控制器之前进行。

RewriteRule ^economy/([^/]+) https://new.com/$1-2001/ [R,L]

但是,如果2001是与“test-test”的此帖子标题(slug)特别相关的帖子 ID,那么您不能像这样执行“通配符”重定向,.htaccess因为所有请求/economy/<something>/都会自然地重定向到/<something>-2001/.

如果是这种情况,那么这可能最好在 WordPress 本身中完成(为了不影响网站访问者而延迟处理)。否则,您将需要为每个帖子创建单独的重定向。例如:

RewriteRule ^economy/(test-test) https://new.com/$1-2001/ [R,L]

如果新站点上的$1帖子标题相同,则反向引用只会节省重复。


推荐阅读