如何获得某个字段值的用户(实体)?


8

我想编写一个函数,将已输入特定值的用户返回到自定义用户字段。

可以说每个用户都有一个自定义生日字段。使所有用户都有特定生日的最佳方法是什么?

我可以创建一个数据库查询,该查询搜索field_data_field_birthday表并返回与field_birthday_value匹配给定值的entity_id(在这种情况下为用户id),然后加载用户。

这似乎有点粗糙,此用例是否有通用功能可用?在实体API还是现场API中?

Answers:


12

我询问的用例的简单示例:

$query = new EntityFieldQuery();
$query->entityCondition('entity_type', 'user')
  ->fieldCondition('field_birthday', 'value', $birthday);

$result = $query->execute();
$users_ids = array_keys($result['user']);

像魅力一样工作。
Anders

请建议为此包含名称空间,以避免致命错误。
学生
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.