将Pemalink结构更改为/%post_id%/%postname%/

时间:2018-11-07 作者:bikegremlin

我当前正在使用permalink结构:/%年%/%月%/%日%/%postname%/

我想将其更改为:/%post\\u id%/%postname%/

我希望是:

更快(数据库按post\\u id排序?)

  • 较短的URL(以及清晰可见的短文,只需去掉%postname%/即可)
  • 对搜索引擎优化更加友好-因为我的内容是“常青树”,所以发布日期不相关(并且写在每篇文章上,以及最后的更新日期)-因此这将提供较短的URL,与使用年/月/日结构相比没有任何缺点

    如果没有,实施这一变化的最佳方式是什么?欢迎在这里提供任何链接或完整答案。

    我已经有120多个帖子了,这会影响速度吗,因为从一开始就没有这样做?

  • 2 个回复
    最合适的回答,由SO网友:bikegremlin 整理而成

    我想我明白了。做了一个试验场。permalink结构:

    年/月/日/邮编。

    发布了一篇帖子。然后将永久链接更改为postID/post name。通过从浏览器查看网络统计数据进行测试。这是我得到的,一个301重定向,在尝试了这个例子之后。com/2018/11/04/hello world/来自我的浏览器:

    what the browser does

    我测试了另一个东西。使用不同的permalink结构,我试图制作两篇具有相同帖子名称的帖子(帖子名称所在的链接部分)。WordPress不允许这样做。

    我的结论是,post name和postID都是唯一的。这将解释为什么auto-301重定向可以工作,以及为什么使用示例中的平面目录结构。com/post名称的性能并不像WordPress 3.3之前那样慢。(我想)版本。

    另一件有趣的事情是,使用postID/post name的permalink结构,我可以在浏览器中输入:示例。com/postID(带或不带尾部斜杠),浏览器转到示例。com/postID/(带尾随斜杠),显示示例的内容。com/postID/post名称。

    因此,这似乎得到了很好的解决,无需担心手动设置301重定向。htaccess条目(我计划的更改需要为每个帖子手动重定向),因为我在链接结构中添加了一个唯一的ID)。也不需要插件。

    需要做的是更改所有内部链接-WordPress不会自动更改它们。它有301个重定向,但旧链接仍然存在。真麻烦。

    全文解释了问题、我是如何测试的,以及一些速度测试结果:https://io.bikegremlin.com/6768/permalink-change/

    SO网友:Mike Castro Demaria

    抱歉,没有,WP无法自动处理所有301重定向。您必须执行重写规则,或使用重写插件(如“重定向”或其他)手动管理。

    如果你喜欢使用。htacces文件,您可以添加:

    # BEGIN 301 Redirects
    Redirect 301 /2018/11/07/my-post/ http://www.mydomaine.com/postid/my-post/
    # END 301 Redirects
    
    要快速执行,可以执行DB请求来打印此规则列表。复制/通过即可。htaccess之后。

    结束

    相关推荐

    How To Fix A Redirect Chain

    我希望有人能帮上忙。我的网站爬网显示我的主页上有一个重定向链。基本上,这表明我正在从:http: > https: > https://www.我需要一切http:// 和http://www 直接发送至https://www. 没有链条。以下是.htaccess, 有人能看到是否有可能导致它的错误吗。</IfModule> RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ h