質問: 特定のフィールド値のユーザー(エンティティ)を取得するにはどうすればよいですか? 特定の値を入力したユーザーをカスタムユーザーフィールドに返す関数を書きたいのですが。すべてのユーザーにカスタムの誕生日フィールドがあるとしましょう。特定の誕生日を持つすべてのユーザーを取得するための最良の方法は何ですか?field_data_field_birthdayテーブルを検索し、field_birthday_valueが指定された値と一致するentity_id(この場合はユーザーid)を返すdbクエリを作成して、ユーザーをロードできます。これは少し粗雑に思えますが、このユースケースで使用できる汎用関数はありますか?エンティティapiまたはフィールドapiのどちらでしょうか?
回答: 私が尋ねたユースケースの簡単な例:$query = new entityfieldquery(); $query->entitycondition('entity_type', 'user') ->fieldcondition('field_birthday', 'value', $birthday); $result = $query->execute(); $users_ids = array_keys($result['user']);