导入到 WordPress 而不会丢失页面排名和永久链接

Importing to WordPress without losing page ranking and permalinks

我已将我所有的博客文章从不同的 CMS 导入到本地 WordPress 设置,以便在上线前进行测试。这是包含来自旧 CMS 的帖子的 XML 文件的布局:

<PublishingArticles>
    <ID></ID>
    <CategoryID></CategoryID>
    <AllowComments></AllowComments>
    <AllowPingback></AllowPingback>
    <Body></Body>
    <Categories></Categories>
    <ContentFormat></ContentFormat>
    <IsAppoved></IsAppoved>
    <IsPrivate></IsPrivate>
    <IsPublished></IsPublished>
    <Language></Language>
    <LastModified></LastModified>
    <ParentID></ParentID>
    <PermaLink>/home/year/month/day/id/blog-post-name.html</PermaLink>
    <Pos></Pos>
    <Posted></Posted>
    <Ratings></Ratings>
    <Slug></Slug>
    <Title></Title>
    <TotalReads></TotalReads>
    <TotalComments></TotalComments>
    <TotalVotes></TotalVotes>
    <UserName></UserName>
    <Version></Version>
</PublishingArticles>

到目前为止,我在导入帖子时没有遇到任何问题,所以我的下一步是确保旧的 URL 重定向到新的 URL。

我使用 WP All Import 导入帖子,但没有保存永久链接以进行重定向的选项。我现在已经安装了 Redirection 插件,但设置似乎没有达到我想要的效果。

我想将所有旧的永久链接重定向到新位置。有没有人对如何去做有任何想法?我尝试四处查看重定向,但我不确定这是否是正确的方法。

我目前的想法是我应该从 XML 文件中提取所有永久链接并告诉重定向插件应用这些,因为 ID 也将从 XML 文件中导入并且导入到 WordPress 时使用。我不知道如何大规模地执行此操作,但是因为有 1700~ 个帖子。

有多种方法可以做到这一点:

  • 您可以通过转至 Settings > Permalinks 在 WordPress 中构建您的 URL,类似于您之前的 CMS 设置。这样 WordPress 将自动生成与您的旧网址相似的新网址,您甚至不需要进行重定向。
  • 您可以像这样通过 .htaccess 文件将所有旧网址重定向到新网址(如以下聊天中所讨论的,新 URL 的结构将与旧网址完全相同):

旧域 URL: http://old-domain.com/home/year/month/day/id/blog-post-name.html

新域URL:http://new-domain.com/home/year/month/day/id/blog-post-name.html

将此添加到您的 .htaccess 文件中以将所有旧 URL 重定向到新 URL 不变:

<IfModule mod_rewrite.c>
RewriteEngine On
# Redirects Entire Old Domain URLs to New Domain Unchanged
RewriteCond %{HTTP_HOST} ^old-domain.com$ [OR]    
RewriteRule ^(.*)$ http://new-domain.com/ [R=301,L]
</IfModule>