不,它们不会改变,但你不应该依赖它们来创建外部站点。
如果我们谈论的只是单个WordPress网站上的数据库,那么:
如果它是一个已发布/已建立的帖子/页面,那么是的,ID不会改变,除非删除它。如果它是修订、草稿等,ID不会改变,但也不会存在很长时间。然而,一旦我们离开这个领域,我们就进入了数据可移植的领域,附加到它上的数据将是一个糟糕的数据块。如果导出数据或依赖RSS,则post ID不可用,并且无法在导入和导出后继续使用。
那么如果我
对于表和在数据库中存储对Post的引用或Post Meta,请使用Post ID。
要检测WordPress安装之外的其他站点/程序上的重复项,请使用post GUI。这些都是通过RSS和其他方式传递的,只要你的帖子URL没有大幅度变化,它们应该保持不变。
在我的代码中,永远不要在主题中硬编码帖子ID,它们是我们所说的“神奇值”,它们是horrificly bad 编程实践。不仅仅是WordPress,任何有这些的代码从定义上来说都是糟糕的代码。像瘟疫一样躲避。
使用存储在带有GUI的选项中的帖子ID在仪表板区域中进行设置,或者使用已知的slug从帖子中提取帖子ID。
对于自定义表或自定义数据存储,我建议您使用custom taxonomies 和post meta. 您的自定义表很可能既并没有必要,也并没有很多缓存机制所能获取的性能。
如果这样做的话,您可以在站点B的侧栏中列出站点A上最新的博客帖子,那么您应该使用RSS(可能是一个自定义小部件,以便您可以适当地设置它们的样式)将它们拉入,或者使用多站点安装。
但在内部,总是通过其ID引用帖子
要了解术语和类别,请在内部使用术语ID,在外部使用术语slug。
URL
您提到了URL。原因是什么?p=86 etc是因为您没有启用永久链接。
但如果您确实启用了永久链接,那么?p=86 url仍然有效。
E、 g.我的网站上的这些URL都有效:
其他人的永久链接可能不会采用相同的格式。