我知道你在这个问题上态度不好。
用户是唯一的,并且对于应用程序“健全性”来说应该是唯一的。
如果你想在你的网站结构,你有用户可以注册课程。您希望每个课程都有唯一的“条目”,这是合法的,但要做到这一点,您不应该复制用户,而应该创建一个中介“实体”,作为与用户的一对多关系和与课程的一对多关系。
在WordPress中,当您需要一个通用的“实体”时,解决方案主要是注册一个新的帖子类型。
假设您注册了一个名为“registration”的post类型。
现在,您可以使用将用户连接到注册post_author
字段,这样每个用户都可以有多个注册,并且每个注册都属于一个用户。
可能,注册可以有一些元字段,例如,其中一个可以是“学生名”,如果用户是注册孩子的家长,则填写孩子名,如果用户是想申请更多课程的成年人,则学生名为jsut用户名。
现在,您在将此新职位类型与课程(可能是另一个CPT)连接时遇到了问题。
WordPress在这里有一个缺陷,因为开箱即用不可能将帖子连接到其他帖子,但您可以使用以下插件解决问题Posts2Posts 或者使用自定义字段(类似于\'_course_id\'
注册职位类型的自定义字段)。
这就是结构:你有唯一的用户,拥有唯一的电子邮件、用户名和密码。每个用户都可以登录、管理配置文件、忘记时获取新密码以及用户应该具有的任何其他功能。
同时,用户可以有多个注册,每个课程一个。
通过这种方式,您可以使用一个简单的meta\\u查询了解每门课程有多少学生:“注册”post type,其中meta\\u key=“\\u course\\u id”,meta\\u value=$a\\u course\\u id。
创建此结构相对容易,您需要编写的是创建新注册的UI。
如果用户无法自行注册,可以使用核心帖子类型创建页面:
创建新注册帖子->将帖子作者设置为所需用户->使用元框选择相关课程。
否则,如果希望用户能够创建新的注册,则必须将注册帖子类型设置为非公共(隐藏默认UI),并为此创建自定义UI。
这需要做一些工作,但你的应用程序会有很大的改进,结构也会“合理”,你可以轻松地扩展网站功能,例如使用newletter插件联系用户(无需担心重复的电子邮件),集成一些购物车插件以允许在线支付注册费用,等等。