【问题标题】:Remove hyphen from Wordpress URL & replace with underscore从 Wordpress URL 中删除连字符并替换为下划线
【发布时间】:2017-08-30 09:19:55
【问题描述】:

我的个人投资组合页面的 WordPress 网站 URL 存在问题。

现有模式www.abc.com/portfolio_page/logo-design/

由于连字符不是干净 URL 的一部分,我想用下划线替换连字符或只保留 portfolio。我尝试阅读许多文章但未能实施。我尝试使用下面的代码,但这不起作用..

RewriteRule ^([^_]*)_([^_]*)$ /$1-$2 [L,R=302]

我想要什么

www.abc.com/portfolio-page/logo-design/

 www.abc.com/portfolio/logo-design/

我的htaccess文件代码如下图

我该怎么做.. 请帮忙..

【问题讨论】:

    标签: wordpress .htaccess url


    【解决方案1】:

    为了只保留/portfolio,您可以将此规则用作您的第一条规则:

    RewriteEngine On
    
    RewriteRule ^(portfolio)[_-][^/]*/(.*)$ /$1/$2 [L,NC,NE,R=301]
    
    # rest of your URLs go here
    

    【讨论】:

    • 否 这对我不起作用.. URL 模式已更改,但浏览器显示“ERR_TOO_MANY_REDIRECTS”此错误..
    • 您是否将此作为首要规则并清除浏览器缓存?在我的 Apache 上,这条规则将 http://localhost/portfolio-page/logo-design/ 重定向到 http://localhost/portfolio/logo-design/
    • 我得到了 50% 的模式工作.. 让我解释一下.. 在我使用你的代码后,当我打开投资组合页面时,URL 更新为 [link](www.abc .com/portfolio/) 正在显示,但是当我单击此页面中的单个投资组合时,它会显示“ERR_TOO_MANY_REDIRECTS”此错误.. [链接](www.abc.com/portfolio/logo-design)....跨度>
    • 此外,现有 URL 是 www.abc.com/portfolio_page/logo-design/ 而不是 localhost/portfolio-page/logo-design 经您的测试。我的意思是 URL 中的“portfolio_page”之间有一个下划线
    • 即使http://localhost/portfolio_page/logo-design/ 也被重定向到http://localhost/portfolio/logo-design/。您能否编辑问题并提供完整的 .htaccess,因为我怀疑其他一些规则行为不端。
    猜你喜欢
    • 2018-05-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-04
    • 1970-01-01
    • 2017-04-06
    • 1970-01-01
    • 2015-03-23
    相关资源
    最近更新 更多