为什么我的自定义帖子类型档案URL不能翻译?

时间:2017-07-26 作者:Luca Reghellin

我有一个“wine”自定义帖子类型,使用重写选项创建:

\'rewrite\' => array(
  \'slug\' => __(\'vini\', \'fdr\'),
  \'with_front\' => false,
  \'pages\' => false
),
所以弹头应该平移。我有一个en-GB.po/mo 我把“vini”翻译成“wines”。

但是,在翻译下生成的URL不会被翻译:

原件:[base url]/vini/teroldego-morei/

翻译为:[base url]/en/vini/teroldego-morei/

我想要什么(我想应该是):[base url]/en/wines/teroldego-morei/

那又怎样?这个official docs 说“应该是可翻译的”。是的,但似乎整个事情都不起作用。

1 个回复
最合适的回答,由SO网友:Luca Reghellin 整理而成

更新1:

我还没有找到解决方案(除了使用Polylang Pro)。但我必须补充一点,我最初的问题部分错了,因为rewrite 选项用于单页url,而不是存档url。

自定义post类型存档有自己的slug,它是has_archive 选项(可以是布尔值或字符串)。所以基本上可以是这样的:

\'has_archive\' => __(\'products\',\'mytxtdomain\')
不过,就像重写url一样,它不起作用,下面的答案可能仍然有效。

答案是:这是不可能的。

福尔克斯或Polylang Pro工作人员向我解释了原因:

如果在区域设置为意大利语时刷新重写规则,则slug的计算结果为“vini”。如果在语言环境为英语的情况下冲洗它们,则鼻涕虫将被评估为“wine”。因此,在第一种情况下,重写规则模式是:

葡萄酒/([^/]+)(?:/([0-9]+)?/$

第二种情况是

葡萄酒/([^/]+)(?:/([0-9]+)?/$

但你永远不会同时拥有这两者。所以只有一个在工作。

结束

相关推荐

Plugin Localization

我刚刚为wp构建了我的第一个插件,即使它不是一个伟大的“代码诗意”;)它正常工作。这是一个使用GalleryView 3.0 jquery插件转换默认wp库的插件(http://spaceforaname.com/galleryview).我唯一不能做的就是本地化。此插件的本地化意味着转换管理界面,在这里可以配置jquery插件选项来更改结果库的外观。我试着关注网络上数百万的教程,在论坛上阅读了很多关于这个问题的帖子,并遵循了codex的指南。。。但仍然没有运气。这就是我所做的:每个文本行都位于gette