получить категории, в которых была запись, и только что удалены из

У меня есть функция, связанная с крюком save_post. эта функция в основном связана с категориями, в которых находится сообщение. Моя функция делает следующее:

function post_save_hook($post_id){ $categories = get_the_category($post_id); foreach($categories as $category){ //Handle this category } } 

Скажем, у меня есть категория, названная featured , и публикация была опубликована под этой категорией. то тот же пост был отредактирован и удален из категории, и в этом случае моя функция не обнаружит этого изменения.

Поэтому я хочу знать, был ли этот пост в какой-то категории и удален из него.

save_post работает слишком поздно, чтобы делать то, что вы пытаетесь сделать. Этот крючок срабатывает после записи и связанных метаданных. Категория уже удалена в этот момент, и WordPress не ведет запись.

Вам нужно будет подключиться к процессу сохранения ранее, возможно, pre_post_update :

 add_action( 'pre_post_update', function($post_ID,$data) { var_dump($post_ID,$data); var_dump(get_the_category($post_ID)); die; }, 10,2 ); 

Очевидно, доказательство кода концепции.