Intereting Posts
Лучшие настройки для MySQL для ускорения работы сайта? Retina JS не работает Могу ли я подключиться к регистрации пользователя * до того, как пользователь будет создан? Обновление сообщений, не работающих Показать пользователя своим паролем Какова наилучшая практика для переименования медиафайлов WordPress? Множественные модераторы комментариев и уведомления Выбор виджета не сохраняется Задайте отображаемое имя для имени и фамилии (phpmyadmin SQL Query) Пользовательская структура постоянной ссылки для удаленных страниц контента Случайные домашние фоновые изображения с заголовком Конфликт между возможностями и видимостью меню с пользовательскими типами сообщений WordPress на XAMPP по моей домашней сети После оплаты e-junkie отправьте сообщение http для регистрации пользователя автоматически? Ошибка , когда заголовок отключен для пользовательского типа сообщения

Как запустить функцию, когда сообщение редактируется или обновляется с помощью публикации post action?

Я хочу запустить функцию A () при публикации публикации и функции B (), когда одна и та же публикация будет отредактирована или обновлена.

Для этого я обнаружил действие publish_post, которое запускается всякий раз, когда публикуется сообщение, или если оно редактируется, а статус изменен для публикации.

Как я могу использовать это действие publish_post, чтобы узнать, что сообщение было отредактировано или обновлено, чтобы я мог запускать функцию B () ?

Вы можете добиться этого с помощью save_post.

Пример, похожий на код в кодексе

function run_my_function( $post_id ) { if ( wp_is_post_revision( $post_id ) ){ // if post udpated } else { //if is new post } } add_action( 'save_post', 'run_my_function' ); 

С помощью post_updated hook вы можете инициировать действие, когда сообщение обновляется. Он передает 3 параметра:

  • $post_ID (идентификатор сообщения),
  • $post_after (объект post после редактирования),
  • $post_before (объект сообщения перед редактированием)

Вот пример:

 <?php function check_values($post_ID, $post_after, $post_before){ echo 'Post ID:'; var_dump($post_ID); echo 'Post Object AFTER update:'; var_dump($post_after); echo 'Post Object BEFORE update:'; var_dump($post_before); } add_action( 'post_updated', 'check_values', 10, 3 ); //don't forget the last argument to allow all three arguments of the function ?> 

См. Ссылку Codex