1

有什么方法可以包含属于 982 类的任何子项的帖子,但排除仅属于 982 类的帖子?

<?php query_posts($query_string . '&cat=-282,-428,,-1046,-1103,-982'); ?>
4

1 回答 1

0

我首先要获取父类别的子 ID,将它们存储在列表中,然后将它们作为参数作为包含传入。

<?php

$cats = wp_list_categories('echo=0&title_li=&child_of=982');
$args = array(
    'cat' => array(
        '-282', 
        '-428',
        '-1046',
        '-1103',
        '-982'
    )
);

foreach($cats as $cat) {
    $args['cat'][] = $cat->id;
} 

$posts = query_posts( $args );

类似的东西。


您也可以采用非关联数组方法。

<?php

$cats = wp_list_categories('echo=0&title_li=&child_of=982');

$include_cats = "";

if(!empty($cats)) {
    foreach($cats as $cat) {
        $include_cats .= "," . $cat->id;
    } 
}

$posts = query_posts($query_string . '&cat=-282,-428,-1046,-1103,-982' . $include_cats );
于 2013-04-21T15:28:30.760 回答