Must slugs be unique?

时间:2011-12-02 作者:tzeldin88

不管url的其余部分是什么,或者是否被不同的帖子类型或分类法使用,slug是否总是唯一的?

例如,是否可以同时拥有这两个URL?

mysite.com/industry/biotech/report/
mysite.com/industry/retail/report/
谢谢,托德

3 个回复
SO网友:sam

在里面wp_unique_term_slug():

$slug对于每个分类法都必须是唯一的全局名称,这意味着一个分类法术语不能有与另一个分类法术语匹配的slug。对于每个分类法,每个slug都必须是全局唯一的。

在里面wp_unique_post_slug():

@param string$post\\u status如果帖子仍处于草稿或挂起状态,则不会进行唯一性检查[…]

所有类型的附件段塞都必须是唯一的。[…]

页面段塞在其自身树中必须是唯一的。页面与post位于单独的命名空间中,因此允许页面段塞与post段塞重叠。[…]

所有帖子中的帖子段塞必须唯一[…]

如有必要,当帖子状态更改为时,WordPress会修改帖子段塞以强制唯一性publish 或者当页面在页面树之间移动时,如果您想避免这种情况,最好自己编写唯一的slug。

未经证实,但我似乎记得:

WordPress有时会增加slug(hello-world-2) 有时会截断它们(hello-worl !) 要实现独特性,你必须清空垃圾,使垃圾帖子的鼻涕再次可用

SO网友:Caio Mars

我知道这是一个老帖子,但我认为这里有错误的信息。我在不同的自定义帖子类型和分类法之间遇到了与slug冲突的问题,我决定阅读一些相关内容,以便更好地理解它。

我使用的是WordPress 4.2.2,我可以用相同的slug创建不同的帖子类型。显然,这是一个正在跟踪的已知问题。然而,目前尚不清楚slug唯一性的规则是什么。

https://core.trac.wordpress.org/ticket/13459

对我来说最有意义的是,post slug需要在post类型(页面、post、cpt)中是唯一的,而分类法slug需要在分类法中是唯一的。但目前在版本4.2.2上,这些不适用。我想我将不得不在不知道的情况下处理它。

SO网友:scribu

是的,无论柱类型如何,柱段塞都必须是唯一的;它是在数据库级别强制执行的。与术语段塞相同。

我不认为他们之间必须是独一无二的。一、 e.你可以有一个“报告”帖子和一个“报告”术语。

不过,要获得示例中的永久链接,您可能不需要使用相同的slug创建多个帖子。您只需要一个以/report/ 并映射到其他内容。

结束

相关推荐

Permalinks and page store

我把这个贴在stackoverflow上,他们说我可以在这里试试-我的网站上安装了wordpress。在那个网站的一个子文件夹下,我安装了oscommerce系统作为在线商务商店。我在wordpress上激活了permalinks,但现在每次我试图联系商店管理部门时,我都会得到wordpress中找不到的页面。如果我禁用永久链接,我可以再次访问,你能帮我吗?谢谢你,丹尼