User Relationship

时间:2018-07-21 作者:zen_1991

我已经创建了一个自定义注册页面,用户将从另一个用户那里接收代码,并在注册时键入代码。如果代码匹配,我需要刚注册的用户与他们接收代码的用户建立关联。注意,我将这些代码保存在自定义插件表中。

因此,您将具有一对多关系,其中一个用户可以有多个子用户。如果可能的话,我需要能够进一步扩展,这样子用户也可以有许多子用户。因此,我现在的首要关系和优先事项是:

USER
 |
SUB-USER
然后,我希望能够做到这一点:

USER - A
 |
SUB-USER B  -------
    |             |
 SUB-USER C    SUB-USER D
用户B与用户A相关。用户C和D与B相关。

我知道我们可以利用Update User Meta 然后用下面的查询查询这些关系,我只想了解一些关于今后创建这种关系的建议。

$users_sub_users = new WP_User_Query( array(
   \'meta_key\' => \'user\',
   \'meta_value\' => $user_id
) );

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

如果我是你,我会使用wp\\u usermeta表。可以很容易地将信息添加到此表中:

add_user_meta(NEW_USER_ID, "PARENT_USER_ID",USER_ID,true);
USER\\u ID:顶级用户的ID,(在您的情况下是USER A的ID)“PARENT\\u USER\\u ID”:可以根据onNEW\\u USER\\u ID搜索和查找结果的某个键sub\\u USER true:允许多个用户成为同一用户的子用户

例如,如果用户A id为41,而新用户(即B)的id为82,则代码如下所示:

add_user_meta(82, "PARENT_USER_ID",41,true);
然后,您可以搜索其父用户ID为USER\\u ID的所有用户(在我们的示例41中),然后您将获得该用户的所有子用户。

示例查询:

$user_query = new WP_User_Query( array( \'meta_key\' => \'PARENT_USER_ID\', \'meta_value\' => \'41\' ) );

结束

相关推荐