0

次のコードを1つのwp_queryとして機能させる方法を理解しようとしています。メタ値と分類値でループをフィルタリングしようとしています。

これらのセクションは両方とも独立して機能しますが、これらを1つのクエリに結び付けたいと考えています。

私はさまざまな組み合わせを試しましたが、どこにも行きません....この問題への最善のアプローチのアイデアは...?

  $args = array(
    array(
   'post_type' => 'job_listing',
  'meta_key' => 'geo_short_address',
  'meta_value' => $area


   ),

'tax_query' => array(
        'relation' => 'AND',
    array(
        'taxonomy' => 'job_type',
        'field' => 'term_id',
        'terms' => $jobtype
    ),
        array(
        'taxonomy' => 'job_cat',
        'field' => 'slug',
        'terms' => $jobcat
    )
)
   );
4

1 に答える 1

1

引数配列が1レベル深すぎるように見えます。これを試して:

$args = array(
    'post_type' => 'job_listing',
    'meta_key' => 'geo_short_address',
    'meta_value' => $area,
    'tax_query' => array(
        'relation' => 'AND',
        array(
            'taxonomy' => 'job_type',
            'field' => 'term_id',
            'terms' => $jobtype
        ),
        array(
            'taxonomy' => 'job_cat',
            'field' => 'slug',
            'terms' => $jobcat
        )
    )
);

それでも問題が解決しない場合は、次のことを試してください。

$args = array(
    'post_type' => 'job_listing',
    'meta_key' => 'geo_short_address',
    'meta_query' => array(
        array(
           'key' => 'geo_short_address',
           'value' => $area
        )
    ),
    'tax_query' => array(
        'relation' => 'AND',
        array(
            'taxonomy' => 'job_type',
            'field' => 'term_id',
            'terms' => $jobtype
        ),
        array(
            'taxonomy' => 'job_cat',
            'field' => 'slug',
            'terms' => $jobcat
        )
    )
);
于 2012-11-19T14:42:38.757 に答える