Cityというカスタムフィールドを持つLocationというカスタム投稿タイプがあります。私はSpecialtiesと呼ばれるそのポストタイプの分類法もあります。特殊フィルタはtax_query
でうまく動作しますが、カスタムフィールドでフィルタすることができません。
これは動作していません、そしてまた私が試みてきた他のすべてについてだけでもありません:
$args = array('post_type' => 'location',
'tax_query' => array(
array(
'taxonomy' => 'specialties',
'field' => 'slug',
'terms' => $specialty,
)),
'meta_query' => array(array('city' => $location,'compare' => '=',))
);
'meta_query'
の値が間違っています-次のようになります。
'meta_query' => array(
array(
'key' => 'city',
'value' => $location,
'compare' => '=',
)
);
とにかく、oneメタフィールドでフィルタリングする必要があるこの場合、'meta_query'
を使用する必要はありません...コード、$args
を次のものに置き換えてみてください。
$args = array(
'post_type' => 'location',
'tax_query' => array(
array(
'taxonomy' => 'specialties',
'field' => 'slug',
'terms' => $specialty,
)
),
'meta_key' => 'city',
'meta_value'=> $location,
);