【问题标题】:Woocommerce permalink substr replaceWoocommerce 永久链接 substr 替换
【发布时间】:2020-07-09 20:05:34
【问题描述】:

大约 2 周以来,我一直在寻找和尝试不同的解决方案。我即将放弃,但首先我想寻求您的帮助。

我网站上的固定链接是这样的www.mysite.com/productsku

所有产品的sku都像ABC1234,三个字母后跟四个数字

现在,我正在寻找的解决方案是,当有人输入他们的网址 www.mysite.com/1200 时,他们将自动重定向到真实地址 www.mysite.com/dna1200

我尝试添加第二个永久链接,但没有成功,因为现在有办法解决。

我尝试了一些正则表达式,但也没有运气。

你有什么想法吗? 谢谢

【问题讨论】:

  • 您能否将此添加到您的问题中:当用户插入此内容时:????进入浏览器它应该将他重定向到这个????。请填写问号,以便我们了解会发生什么。

标签: regex wordpress redirect woocommerce permalinks


【解决方案1】:

据我了解,您希望匹配 url 的路径并将其重定向到相应的 sku。您缺少的部分是您需要在我假设的数据库中执行查找,该数据库包含此信息并返回 sku。

这是匹配您所追求的数字部分的正则表达式。

^https?:\/\/[^\/]+\/(\d{4})$
  • ^ 字符串开头
  • http s? 分别匹配 http 和零个或一个 s 实例。
  • :\/\/ 匹配一个冒号和两个正斜杠 ://
  • [^\/]+ 匹配所有非正斜杠字符(这匹配域名)
  • \/ 匹配表示 url 路径开始的第一个斜杠
  • ( 捕获组开始,感兴趣的部分
    • \d{4}四位字符
  • ) 捕获组结束
  • $字符串结束

【讨论】:

  • 真心感谢布伦。所以,你说要在 .htaccess 文件中包含这个正则表达式!?我是菜鸟,所以每一点信息都对我有帮助。因此,如果我的网站是 supercats.com,则正则表达式需要看起来像 ^https?:\/\/[^www.SuperCats.com\/]+\/(\d{4})$。 ?就这样吗?
  • @selfmade 除非每个 sku 都以 dna 开头,否则您需要在数据库中执行查找以获取前缀。此外,[^\/]+ 部分只是匹配域名的一种抽象方式,因此模式更加灵活。
猜你喜欢
  • 2017-03-19
  • 1970-01-01
  • 2020-06-11
  • 2019-10-18
  • 1970-01-01
  • 1970-01-01
  • 2017-07-30
  • 1970-01-01
相关资源
最近更新 更多