質問: ???
回答: それでもefqからフィールドを取得したい人は、 efq extra fields モジュールを見てください。 警告:このモジュールはentityfieldqueryを悪用して、データベースからデータを返します。エンティティーまたはエンティティー上に構築されたモジュールでは機能しません。 entityfieldqueryextrafieldsオブジェクト内でaddfieldを使用できます(entityfieldqueryオブジェクトを拡張します)。最初はentityfieldqueryはエンティティid、バンドル、エンティティタイプのみを返します。このモジュールは、追加のentity_loadsを実行せずに、その上に追加のレイヤーを追加します!大量のデータを処理したい場合や、sqlクエリを減らしたい場合に重要です。 efqはすでにこの情報についてデータベースにクエリを実行しているので、そのクエリを変更して、いくつかの追加フィールドも提供してみませんか。つまり、そのデータを取得するために1つの追加のクエリが実行されることはありません。 注意してください。entity_loadまたは同様の関数で発生するポストフォーマット/ポストローディングに依存している場合、このモジュールはそれを処理しません。取得したデータの有効性を自分で確認する必要があります。 例 ノードタイトルの取得 $ query = new entityfieldqueryextrafields(); $ result = $ query-> entitycondition( 'entity_type'、 'node') -> propertycondition( 'type'、 'my_bundle_type') -> propertycondition( 'status'、1) -> addextrafield ( 'field_myfield'、value '、value') -> addextrafield( 'field_mynodereffield'、nid '、nid') -> addextrafield( ''、 'title'、 'title'、 'node') -> fieldcondition( 'field_myfield'、 'value'、 'some_value_to_filter_on'、 '=') -> execute(); 可能な組み合わせ: addextrafield($ field_name、$ column、$ column_alias = null、$ table = null) field_name どのフィールドから追加フィールドを取得するかを指定します。ベーステーブルからのものである場合は、空のままにして、テーブル引数を入力します column 列の名前を指定します column_alias 列のエイリアスを指定します。 table オプションで、ここにノードまたはユーザー(ベーステーブル)のようなものを追加します。