У меня есть собственный тип записи, в котором есть метаданные, которые нужно проверить, чтобы сохранить или обновить. Теперь я хотел бы знать, можно ли прервать создание или обновление сообщения, если проверка метаданных не удалась.
Чтобы дать простой контекст и исправить идею, скажем, в моем настраиваемом сообщении есть метабокс с двумя датами. вход, давайте назовем их date_start и date_end. Когда пользователь пытается опубликовать sh или обновить сообщение в бэкэнде, я хотел бы проверить эти метаданные, и если date_start> = date_end, процесс прерывается без фактического обновления или вставки сообщения в базу данных. Логика c, которую я пытаюсь достичь, будет выглядеть примерно так:
add_action( 'before_updating_post', check_metadata );
function check_metadata() {
if ( condition ) {
continue post save/update
} else {
abort post save/update // The post will not be saved/updated
}
}
Где 'before_updating_post' - это выдуманное имя для ловушки, которая позволяет мне прервать процесс обновления сообщения.
Я рассмотрел некоторые вопросы, связанные с перехватами после обновления, но не смог найти некоторые, которые позволяли бы прервать процесс, большинство из которых связаны с манипулированием данными перед сохранением.