实际上,问题出在这段代码中,也就是说,如果我将id直接放在;“条款”;任何类似岗位类型;[arts-list 10]
, 然后,包含此id的此类帖子会在前端显示帖子,但如果我放置其他类似的内容terms => \'type\'
然后我试着显示一个特定类型的帖子,比如;[arts-list type=10]
, 前端没有显示帖子,实际上我想我必须传递shortcode的参数,但我怎么做,我无法调试这个,这就是我问你的原因。我希望你现在明白我的问题是什么。
function diwp_create_shortcode_arts_post_type(){
$atts = shortcode_atts( array(
\'type\' => \' \',
), $atts );
$args = array(
\'post_type\' => \'arts\',
\'posts_per_page\' => \'10\',
\'post_status\' => \'publish\',
\'tax_query\' => array( array(
\'taxonomy\' => \'Types\',
\'field\' => \'term_id\',
\'terms\' => \'10\',
) )
);
$query = new WP_Query($args);
if($query->have_posts()) :
while($query->have_posts()) :
$query->the_post() ;
$result .= \'<div class="art-item">\';
$result .= \'<div class="art-image">\' . get_the_post_thumbnail() . \'</div>\';
$result .= \'<div class="art-name">\' . get_the_title() . \'</div>\';
$result .= \'<div class="art-desc">\' . get_the_content() . \'</div>\';
$result .= \'</div>\';
endwhile;
wp_reset_postdata();
endif;
return $result;
}
add_shortcode( \'arts-list\', \'diwp_create_shortcode_arts_post_type\' );