Wordpress打印最新帖子

时间:2017-04-24 14:30:14

标签: php arrays wordpress variables

我有一个静态页面,其中有10个容器位于index.php文件的不同位置,我想显示10个最新帖子。我想回复一下帖子的数据(标题,文字,缩略图,作者,时间):

       <div class="text">
         <?php
            echo '$textfrompost3';
         ?>   
    </div>

 <div class="title">
     <?php
        echo '$titlefrompost3';
     ?>   
    </div>

      ...
      ...

我的PHP文件:

<?php 
   // the query
   $the_query = new WP_Query( array(
     'category_name' => 'Allgemein',
      'posts_per_page' => 10,
       "orderby"        => "date",
         "order"          => "DESC"
   )); 

?>

<?php if ( $the_query->have_posts() ) : ?>
  <?php while ( $the_query->have_posts() ) : $the_query->the_post(); ?>



  // insert values into variables


  <?php endwhile; ?>
  <?php wp_reset_postdata(); ?>


<?php endif; ?>

提前致谢,感谢您提供的任何帮助。

1 个答案:

答案 0 :(得分:1)

我只需将WP_Query的号码替换为get_posts(),这将提供一系列帖子对象。

$latest_posts = get_posts( array(
    'category_name'  => 'Allgemein',
    'posts_per_page' => 10,
) );

我在上面的示例中删除了orderorderby。虽然您可能对要显示的帖子数量有不同的全局设置,但您不太可能修改默认排序。

文档:https://codex.wordpress.org/Template_Tags/get_posts

所以我想说我想输出第三篇文章的标题,我可以做以下几点:

// let's be sure we have a third post.
if ( isset( $latest_posts[2] ) ) { 
    echo $latest_posts[2]->post_title; // remember arrays have a zero-based index.
}