WP:如何从一个类别中获取一个帖子并显示它

时间:2013-02-08 19:24:27

标签: wordpress post categories

大家好! 好吧,我有这个代码,显示每个类别的一个帖子 但我需要只显示一个帖子,并需要设置类别的“名称” 我正在尝试这个:

    <?php 
$cat_args = array(
  'orderby' => 'name',
  'order' => 'ASC',
  'child_of' => 0
);

$categories =   get_categories($cat_args); 

foreach($categories as $category) { 
    echo '<dl>';
    echo '<dt> <a href="' . get_category_link( $category->name ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '>' . $category->name.'</a></dt>';

     $post_args = array(
      'numberposts' => 1,
      'category' => $category->term_id 
    );

    $posts = get_posts($post_args);

    foreach($posts as $post) {
    ?>
        <dd><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></dd>
                <div class="entry">
                            <?php the_content(); ?>
                        </div>
    <?php 
    } 
    echo '<dd class="view-all"> <a href="' . get_category_link( $category->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '>View all posts in ' . $category->name.'</a></dd>';
    echo '</dl>';
} 
?>

然后我搜索了手抄本,并没有找到按名称获取类别的方法,有人可以帮助我吗?

1 个答案:

答案 0 :(得分:1)

您要找的是get_cat_ID

$post_args更改为以下内容:

$post_args = array(
    'posts_per_page' => 1,
    'cat' => get_cat_ID( 'My Category Name' )
);

让我知道它是怎么回事。 :)