下面的代码将首先迭代并显示ID为2、3和4的所有类别。第二个循环将显示每个类别中的所有帖子。
<?php
$_categories = get_categories( array(
\'orderby\' => \'order\',
\'order\' => \'ASC\',
\'include\' => array(2,3,4) // put the category IDs here
) );
// Loop to display each of the Category
foreach( $_categories as $_category ) :
$_posts = get_posts( array(
\'posts_per_page\' => 6,
\'category__in\' => array( $_category->term_id ),
\'ignore_sticky_posts\' => 1,
\'post_status\' => \'publish\'
) );
if( $_posts ) :
echo \'<section id="category-\'. intval($_category->term_id) .\'" class="category-block">\';
echo \'<h1 class="category-title">\'. esc_html($_category->name) .\'<h1>\';
echo \'<div class="category-articles">\';
// Loop to display posts of certain a category
foreach( $_posts as $post ) : setup_postdata( $post );
echo \'<article id="post-\'. get_the_ID() .\'" class="\'. join( \' \', get_post_class( \'\', get_the_ID() ) ) .\'">\';
echo \'<a href="\'. get_the_permalink() .\'" rel="bookmark">\'. get_the_title() .\'</a>\';
echo \'</article>\';
endforeach; wp_reset_postdata();
echo \'</div>\';
// A link to the Category archive
echo \'<a href="\'. get_category_link( $_category->term_id ) .\'" title="\'. sprintf( esc_attr__( "View all posts in %s" ), $_category->name ) .\'"></a>\';
echo \'</section>\';
endif;
endforeach;
如果你想坚持WordPress的默认标准,那么做一个
Page Template 或a
Shortcode 使用上面的代码并将WordPress页面设置为首页
Settings » Reading 在管理端,使用页面模板或短代码让代码在首页上运行。
如果要设置static front page, 创建front-page.php
在您的子主题中,并在该页面中添加上面的代码,使其在您的首页上工作。
Remember<如果您正在更改主题,不要在216th上工作,您将在下一个版本上失去工作。制作child theme 并将您的更改放在那里。
get_posts
— WordPress Developer Resources