问题描述
我有一个自定义帖子类型和一个自定义分类法(tab-manager-category)。帖子的主要类别是cat1,其子类别是subcat1。 在我的情况下,短代码应如下所示:[hk-serienausstattung tab-manager-category = cat1,subcat1]。如果我添加1分类法但不同时添加两个分类法(例如cat1,subcat1),则该代码有效。 如果我有2个标记为“ cat1”的帖子和一个子类别,并且尝试输入简码[hk-serienausstattung tab-manager-category = cat1],它也将不起作用。 目的是仅根据帖子的类别/子类别查看它们:
[hk-serienausstattung tab-manager-category = cat1,subcat1]
[hk-serienausstattung tab-manager-category = cat1,subcat2]
thx
add_shortcode( 'hk-serienausstattung','display_custom_post_type' );
function display_custom_post_type($atts){
$atts = shortcode_atts( array(
'tab-manager-category' => null
),$atts );
//If category is multiple: 8,9,3
$categories = explode(',',$atts['tab-manager-category']);
$args = array(
'post_type' => 'produkt-tabs','post_status' => 'publish','orderby' => 'title','order' => 'ASC','posts_per_page'=> -1,'tax_query' => array( array(
'taxonomy' => 'tab-manager-category','field' => 'name','operator' => 'AND','terms' => $categories
) )
);
$string = '';
$query = new WP_Query( $args );
if( $query->have_posts() ){
$string .= '<ul>';
while( $query->have_posts() ){
$query->the_post();
$string .= '<div>' . apply_filters( 'the_content',get_the_content() ) . '</div>';
$Meta = get_post_meta(get_the_id(),'');
}
$string .= '</ul>';
}
wp_reset_postdata();
return $string;
}
编辑: 以下是根据简码显示的$ categories变量:
[hk-serienausstattung tab-manager-category="cat1,subcat1"]
Array ( [0] => cat1 [1] => subcat1 )
[hk-serienausstattung tab-manager-category="cat1,subcat2"]
Array ( [0] => cat1 [1] => subcat2 )
[hk-serienausstattung tab-manager-category="cat1"]
Array ( [0] => cat1 )
[hk-serienausstattung tab-manager-category="subcat1"]
Array ( [0] => subcat1 )
[hk-serienausstattung tab-manager-category="subcat2"]
Array ( [0] => subcat2 )
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)