如何在不丢失搜索引擎排名的情况下更改博客的永久链接结构
已发表: 2022-05-22通常情况下,独立工作且可能不了解高级 SEO(搜索引擎优化)技术的博客所有者会在他们的博客中尝试新事物,这最终可能会损害他们的排名并且可能会让人感到困惑。

昨晚我决定对“The Wpromoter Blog”进行一些急需的更改,以帮助提高我们在搜索引擎中的排名。 由于我们一直在努力撰写博客文章并尽最大努力让世界了解最新情况,因此我们积累了相当多的文章,同时博客受到了读者的喜爱。
当博客添加到我们的网站时,它是在我们的网站以编程方式创建之后完成的。 该博客是安装在名为 /blog 的子目录中的 WordPress。
在我开始解释我所做的之前,这是一个示例场景:
Joe Blogger Dude 在他自己安装的 WordPress 上运行了一个名为 joeblogger.com的博客 - 现在这不是一个真正的博客,如果你去那里你会看到: 
对于我们的示例,他的 URL 当前以这种格式显示:
http://www.joeblogger.com/%year%/%month%/%day%/%postname%/
即 Live 它可能看起来像这样:
http://www.joeblogger.com/2008/08/01/how-to-joe-blog/
在 Joe 访问了某个地方(例如 SMX)后,他发现了一些关于博客 SEO 的信息,这些信息影响了他在 WordPress 中为他的 URL 使用自定义博客结构,而不是在 URL 中包含所有日期戳的较长的默认博客结构——这真的只是有用对于您希望在雅虎新闻部分或其他需要将日期包含在要编入索引的 URL 中的新闻站点中的新闻帖子(但这是另一篇要写的帖子)。
Joe 在开始时使用了默认设置,只需按照 WordPress 的安装说明进行操作,其中不包含任何有关博客优化的 SEO 技术的信息。
这是问题所在
现在乔有了想要以某种方式改变他的永久链接结构的弹药,所以他谷歌的“我如何在 WordPress 中更改我的永久链接结构?”
经过一些快速研究,他发现这样做的方法是在“wp-admin”区域中选择“设置 - >永久链接”并选择“自定义”单选按钮,然后输入以下字符串:
/%category%/%postname%/
现在,这会将 URL 中域名后面的日期替换为每个帖子中帖子的类别,然后是 post-slug(帖子名)。
所以,乔设置了它,一切都很好,现在他的帖子有更清晰的 URL。 他很高兴。
我提到的“问题”就在这里:他没有意识到他在 Google 中排名的任何帖子现在都会返回 404 错误并最终从 SERP(搜索引擎结果页面)中删除。
那么,您如何保持排名?
大多数 SEO 会告诉您的答案是 301 将您所有的旧博客文章重定向到新文章。
伟大的。
你猜怎么着? Joe Blogger 有 250 篇博文。
这现在变成了一项多么艰巨的任务。
手动创建所有这些 301 真的很痛苦。 您需要一些程序或软件或快速而肮脏的解决方案来更快地完成此操作。
有插件和方法可以实现结果,只需用你的大脑来弄清楚。
我的下一个示例是我为您正在阅读的“The Wpromoter blog”解决此问题所做的工作。 我们的帖子过去是这样的:
https://www.wpromote.com/blog/2008/07/31/information-age-overload/
现在它们看起来像这样:
https://www.wpromote.com/blog/internet-news/information-age-overload/
尝试点击 /2008/07/31 的帖子并查看 301 的运行情况!
步骤 1. 在您的 WordPress 博客中安装 XML 站点地图生成器插件
–(注意:如果您使用其他博客软件,所有这些原则都是相同的,您可能需要找到另一种生成 URL 的方法,或者只是使用在线站点地图生成器)
Steph 2. 为博客生成站点地图文件并查看它创建的站点地图
将站点地图在您的计算机上本地保存为“old-sitemap.xml”。

插件生成的“旧”站点地图
步骤 3. 在编辑器中打开文件(即 TextEdit、Notepad、Smultron、Dreamweaver)
使用各种查找和替换技术仅删除每个帖子的 URL。

即搜索: </url><url> 忽略空格,然后 <loc>,然后 </loc> 将它们全部替换为空字符以删除它们。 – 最终得到一个 URL 列表。
第 4 步。在您进行更改时暂时阻止搜索引擎为您的博客编制索引

如何防止搜索引擎抓取您的博客
步骤 5. 在 WordPress 中设置自定义永久链接结构
在 WordPress 中,转到:
'设置->永久链接'并选择'自定义'单选按钮,然后输入以下字符串:
/%category%/%postname%/

WordPress 自定义永久链接结构
现在您会立即看到您的帖子 URL 看起来更清晰。 通过查看您的博客并浏览几页以确保它有效,以确保它有效。
即他们现在看起来像这样。
https://www.wpromote.com/blog/technology/information-age-overload/
步骤 6. 为“新”URL 结构生成另一个站点地图
按照与上述步骤 2 中相同的步骤进行操作。

新的站点地图生成器 URL
第 7 步。将两个文件剪切并粘贴到 Excel 的不同列中
即 A 列将显示:重定向 301,B 列将是旧 URL,C 列将是新 URL。

在 Excel 中创建的 301 重定向
步骤 8。从 Excel 剪切并粘贴到您的文本编辑器中
将文件另存为 UTF-8 编码。
这将被添加到您当前的 .htaccess 文件中(如果文件中已有任何内容,请留一个空白行并粘贴这些重定向)或创建一个新文件。 注意在 MAC 上,您必须将文件命名为 htaccess.txt 或其他可读的名称,只需在将其上传到博客目录的根目录后将其重命名为 .htaccess - 即在我们的示例中为 /blog
第 9 步。如果您的站点地图已经使用“旧网址”,请等待,直到 Google 抓取它
您需要给 google 一些时间来抓取和索引 301。 重要提示:当搜索在旧 URL 中编入索引的帖子开始显示为新 URL 时,您就会知道发生了这种情况。
加快此过程的一种方法是将包含旧 URL 的 XML 站点地图(通过网站管理员工具)提交给 Google。 然后,等到所有内容都被爬取。
第 10 步:让搜索引擎再次抓取您的网站
现在回到隐私设置页面并单击顶部单选按钮,允许博客再次被搜索引擎索引。

如何让搜索引擎抓取您的博客
第 11 步。在站点地图中提交新的 URL 被抓取后
一旦没有旧页面显示从帖子中搜索博客内容,您将希望仅使用新 URL 更新您的 XML 站点地图。
第 12 步。注意重复内容问题
为了确保没有任何存档帖子被谷歌标记为“重复内容”,我在 WordPress 中激活了“重复内容修复”插件,该插件将元“NOINDEX”标签添加到所有包含与博客内容相同的存档页面帖子,但有不同的 URL。 这告诉搜索引擎不要索引任何存档页面(具有不太人性化的 URL),并确保只有正确格式的帖子才能被索引。
第 13 步。坐下来等待新的排名开始滚动!
直到下一次,
您友好的邻居搜索引擎优化
