wp_publish_post

Публикует запись. Меняет её статус с future, draft и т.д. на publish. Запускает все хуки необходимые для смены статуса записи.

Хуки из функции:
edit_post
save_post
save_post_(post_type)
wp_insert_post
Возвращает

Ничего (null)

Использование

<?php wp_publish_post( $post_id ) ?>
$post_id(число) (обязательный)
Идентификатор (ID) записи.
По умолчанию: нет

Код из


wp-includes/post.php

WP 4.7.2

<?php
function wp_publish_post( $post ) {
	global $wpdb;

	if ( ! $post = get_post( $post ) )
		return;

	if ( 'publish' == $post->post_status )
		return;

	$wpdb->update( $wpdb->posts, array( 'post_status' => 'publish' ), array( 'ID' => $post->ID ) );

	clean_post_cache( $post->ID );

	$old_status = $post->post_status;
	$post->post_status = 'publish';
	wp_transition_post_status( 'publish', $old_status, $post );

	/** This action is documented in wp-includes/post.php */
	do_action( 'edit_post', $post->ID, $post );

	/** This action is documented in wp-includes/post.php */
	do_action( "save_post_{$post->post_type}", $post->ID, $post, true );

	/** This action is documented in wp-includes/post.php */
	do_action( 'save_post', $post->ID, $post, true );

	/** This action is documented in wp-includes/post.php */
	do_action( 'wp_insert_post', $post->ID, $post, true );
}