Switch language

wpseek.com
A WordPress-centric search engine for devs and theme authors




_wp_post_revision_fields [ WordPress Function ]

_wp_post_revision_fields ( $post = null, $autosave = false )
Access:
  • private
Parameters:
  • (array) $post Optional a post array to be processed for insertion as a post revision.
  • (bool) $autosave optional Is the revision an autosave?
Uses:
Returns:
  • (array) Post array ready to be inserted as a post revision or array of fields that can be versioned.
Defined at:



Determines which fields of posts are to be saved in revisions.

Does two things. If passed a post array, it will return a post array ready to be inserted into the posts table as a post revision. Otherwise, returns an array whose keys are the post fields to be saved for post revisions.

Source


<?php
function _wp_post_revision_fields$post null$autosave false ) {
    static 
$fields false;

    if ( !
$fields ) {
        
// Allow these to be versioned
        
$fields = array(
            
'post_title' => __'Title' ),
            
'post_content' => __'Content' ),
            
'post_excerpt' => __'Excerpt' ),
        );

        
// Runs only once
        
$fields apply_filters'_wp_post_revision_fields'$fields );

        
// 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] );
    }

    if ( !
is_array($post) )
        return 
$fields;

    
$return = array();
    foreach ( 
array_intersectarray_keys$post ), array_keys$fields ) ) as $field )
        
$return[$field] = $post[$field];

    
$return['post_parent']   = $post['ID'];
    
$return['post_status']   = 'inherit';
    
$return['post_type']     = 'revision';
    
$return['post_name']     = $autosave "$post[ID]-autosave" "$post[ID]-revision";
    
$return['post_date']     = isset($post['post_modified']) ? $post['post_modified'] : '';
    
$return['post_date_gmt'] = isset($post['post_modified_gmt']) ? $post['post_modified_gmt'] : '';

    return 
$return;
}
?>

Examples [ wp-snippets.com ]

Google Arama Sonuçlarý

Dahasý ...

Kullanýcý Tartýþmalarý [ wordpress.org ]

- Bulunamadý -

Yeni bir konu yaz ...

0 User Note(s)

Henüz yok. Ýlk sen ol!

Yeni Ekle ...



HTML5 Powered with CSS3 / Styling, Performance & Integration, and Semantics