获取不在数组中的帖子或在wordpress中使用特定的meta_key

时间:2012-12-29 16:03:59

标签: wordpress

我有问题:) 我有一个meta_key'glowna'。这是复选框。如果我检查这意味着帖子应该显示在类别的主页上。另外我想显示所有比i.ex更多选票的帖子。 10.我现在有这样的代码:

主页: //帖子等待

$array = $wpdb->get_results("select post_id from $table where (user_recc_plus + visitor_recc_plus < 10)");

在$ array中我只有ID

然后我有:

    $args=array(
'post__not_in' => $array,
'cat'=>$catId,
'order'=>'desc'
);

此外,当我想显示等待帖子时,我使用:

$args=array(
'post__in' => $array,
'cat'=>$catId,
'order'=>'desc'
);

工作得非常好。我如何添加条件,如果post在$ array中但有meta_key glowna选中它应该显示。对于等待帖子我创建:

$args=array(
'post__in' => $array,
'cat'=>$catId,
'meta_key'=>'glowna',
'meta_value'=>'glowna',
'meta_compare'=>'NOT LIKE',
'order'=>'desc'
);

似乎正在运作

但是类别主页上的帖子怎么样?你能救我吗?

1 个答案:

答案 0 :(得分:0)

我这样做了:

获取所有尚未投票的帖子:

$posty_poczekalnia = $wpdb->get_results("select post_id from $tabela where (user_recc_plus + visitor_recc_plus < 1)");

获取所有已检查的帖子,以便在主

上显示
$args = array(
        'cat'=>$katId,
        'meta_key'=>'glowna',
        'meta_value'=>'glowna',
        'meta_compare'=>'LIKE'
    );

使用diff

$poczekalnia = array_diff($poczekalnia, $glowna);

并获得此帖子

$args=array(
'post__not_in' => $poczekalnia,
'cat'=>$katId,
'order'=>'desc',
'paged'=>$paged
);