当前问题:我正在制作一个插件,用于列出WP_LIST_TABLE表中具有该用户角色的用户。 这是我的查询
$this->items = $wpdb->get_results($wpdb->prepare("SELECT {$wpdb->users}.*, {$wpdb->usermeta}.meta_value as roles FROM {$wpdb->users}
LEFT JOIN {$wpdb->usermeta} ON {$wpdb->users}.ID = {$wpdb- >usermeta}.user_id
WHERE {$wpdb->usermeta}.meta_key = '{$wpdb->get_blog_prefix()}capabilities'
ORDER BY {$wpdb->users}.display_name", $per_page, $paged), ARRAY_A);
它像这样显示
[roles] => a:1:{s:13:"administrator";b:1;}
如何反序列化此数据。我也想使用此查询显示名字,请帮助我
答案 0 :(得分:0)
尝试以下代码:
foreach($this->items as $value){
echo $value->COLUMN_NAME ."<br>";
}
请将COLUMN_NAME更改为要显示的任何列。如果有一个名为e_name的列,请输入“ $ value-> e_name”。
它的尝试和测试。这个对我有用。让我知道它是否对您有用!
答案 1 :(得分:0)
最后这对我有帮助。
$input = unserialize($item['roles']);
$result = array();
foreach($input as $key => $value){
$result[] = $key;
}
$userRole = implode(",", $result);
return $userRole;