我正在建立一个吉他课程网站,我有一个关于自定义帖子类型的问题。我正在创建一个;课程“;这将是我的主要博客/循环页面。我还想为“创建自定义帖子类型”;“安排”;这将是我安排和播放的视频/歌曲。
我将CPT UI用于名为“CPT”的自定义帖子类型;“安排”;我试图找出如何创建单独的循环-课程=主要帖子类型,安排=自定义帖子类型。
我有一个安排。具有如下循环的php模板:
$args = array(
\'post_type\' => array(\'post\', \'arrangements\'),
\'post_status\' => \'publish\',
);
$new_post_loop = new WP_Query($args);
if ($new_post_loop->have_posts()) :
while ($new_post_loop->have_posts()) :
$new_post_loop->the_post();
get_template_part(\'template-parts/content\', \'blog\');
endwhile;
the_posts_navigation();
else :
get_template_part(\'template-parts/content\', \'none\');
endif;
?>
然而,它吸收了我所有的课程以及自定义的帖子类型。知道我做错了什么吗?非常感谢。
最合适的回答,由SO网友:Tony Djukic 整理而成
您没有指定此项,但如果lessons
和你的arrangements
那么您必须使用默认的WordPressposts
对于课程。。。假设这样,下面是代码中发生的情况。
在第二行设置查询参数时($args
) 您指定希望posts
帖子类型和您的自定义arrangements
岗位类型。所以你两者都有。
简单的修复方法,只需将其用于$args
.
$args = array(
\'post_type\' => \'arrangements,
\'post_status\' => \'publish\',
);
您可以将其保留为一个数组,不会有任何伤害。。。
$args = array(
\'post_type\' => array(\'arrangements\'),
\'post_status\' => \'publish\',
);
尝试一下,看看你是否得到了想要的结果。