目录
首页 笔记 详情

WordPress的Get_Posts()函数详解


get_posts 函数,简单的来讲是 get_post 的复数新形势,但因为是文章多篇提取,所以使用方法上却略有不同,支持众多参数选择需要提取的文章,在 CMS 主题中经常被用到,当然如果你对 WordPress 有更深了解的话,你也有可能是用 WP_Query 来替代该函数,这就是后话了,今天主要介绍一下 get_posts 函数。

get_posts 函数详解

该函数属于 WordPress 的内置函数,用于在 WordPress 中提取多篇指定或随机文章。
越是描述简单的函数,使用起来就越是复杂,后面的需要仔细看咯!

<?php 
$args = array(
    'numberposts'     => 5,
    'offset'          => 0,
    'category'        => ,
    'orderby'         => 'post_date',
    'order'           => 'DESC',
    'include'         => ,
    'exclude'         => ,
    'meta_key'        => ,
    'meta_value'      => ,
    'post_type'       => 'post',
    'post_mime_type'  => ,
    'post_parent'     => ,
    'post_status'     => 'publish' );
$posts_array = get_posts( $args ); 
?>

现在我们再来看它的用法:

最初到现在的文章列表

如果在博客首页上只设置显示一篇文章,但同时希望在分类ID 1中显示最近五篇文章的链接,可使用如下代码:

 <ul>   
<?php   
global $post;   
$myposts = get_posts('numberposts=5&offset=1&category=1');   
foreach($myposts as $post) :   
?>      
   <li><a href="<?php the_permalink(); ?>">< ?php the_title(); ?></a>
</li>   
 <?php endforeach; ?>   
 </ul>

注意:使用offset时,以上查询仅适用于含有一篇以上文章的分类,否则无法输出。

获取所有文章资料

默认情况下get_posts无法获取一些文章相关数据,如通过 the_content()获取文章内容或序列ID。调用内部函数setup_postdata(),以$post 数组为其自变量,可以解决这一问题:

<?php   
$lastposts = get_posts('numberposts=3');   
foreach($lastposts as $post) :      
   setup_postdata($post);   
?>   
<h2><a href="<?php the_permalink(); ?>" id="post-<?php the_ID(); ?>">
<?php the_title(); ?></a></h2>   
<?php the_content(); ?>   
<?php endforeach; ?>

 


写笔记

咨询

您的电子邮箱地址不会被公开。 必填项已用*标注