从具有序列化值的元键获取GET_USERS

时间:2017-08-31 作者:Dgeorgex000000

我想做一个get_users() 当元键有两个值时。例如,在db中,它如下所示:

a:2:{i:0;s:10:"31.08.2017";i:1;s:9:"username";}
当我进行查询时:

$claimed_users = get_users(\'meta_key=username\');
并尝试输出它:print_r($claimed_users);

它刚刚回来Array().

我做错了什么?有没有更好的方法?

1 个回复
SO网友:HU ist Sebastian

我假设meta\\u值有一个序列化的数组,而不是meta\\u键(因为将meta\\u键设为序列化数组没有任何意义)

您确实应该将这些值保存在单独的字段中,以便能够通过wordpress内部函数(如get\\u users)进行查询。

如果必须保留此数据结构,则必须通过wpdb直接访问数据库,如下所示:

global $wpdb;
$claimed_user_ids = $wpdb->get_col($wpdb->prepare("SELECT DISTINCT user_id FROM $wpdb->usermeta WHERE meta_key = %s AND meta_value LIKE %s",\'<META_KEY>\',\'%username%\'));
(替换为保存序列化数组的meta\\u键)。

快乐编码,Kuchenundkakao

结束