これが可能かどうかはわかりませんが、私のタクソノミー.phpファイルを10個のカスタムタクソノミーすべてで同じように動作させようとしています。以下のコードは、私が必要とするとおりに機能します(つまり、URLの末尾が../inventory/yearmade/2017/
の場合、yearmade
分類用語が2017
であるすべての投稿がループされ、出力されます(または任意の年) URLの最後に入力します)。
しかし、私は現在、10個の異なるtaxonomy-[taxonomy]。phpファイルを作成する必要があります。 taxonomy => '___'
内の別の文字列(年式、メーカー、モデル、長さ、ビーム、エンジン、サイズ、馬力、ドライブ、トレーラー)。
用語の動的ロードに'terms' => '$queried_object->slug'
(8行目)を使用できました。分類のために同じことをする方法はありますか?
6行目で同じことを試しました:'taxonomy' => '$queried_object->slug'
が機能しません。
<?php
$queried_object = get_queried_object();
$query = new WP_Query( array(
'post_type' => "inventory",
'tax_query' => array(
array(
'taxonomy' => "yearmade',
'field' => "slug",
'terms' => "$queried_object->slug",
)
)
) );
while ( $query->have_posts() ) : $query->the_post(); ?>
<div>
<h2><?php the_title(); ?></h2>
<ul>
<li>Year: <?php the_terms( $post->ID, 'yearmade'); ?>
<li>Make: <?php the_terms( $post->ID, 'make'); ?>
<li>Model: <?php the_terms( $post->ID, 'model'); ?>
<li>Length: <?php the_terms( $post->ID, 'length'); ?>
<li>Beam: <?php the_terms( $post->ID, 'beam'); ?>
<li>Engine: <?php the_terms( $post->ID, 'engine'); ?>
<li>Size: <?php the_terms( $post->ID, 'size'); ?>
<li>Horsepower: <?php the_terms( $post->ID, 'horsepower'); ?>
<li>Drive: <?php the_terms( $post->ID, 'drive'); ?>
<li>Trailer: <?php the_terms( $post->ID, 'trailer'); ?>
</ul>
</div>
<?php endwhile; ?>
<?php wp_reset_query(); ?>
分類テンプレートでは、照会されるオブジェクトは WP_Term のインスタンスであり、そのフィールドの1つは、用語が由来する分類になります。
したがって、taxonomy.php
次のように:
$queried_object = get_queried_object () ;
$args = array (
'post_type' => 'inventory',
'tax_query' => array (
array (
'taxonomy' => $queried_object->taxonomy,
'field' => 'slug',
'terms' => $queried_object->slug,
),
),
) ;
$query = new WP_Query ($args) ;