教育課程データベースでは、機関はカスタム分類法として使用されます。 1つの研究所に少なくとも50の投稿(コース)があるので、どのようにしてすべての関連する投稿に「研究所」分類法の説明を表示できますか...
仮定:
institute
は分類法ですcourse
はの用語ですcourse
が1つだけ割り当てられますもしそうなら、最も簡単な方法は get_the_terms()
を使うことです。分類法がinstitute
の場合は、次のようなことができます。
<?php
// globalize $post
global $post;
// Get the course for the current post
$post_courses = get_the_terms( $post->ID, 'institute' );
// Assuming only one course, get the first object of the array
$post_course = $post_courses[0];
// Get the course description
$course_description = $post_course->description;
// Output the course description
echo $course_description
?>
私の仮定が間違っているならば、それから私にコメントで知らせてください、そして私は答えを更新します。
編集
他の仮定は大丈夫ですが、私は「機関の説明」を示したいと思います。各ポストに割り当てられるコースは1つだけですが、各研究所には複数のコースがあります。研究所は分類学であり、研究所の名前はカテゴリーとして使用されます。
私があなたをフォローしているかどうか、まだ完全にはわかりません。 institute
とcourse
は階層的分類法だと言っていますか?もしそうなら、私の元々の仮定は正しくありません。 あなたのスキーマをもっと明確に説明できますか。
EDIT 2
この場合、オークランド大学の説明を表示したいと思います。この大学はまた他の多くの記事で使用されていますが。私の場合、各コースは投稿です。
さて、今、私たちはどこかに着いています! course
はカスタム投稿タイプであり、institute
はそのCPTのカスタム分類法です。これが正しければ、私の上記のコードは与えられた記事の用語説明を表示するべきです。
これが、カスタム分類法内の各用語(サービスタイプと呼ばれる)を説明付きで表示し、その下にすべてのカスタム投稿タイプ(サービス)を表示するために最近使用したコードです。
Service_typeに説明がない場合はdivを作成しないようにifステートメントを追加しました(したがって、大きな空白スペースはありません)。あなたはあなたの特定のカスタム分類法を示すためにそれを修正することができます。これで少なくとも始められます。分類法の範囲内で特定の用語を表示するためのページを他にもいくつか作成しました。詳細が必要な場合は、説明を書いてください。
<?php
//get all service_types (custom taxonomy) then display all posts in each term
$taxonomy = 'service_types';
$term_args=array(
'orderby' => 'menu_order',
'order' => 'DESC'
);
$terms = get_terms($taxonomy,$term_args);
if ($terms) {
foreach( $terms as $term ) {
$args=array(
'post_type' => 'services',
'service_types' => $term->name ,
'post_status' => 'publish',
'posts_per_page' => 50,
'caller_get_posts'=> 1
);
$my_query = null;
$my_query = new WP_Query($args);
if( $my_query->have_posts() ) { ?>
<div class="services"> <!--begin this type of service -->
<div class="description">
<h4><?php echo $term->name;?></h4>
<?php
$termDiscription = $term->description;
if($termDiscription != '') : ?>
<p><?php echo $termDiscription; ?></p>
<?php endif; ?>
</div> <!--.description -->
<?php
while ($my_query->have_posts()) : $my_query->the_post(); ?>
<!--begin this service -->
<div class="cpt service">
<h5><?php the_title(); ?></h5><!--title -->
<!--thumbnail -->
<span class="sthumb">
<a href="<?php the_permalink() ?>" title="<?php echo $term->name;?>"><?php the_post_thumbnail(); ?></a>
</span>
<!--#thumb -->
<?php the_excerpt(); ?>
</div><!--#cpt -->
<?php endwhile; ?>