Alert: This function’s access is marked private. This means it is not intended for use by plugin or theme developers, only in other core functions. It is listed here for completeness.
_wp_post_revision_fields( array|WP_Post $post = array(), bool $deprecated = false )
Determines which fields of posts are to be saved in revisions.
Description Description
Parameters Parameters
Return Return
(array) Array of fields that can be versioned.
Source Source
File: wp-includes/revision.php
function _wp_post_revision_fields( $post = array(), $deprecated = false ) { static $fields = null; if ( ! is_array( $post ) ) { $post = get_post( $post, ARRAY_A ); } 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; }
Expand full source code Collapse full source code View on Trac
Changelog Changelog
Version | Description |
---|---|
4.5.0 | The optional $autosave parameter was deprecated and renamed to $deprecated . |
2.6.0 | Introduced. |
User Contributed Notes User Contributed Notes
You must log in before being able to contribute a note or feedback.
Using the function to get the list of revision fields:
Using the function to prepare a post for insertion into the database as a revision:
For an autosave: