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;
Значение эха равняется 5 (правильное значение должно быть 9). Единственным путем я могу добраться, это для возвращения правильного значения для количества сообщения должно изменить вычисление $myrecentposts2 следующим образом...
$myrecentposts2 = get_posts(array('post_not_in' => get_option('sticky_posts'), 'cat' => "-$cat1,-$cat2",'showposts' => 999));
WordPress Codex говорит Get_Posts
имеет по умолчанию post_per_preate
Значение 5
.
Чтобы удалить это предельное использование post_per_page = -1
.
Чтобы удалить этот предел, который вы можете использовать noPaging = True
.
Кроме того, Showposts устарели от WP 2.9 (или, может быть, даже 2.8), используйте Posts_Per_Page, когда вы пытаетесь контролировать количество постов, возвращенных.