我注意到的第一件事是,您使用了一些模糊的WP循环标记
foreach( $myposts as $post ) : setup_postdata($post);
请使用标准标记循环WP\\U查询类
<?php $query = new WP_Query( $args ); ?>
<?php if ( $query->have_posts() ) : while ( $query->have_posts() ) : $query->the_post(); ?>
https://codex.wordpress.org/The_Loop
接下来,代码中的问题是,您甚至不尝试从某个类别获取帖子。如果您的分类法是标准类别,那么您将使用标准“cat”参数获得它:
$query = new WP_Query( array( \'cat\' => 4 ) );
https://codex.wordpress.org/Class_Reference/WP_Query#Category_Parameters
如果是自定义分类法,则需要使用分类法参数调用它:
$args = array(
\'post_type\' => \'post\',
\'tax_query\' => array(
array(
\'taxonomy\' => \'people\',
\'field\' => \'slug\',
\'terms\' => \'bob\',
),
),
);
$query = new WP_Query( $args );
https://codex.wordpress.org/Class_Reference/WP_Query#Taxonomy_Parameters