我使用下面的代码获取自定义分类术语下的所有页面,它显示了所有页面。我想要的是限制这一点,并且只说出在自定义分类法下发布的最后两页。
posts\\u per\\u page=1在此处不起作用并显示所有页面。
<?php
$post_type = \'page\';
// Get all the taxonomies for this post type
$taxonomies = get_object_taxonomies( (object) array( \'post_type\' => $post_type ) );
foreach( $taxonomies as $taxonomy ) :
// Gets every "category" (term) in this taxonomy to get the respective posts
$terms = get_terms( $taxonomy );
echo \'<div id="activities_categories">\';
foreach( $terms as $term ) :
$customposts = new WP_Query( "taxonomy=$taxonomy&term=$term->slug&posts_per_page=1" );
$customposts->set(\'posts_per_page\', 1);
if( $customposts->have_posts() ):
while( $customposts->have_posts() ) : $customposts->the_post();
echo \'<li>\';
echo \'<a href="\' . get_permalink() . \'">\' . get_the_title();
echo \'</a></li>\';
endwhile;
endif;
endforeach;
echo \'</div>\';
endforeach;
?>
谢谢编辑正确的代码以解决问题
<?php
$post_type = \'page\';
// Get all the taxonomies for this post type
$taxonomies = get_object_taxonomies($post_type); // names (default)
foreach( $taxonomies as $taxonomy ) :
// Gets every "category" (term) in this taxonomy to get the respective posts
$terms = get_terms( $taxonomy );
echo \'<ul>\';
foreach( $terms as $term ) :
$args = array(
\'showposts\' => 1,
\'tax_query\' => array(
array(
\'taxonomy\' => $taxonomy,
\'terms\' => $term->slug,
\'field\' => \'slug\'
)
)
);
$customposts = new WP_Query( $args );
if( $customposts->have_posts() ):
while( $customposts->have_posts() ) : $customposts->the_post();
echo \'<li>\';
echo \'<a href="\' . get_permalink() . \'">\' . get_the_title();
echo \'</a></li>\';
endwhile;
endif;
endforeach;
echo \'</ul>\';
endforeach;
?>