0

2 つのカスタム投稿タイプがあります…</p>

本と本の著者。

したい…</p>

それぞれの AUTHOR PAGE で、著者によるすべての本をリストします。

スティーブン・キングの本が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

それがコツです。そして、カテゴリ別にクエリを実行できます。この場合、カテゴリは著者ページのスラッグと同じスラッグでなければなりません。そのデータを使用して投稿をクエリします。

私の場合、作成者ページが作成されると、同じ名前とスラッグを持つ分類法が作成される関数を作成しました。したがって、同じ名前とスラッグでこれら 2 つのものを手動で作成する必要はありません。何かのようなもの:

<?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 に答える