wp_save_post_revision_post_has_changed хук-фильтрWP 4.1.0

Filters whether a post has changed.

By default a revision is saved only if one of the revisioned fields has changed. This filter allows for additional checks to determine if there were changes.

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

add_filter( 'wp_save_post_revision_post_has_changed', 'wp_kama_save_post_revision_has_changed_filter', 10, 3 );

/**
 * Function for `wp_save_post_revision_post_has_changed` filter-hook.
 * 
 * @param bool    $post_has_changed Whether the post has changed.
 * @param WP_Post $latest_revision  The latest revision post object.
 * @param WP_Post $post             The post object.
 *
 * @return bool
 */
function wp_kama_save_post_revision_has_changed_filter( $post_has_changed, $latest_revision, $post ){

	// filter...
	return $post_has_changed;
}
$post_has_changed(true|false)
Whether the post has changed.
$latest_revision(WP_Post)
The latest revision post object.
$post(WP_Post)
The post object.

Список изменений

С версии 4.1.0 Введена.

Где вызывается хук

wp_save_post_revision()
wp_save_post_revision_post_has_changed
wp-includes/revision.php 182
$post_has_changed = (bool) apply_filters( 'wp_save_post_revision_post_has_changed', $post_has_changed, $latest_revision, $post );

Где используется хук в WordPress

wp-includes/class-wp-customize-manager.php 2943
add_filter( 'wp_save_post_revision_post_has_changed', array( $this, '_filter_revision_post_has_changed' ), 5, 3 );
wp-includes/class-wp-customize-manager.php 2985
remove_filter( 'wp_save_post_revision_post_has_changed', array( $this, '_filter_revision_post_has_changed' ) );