_wp_post_revision_fields
Determines which fields of posts are to be saved in revisions.
Description
Returns (array)
Array of fields that can be versioned.
Parameters (2)
- 0. $post — Optional. (array) =>
array()
- A post array or a
WP_Post
object being processed for insertion as a post revision. Default empty array. - 1. $deprecated — Optional. (bool) =>
false
- The deprecated.
Usage
if ( !function_exists( '_wp_post_revision_fields' ) ) { require_once ABSPATH . WPINC . '/revision.php'; } // Optional. A post array or a WP_Post object being processed // for insertion as a post revision. Default empty array. $post = array(); // The deprecated. $deprecated = false; // NOTICE! Understand what this does before running. $result = _wp_post_revision_fields($post, $deprecated);
Defined (1)
The function is defined in the following location(s).
- /wp-includes/revision.php
- function _wp_post_revision_fields( $post = array(), $deprecated = false ) {
- static $fields = null;
- if ( ! is_array( $post ) ) {
- }
- if ( is_null( $fields ) ) {
- // Allow these to be versioned
- $fields = array(
- 'post_title' => __( 'Title' ),
- 'post_content' => __( 'Content' ),
- 'post_excerpt' => __( 'Excerpt' ),
- );
- }
- /**
- * Filters the list of fields saved in post revisions.
- *
- * Included by default: 'post_title', 'post_content' and 'post_excerpt'.
- *
- * Disallowed fields: 'ID', 'post_name', 'post_parent', 'post_date',
- * 'post_date_gmt', 'post_status', 'post_type', 'comment_count',
- * and 'post_author'.
- *
- * @since 2.6.0
- * @since 4.5.0 The `$post` parameter was added.
- *
- * @param array $fields List of fields to revision. Contains 'post_title',
- * 'post_content', and 'post_excerpt' by default.
- * @param array $post A post array being processed for insertion as a post revision.
- */
- $fields = apply_filters( '_wp_post_revision_fields', $fields, $post );
- // WP uses these internally either in versioning or elsewhere - they cannot be versioned
- foreach ( array( 'ID', 'post_name', 'post_parent', 'post_date', 'post_date_gmt', 'post_status', 'post_type', 'comment_count', 'post_author' ) as $protect ) {
- unset( $fields[ $protect ] );
- }
- return $fields;
- }