ここで解決した質問が1つあります。 カスタム分類内の単一カテゴリからの投稿を表示する方法
今、私はこのコードをどうやって使うのかと思っています:
<?php
$args = array(
'posts_per_page' => 1,
'post_type' => 'inventory',
'tax_query' => array(
array(
'taxonomy' => 'inventory-category',
'field' => 'slug',
'terms' => array(
'bulk-racks'
)
)
)
);
query_posts( $args ); while ( have_posts() ): the_post();
// do stuff here
?>
<?php endwhile; ?>
これをショートコードで呼び出します。たとえば、これを使ってバルクラックカテゴリを表示するには[inventory-category = "bulk-racks"]
基本的なショートコードを作成する方法はわかっていますが、ショートコードのカテゴリ名の入力に基づいて投稿を返すような関数を書く方法がわかりません。
もう一度助けていただければ幸いです。
アイデアを得るために カテゴリ投稿ショートコード を見てください。ここにあなたの投稿タイプと分類法を呼び出すための小さな変更を加えたプラグインです:
// Taxonomy category shortcode
function cat_func($atts) {
extract(shortcode_atts(array(
'class_name' => 'cat-post',
'totalposts' => '-1',
'category' => '',
'thumbnail' => 'false',
'excerpt' => 'true',
'orderby' => 'post_date'
), $atts));
$output = '<div class="'.$class_name.'">';
global $post;
$args = array(
'posts_per_page' => $totalposts,
'orderby' => $orderby,
'post_type' => 'inventory',
'tax_query' => array(
array(
'taxonomy' => 'inventory-category',
'field' => 'slug',
'terms' => array( $category)
)
));
$myposts = NEW WP_Query($args);
while($myposts->have_posts()) {
$myposts->the_post();
$output .= '<div class="cat-post-list">';
if($thumbnail == 'true') {
$output .= '<div class="cat-post-images">'.get_the_post_thumbnail($post->ID, 'thumbnail').'</div>';
}
$output .= '<div class="cat-content"><span class="cat-post-title"><a href="'.get_permalink().'">'.get_the_title().'</a></span>';
if ($excerpt == 'true') {
$output .= '<span class="cat-post-excerpt">'.get_the_excerpt().'</span>';
}
$output .= '</div>
<div class="cat-clear"></div>
</div>';
};
$output .= '</div>';
wp_reset_query();
return $output;
}
add_shortcode('inventory-category', 'cat_func');
用法:
このショートコードをあなたの投稿やページに入れるだけです。
[inventory-category totalposts="3" category="bulk-racks" thumbnail="true" excerpt="true" ]