Meta Query возвращает неверное количество сообщений

Я использую этот мета-запрос внутри категории:

$args = array( "posts_per_page" => 12, "post_type" => array( "event", "post" ), "post_status" => "publish", "category" => $tid, 'meta_query' => array( 'relation' => 'OR', array( 'key' => 'event_start', 'value' => date("Ymd H:i:s"), 'compare' => '>=', 'type' => 'DATE' ), array( 'key' => 'event_start', 'compare' => 'NOT EXISTS' ) ), array( 'key' => '_thumbnail_id', 'compare' => 'EXISTS' ), array( 'key' => 'foreign_language', 'value' => 0 ) ); $posts = get_posts( $args ); 

Он должен вернуть 12 сообщений, но вернуться только 11. Если я устанавливаю posts_per_page в 13, он возвращает 12.

В чем может быть проблема?

Solutions Collecting From Web of "Meta Query возвращает неверное количество сообщений"

$posts – это зарезервированные глобальные переменные, которые сохраняют значение из свойства $posts из основного запроса. Используя $posts в качестве локальной переменной, вы нарушаете основной запрос и глобальную переменную $posts . Это приводит к неожиданному выводу.

Вы должны использовать уникальные пользовательские переменные в качестве локальных переменных. Вы можете решить свою проблему, изменив

 $posts = get_posts( $args ); 

к чему-то вроде

 $posts_array = get_posts( $args );