Intereting Posts
Можно ли восстановить признанные изображения после экспорта / импорта WordPress Вставьте пользовательский идентификатор в wp_get_attachment_link Правила перезаписи URL для запроса нескольких таксономий Поиск пользователя с помощью WP_User_Query три боковых панели, показывающие без вызова Add_meta_box не отображается, но отображается в параметрах экрана Запросы Перечисляет пользовательские термины таксономии, которые имеют специфическое значение поля, присвоенное термину (не сообщению) Отображать только текущий номер страницы и другую пронумерованную страницу в разбивке на страницы Добавить класс в тег привязки в галерее HTML5 Какой файл wordpress управляет функциональными возможностями плагинов? Как установить post slug при использовании wp_insert_post () ;? получить значение от выбранного входа Может ли XMLRPC установить show_on_front / page_on_front? Обрезать изображение с полной шириной

Как заставить wp_transition_post_status работать?

Я хотел бы обновить post_status пользовательского типа сообщения, используя функцию AJAX (у меня все настроено на AJAX / callback). Я хотел бы использовать wp_transition_post_status чтобы я мог использовать крючки действия перехода статуса состояния .

в моей функции AJAX следующее не делает ничего:

 function my_ajax_update_post_status(){ $my_post_id = 1234; $my_post = get_post($my_post_id); wp_transition_post_status('new-status', 'old-status', $my_post); } 

… но ниже обновляется статус сообщения, но я не могу подключиться к ключу действия перехода статуса сообщения:

 function my_ajax_update_post_status(){ $my_post_id = 1234; $my_post = get_post($my_post_id); $update_my_post_status = array( 'ID' => $my_post_id, 'post_status' => 'new-status', ); wp_transition_post_status('new-status', 'old-status', $my_post); // If Iput this after changing the post type, shouldn't it then call post status transition action hooks? } 

EDIT: после повторного чтения документации wp_transition_post_status я заметил следующее:

Порядок слов в имени функции может быть запутанным – он не изменяет статус сообщений, он вызывает только действия, которые могут быть подключены разработчиками плагинов

Итак, после того, как я обновил свой статус сообщения через AJAX, я хотел бы перезвонить через статус статуса сообщения через что-то вроде:

 add_action('transition_post_status','wpse254422_transition_post_status',10,3); function wpse45803_transition_post_status($new_status,$old_status,$post){ if($new_status == 'new-status'){ //Do something }; }; 

Может кто-нибудь, пожалуйста, дайте мне знать, что я делаю неправильно?

Огромное спасибо заранее!