您可以为每个Event
自定义post meta(示例event_users
) 您将在其中保存单击“我对此活动感兴趣”的用户ID
类似于:
$event_users = get_post_meta($event_id, \'event_users\', true); // Get exisitig event users
$event_users[$user_id] = 1; // Add user ID as a KEY, a simple way to make sure you only add it once
add_post_meta($event_id, \'event_users\', $event_users, true) or update_post_meta($event_id, \'event_users\', $event_users); // Add/update event users
然后,当您想使用此数据获取一个事件的所有用户时,只需使用
$event_users = get_post_meta($event_id, \'event_users\', true);
为用户获取所有事件有点棘手。您可以将WP\\u查询与meta\\u查询一起使用,如:
[
`key` => \'event_users\',
`value` => \'%:\'. $user_id .\';%\',
\'compare\': \'LIKE\'
]
PS:数组值在保存时序列化,但老实说,我不喜欢太多的序列化值(只是个人的事情),我更喜欢将值转换为JSON(JSON\\u在保存时编码,从DB提取数据时JSON\\u解码)
如果您将使用json数据格式,元查询将如下所示:
[
`key` => \'event_users\',
`value` => \'%"\'. $user_id .\'"%\',
\'compare\': \'LIKE\'
]
查看此链接了解更多信息:-
https://codex.wordpress.org/Class_Reference/WP_Query#Custom_Field_Parameters-
https://codex.wordpress.org/Function_Reference/add_post_meta事件专用插件:https://wordpress.org/plugins/the-events-calendar/