global $post;
$cat1=get_cat_ID('test1');
$cat2=get_cat_ID('test2');
$myrecentposts = get_posts(array('post_not_in' => get_option('sticky_posts'), 'cat' => "-$cat1,-$cat2",'showposts' => 5));
$myrecentposts2 = get_posts(array('post_not_in' => get_option('sticky_posts'), 'cat' => "-$cat1,-$cat2"));
$myrecentpostscount = count($myrecentposts2);
echo $myrecentpostscount;
The value of the echo is 5 (the correct value should be 9). The only way I can get it to return the correct value for the post count is to change the $myrecentposts2 calculation as follows...
$myrecentposts2 = get_posts(array('post_not_in' => get_option('sticky_posts'), 'cat' => "-$cat1,-$cat2",'showposts' => 999));
The Wordpress codex says get_posts has a default posts_per_page value of 5.
To remove this limit use posts_per_page = -1.
To remove this limit you can use nopaging = true.
Look at the get_posts() documentation on Codex, you can see there's a parameter for number of posts you want to display:
The parameter is: 'posts_per_page'
Usage: 'posts_per_page'=> -1 // for removing the limit. This will fetch all the posts.
update: 'nopaging' => true ist the way to go with newer versions
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With