Elasticsearchに次のPHPクライアントを使用しています:https ://github.com/nervetattoo/elasticsearchですが、検索クエリで照合する複数のフィールドを追加するのに問題があります。
タイプ別フィルターオプションが設定されている場合は追加したい。
私はこの構文で遊んだことがありますが、検索時に最初に指定されたフィールドのみが考慮されます。
$type = ($type) ? $type : false;
$options = array(
'fields' => array('title', 'content', 'profile_id', 'type', 'name', 'description', 'date', 'url'),
'from' => 0,
'size' => 10,
'query' => array(
($type ?
array('match' => array('name' => $term, 'type' => $type)) :
array('match' => array('_all' => $term))
)
)
);
任意の提案をいただければ幸いです。