@html_student
Молодой и глупый.

Как запустить transition_post_status?

Подскажите, есть функция
transition_post_status, на ней висит выполнение фукнкции.

add_action( 'transition_post_status', function ( $new_status, $old_status, $post ) {
  if ( in_array( $post->post_type, ['post', 'event'] ) && 'publish' === $new_status ) {
    delete_transient( self::$cache_filed );
  }
}, 10, 3 );


в предыдущем вопросе мне подсказали как проверку проводить в массиве на тип поста, но теперь вопрос такого плана.
как выполнить transition_post_status если пост уже опубликован? Если обновить, то получается срабатывает post_update?
но мне нужен именно transition_post_status, как его запустить для определенной статьи к примеру.
  • Вопрос задан
  • 41 просмотр
Пригласить эксперта
Ответы на вопрос 1
artzolin
@artzolin Куратор тега WordPress
php, WordPress разработка сайтов artzolin.ru
Для события сохранения записи вы можете использовать хук save_post, пример:

add_action( 'save_post', 'custom_save_post' );
function custom_save_post( $post_id ) {

	// добавляем стартовое кол-во просмотров для всех публикуемых страниц
	add_post_meta( $post_id, 'views', random_int(20, 50), true );
	
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы