0

我有两种自定义帖子类型……</p>

书籍和书籍作者。

我想……</p>

在其各自的作者页面上列出作者的所有书籍。

所以如果我有斯蒂芬金的 10 本书。我想在 STEPHEN KING 页面上列出所有(而且只有他的)。我很难弄清楚如何查询帖子来做到这一点。

有什么建议吗?如果有帮助,我正在使用高级自定义字段插件,但无法弄清楚如何查询和显示此帖子信息。

我目前使用以下代码来显示我的所有版本,但是如何在其特定作者页面上获取特定版本?

<?php
     $args=array(
     'post_type' => 'book',
     'post_status' => 'publish',
     'posts_per_page' => 12,
     'caller_get_posts'=> 1,
     'orderby'=> 'date',
     'order' => 'DESC'
     );
     $my_query = null;
     $my_query = new WP_Query($args);
     if( $my_query->have_posts() ) {
     echo '';
     $i = 0;
     while ($my_query->have_posts()) : $my_query->the_post();
     if($i % 6 == 0) { ?>
<div class="row">    
<?php
}
?>

<img src="<?php the_field('cover_image'); ?>" /><br />
<?php the_field('author_name'); ?><br />
<?php the_title(); ?><br />

</div>

<?php    
if($i % 6 == 0) { ?> 

<?php
}

$i++;
endwhile;
 } 
wp_reset_query();
?>
4

2 回答 2

0

这就是诀窍。然后您可以按类别查询。在这种情况下,类别必须与作者页面 slug 相同。您将使用该数据来查询帖子。

在我的情况下,我所做的是创建一个函数,一旦创建了作者页面,就会创建一个具有相同名称和 slug 的分类。所以你不需要手动创建这两个具有相同名称和 slug 的东西。就像是:

<?php$myposts = get_posts(array(    'showposts' => -1,     'post_type' => 'books',     'tax_query' => array(        array(        'taxonomy' => 'author_book',         'field' => 'slug',         'terms' => array(AUTHOR_SLUG));    )));

注意 AUTHOR_SLUG 可以是一个数组,例如“pete”、“paul”。

“author_book”只是分类学的蛞蝓。在你的情况下必须只是“category_cat”

您可以将这些参数与 yout 循环一起使用。

于 2014-02-06T03:45:17.720 回答
0

我做了类似的事情,但是...

这里的主要问题是,您如何对这些书进行分类?您是否为此创建了分类法?这些分类法实际上是作者的名字?我的意思是,你如何确定一本书属于某个作者?

于 2014-02-05T23:27:50.610 回答