Switch language

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




post_preview [ WordPress Function ]

post_preview ( No parameters )
Uses:
Returns:
  • (str) URL to redirect to show the preview
Defined at:



Save draft or manually autosave for showing preview.

Source


<?php
function post_preview() {

    
$post_ID = (int) $_POST['post_ID'];
    
$status get_post_status$post_ID );
    if ( 
'auto-draft' == $status )
        
wp_die__('Preview not available. Please save as a draft first.') );

    if ( isset(
$_POST['catslist']) )
        
$_POST['post_category'] = explode(","$_POST['catslist']);

    if ( isset(
$_POST['tags_input']) )
        
$_POST['tags_input'] = explode(","$_POST['tags_input']);

    if ( 
$_POST['post_type'] == 'page' || empty($_POST['post_category']) )
        unset(
$_POST['post_category']);

    
$_POST['ID'] = $post_ID;
    
$post get_post($post_ID);

    if ( 
'page' == $post->post_type ) {
        if ( !
current_user_can('edit_page'$post_ID) )
            
wp_die(__('You are not allowed to edit this page.'));
    } else {
        if ( !
current_user_can('edit_post'$post_ID) )
            
wp_die(__('You are not allowed to edit this post.'));
    }

    if ( 
'draft' == $post->post_status ) {
        
$id edit_post();
    } else { 
// Non drafts are not overwritten. The autosave is stored in a special post revision.
        
$id wp_create_post_autosave$post->ID );
        if ( ! 
is_wp_error($id) )
            
$id $post->ID;
    }

    if ( 
is_wp_error($id) )
        
wp_die$id->get_error_message() );

    if ( 
$_POST['post_status'] == 'draft'  ) {
        
$url add_query_arg'preview''true'get_permalink($id) );
    } else {
        
$nonce wp_create_nonce('post_preview_' $id);
        
$url add_query_arg( array( 'preview' => 'true''preview_id' => $id'preview_nonce' => $nonce ), get_permalink($id) );
    }

    return 
$url;
}
?>

Examples [ wp-snippets.com ]

Top Google zoekresultaten

Meer ...

0 User Note(s)

Nog geen één. Wees de eerste!

Nieuw toevoegen ...



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