WP_Query не выбирает записи добавленные через код.

У меня имеется кастомный тип записи, из json файла я добавляют туда посты с помощью следующего кода:

$file = file_get_contents('file.json');

	$file = json_decode($file, true);
	foreach( $file as $i => $key ){

		$post_id = wp_insert_post(  wp_slash( array(
			'post_title'    => sanitize_text_field( $i ),
			'post_status'   => 'publish',
			'post_type'     => 'region',
			'post_author'   => 1,
		) ) );
	}

Все отлично, до тех пор пока я не пытаюсь получить эти посты с помощью WP_Query(), в базе эти города есть, в админке если зайти в тип записи, там они тоже есть, но вот WP_Query не в какую не хочет выводить эти посты, проблема решается тем что нужно зайти в админке в каждый отдельный пост и нажать кнопку "Обновить", после этого обновленные посты появляются в выборке WP_Query(), подскажите пожалуйста, возможно кто то сталкивался с подобным и как это можно решить? Если загружается 1000 записей, можно сойти с ума заходить и каждый пост обновлять.

Заметки к вопросу:
stepan 2 года назад

Вопрос решили?

Hellion 2 года назад

Нет, так и не понял в чем проблема.

m0nclous 2 года назад

Проверил - у меня работает. Попробуйте это. Находит тестовый пост?

wp_insert_post(wp_slash( array(
	'post_title'    => sanitize_text_field( 'TEST' ),
	'post_status'   => 'publish',
	'post_type'     => 'region',
	'post_author'   => 1,
)));

var_dump((new WP_Query)->query(['post_type' => 'region']));
exit;