Wp_query参数' post__not_in'不要使用tax_query'

时间:2017-10-07 14:02:08

标签: wordpress polylang

准备类似帖子的功能遇到了wp_query的问题。我的args:

 $args = array(
  'post_type' => 'post',
  'post__not_in' => array(pll_get_post($post->ID,'ru'),pll_get_post($post->ID,'uk')),
  'posts_per_page' => $count,
  'caller_get_posts' => 1,

 );

 if (!empty($position_array) || !empty($cities_array) || !empty($ages_array)) {
  $args['tax_query'] = array(
   'relation' => 'OR',
   array(
    'taxonomy' => 'position',
    'field' => 'slug',
    'terms' => $position_array,
   ),
   array(
    'taxonomy' => 'city',
    'field' => 'slug',
    'terms' => $cities_array,
   ),
   array(
    'taxonomy' => 'age',
    'field' => 'slug',
    'terms' => $ages_array,
   ),
   array(
    'taxonomy' => 'post_tag',
    'field' => 'slug',
    'terms' => $tag_array
   )
  );
 };
 print_r($args);
 $my_query = new wp_query($args);

因此,它会查找类似于三种自定义分类法或标记之一的帖子,但必须绕过不同语言的当前帖子(Polylang插件)。

如果当前语言是默认语言(' ru')功能正常,但如果我将语言更改为' uk',此功能会给我类似的帖子,其中一个是当前帖子

'post__not_in' => array(pll_get_post($post->ID,'ru'),pll_get_post($post->ID,'uk')),

- 这会返回正确的ID(例如Array([0] => 331 [1] => 451))。为什么wp_query不会绕过不同语言的当前帖子?

0 个答案:

没有答案