永久链接更改后重定向-我应该使用什么正则表达式?

时间:2018-06-14 作者:user

我完全不喜欢正则表达式的东西。我已经看到了很多将重定向代码放入.htaccess 文件,但默认示例主要用于更改日期。其他一切都说要使用重定向插件,我已经使用它进行了简单的1次重定向,但我不知道永久链接更改的正则表达式。我们有743个帖子,所以我不会一一发布!

以下是新旧结构:

旧版本:/%post_id%/%postname%
新建:/%category%/%postname%

我需要在.htaccess 文件或这个特定的永久链接更改的重定向插件,将不胜感激!

2 个回复
SO网友:Slam

您可以通过regex将遗留URL重写为查询来实现这一点。您可以在post\\u id或postname上这样做,在这种情况下,我认为postname可能更安全(避免在可能以数字开头的其他路径上进行错误匹配)。

在自定义函数中,如下所示:

add_rewrite_rule( \'^[0-9]+/(.*)/?\', \'index.php?&name=$matches[1]\',\'top\' );
一些类似的正则表达式也可以使用。htaccess或重定向插件。

基本上,这是将URL重写为查询并将其传递给WordPress。WordPress使用它来查找帖子,然后返回结构中定义的正确永久链接。本质上是两个重定向。

SO网友:bikegremlin

我不会这么做,除非网站很小,页面/帖子很少,没有任何增长计划。就链接结构而言,这对SEO来说可能更好一些,但速度会受到影响。

This article 很好地解释了这一点,尽管作者建议使用年份/日期,但无论是在速度还是SEO方面,都远远不是最佳的。

/%post\\u id%/%postname%结构与WordPress一样好。只有少量页面的小型网站是一个例外-有最有利于SEO的链接结构-无论是帖子名称,还是类别/帖子名称,标签/帖子名称等-取决于你的标签/类别结构和内容“安排”(“logical sitemap”是有效的英文术语吗?)。

结束

相关推荐

WordPress看不到.htAccess规则

我目前正在建立一个小型企业网站,并在家庭服务器上托管,由于Wordpress没有遵守我制定的任何规则,我遇到了无法增强安全性的障碍。htaccess。我想最好阻止访问wp登录。php或wp admin来自除我之外的其他IP。所以我使用了我在各地都能找到的代码:ErrorDocument 401 /path-to-your-site/index.php?error=404 ErrorDocument 403 /path-to-your-site/index.php?error=404 &#x