如果自定义帖子类型,如何建立列表和列表项关系?

时间:2020-09-10 作者:jost21

我正在尝试开发一个插件来管理和显示列表,类似于待办事项列表。不同的用户可以访问不同的列表和项目。我首先为列表项创建一个自定义帖子类型。现在,我正在处理一个表示列表的自定义帖子类型。

我在考虑做一些here, 其中我有一个下拉列表;“项目”;CPT,您可以为其选择一个列表。这些项目有一个带有列表id的Posteta字段。我想应该有一个单独的数据库表来处理列表和项目之间的关系。

这里是我所挣扎的部分:一个列表显然有多个项目,但任何项目也可以在多个列表上。我如何才能意识到我可以轻松地获取列表中的所有项目以及每个项目的所有列表?使用上述方法,只需在Posteta字段中查找每个项目的列表,就可以轻松获得每个项目的所有列表。但另一种方法似乎更为复杂,因为Posteta字段包含一个序列化数组。

我有一个想法,我将如何解决这个问题;“正常”;关系数据库,但我不知道用WordPress做这件事的好方法是什么
两个CPT的方法是否不适合开始
我的猜测是创建一个单独的附加数据库表来处理列表和项目之间的关系。

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

以下是一些如何在WordPress中将内容联系在一起的想法。如果不知道(并理解)所有的细节和要求,很难给出完整的答案,但这些有望帮助您探索不同的可能解决方案。

将关系数据存储在CPT post meta中。然后您可以使用WP_Query 使用元参数查找匹配的帖子管理与的关系post_parent 的属性WP_Post它在DB{prefix}\\u posts表中有自己的列)。如果您使用wp_update_post()

  • 创建自定义分类法以用作列表,并将CPT用作项post_content 属性完全跳过CPT,将所有内容存储在自定义DB表中,并使用$wpdb

  • 相关推荐