我有两种自定义帖子类型......
BOOK和BOOK AUTHOR。
我想......
由作者在各自的AUTHOR PAGE上列出所有BOOK。
所以,如果我有史蒂芬金的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();
?>
答案 0 :(得分:0)
我做了类似的事,但......
这里的主要问题是,你如何对这些书进行分类?你为此创建了分类法吗?那些分类法实际上是作者的名字?我的意思是,你怎么把一本书归为某某作者?答案 1 :(得分: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”
你可以在循环中使用那些args。