Создаю пост в wordpress, смотрю в базу данных и вижу что он создался
Но когда удаляю пост из wordpress, пост остается в базе и вызов команды get_posts() возвращает удаленные посты
Почему?
Потому, что они переносятся в статус удалено и хранятся там по умолчанию 30 дней, для удалять сразу надо указать в wp-config.php константу define( 'EMPTY_TRASH_DAYS', 0 );