如何在wordpress中获取所有帖子ID

时间:2016-09-10 13:04:00

标签: php wordpress

我想在wordpress中发布所有已发布的帖子,我试过

<div class="pppp" style="display:none">
<?php $post_ids = get_posts(array(
    'fields'        => 'ids', // Only get post IDs
));
var_dump($post_ids);
?>
</div>

但仅返回5个最后发布的ID。

 array(5) {   [0]=>   int(35102)   [1]=>   int(35097)   [2]=>   int(35094)   [3]=>   int(33281)   [4]=>   int(33279) } 

我想知道如何获取我的wordpress网站的所有postids

1 个答案:

答案 0 :(得分:9)

参考:https://developer.wordpress.org/reference/functions/get_posts/#source

function get_posts( $args = null ) {
    $defaults = array(
        'numberposts' => 5,
        'category' => 0, 
        'orderby' => 'date',
        'order' => 'DESC', 
        'include' => array(),
        'exclude' => array(),
        'meta_key' => '',
        'meta_value' =>'',
        'post_type' => 'post',
        'suppress_filters' => true
    );
....
}

所以你应该在你的数组中添加一些东西,比如

get_posts(array(
    'fields'          => 'ids', // Only get post IDs
    'posts_per_page'  => -1
));

注意:&#39; numberposts&#39;和&#39; posts_per_page&#39;可以互换使用。