Make WordPress Core


Ignore:
Timestamp:
10/31/2008 10:47:07 PM (16 years ago)
Author:
azaozz
Message:

Preview for both drafts and published posts/pages

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-admin/page.php

    r9032 r9451  
    6868}
    6969
    70 if (isset($_POST['deletepost'])) {
    71 $action = "delete";
    72 }
     70if (isset($_POST['deletepost']))
     71    $action = "delete";
     72elseif ( isset($_POST['wp-preview']) && 'dopreview' == $_POST['wp-preview'] )
     73    $action = 'preview';
    7374
    7475switch($action) {
     
    173174    break;
    174175
     176case 'preview':
     177    check_admin_referer( 'autosave', 'autosavenonce' );
     178
     179    if ( empty($_POST['post_title']) )
     180        wp_die( __('Please enter a title before previewing this page.') );
     181
     182    $id = post_preview();
     183
     184    if ( is_wp_error($id) )
     185        wp_die( $id->get_error_message() );
     186
     187    if ( $_POST['post_status'] == 'publish'  ) {
     188        $nonce = wp_create_nonce('post_preview_' . $id);
     189        $url = site_url('?wp_preview=' . $id . '&preview_nonce=' . $nonce);
     190    } else {
     191        $url = site_url('?page_id=' . $id . '&preview=true');
     192    }
     193
     194    wp_redirect($url);
     195    exit();
     196    break;
     197
    175198default:
    176199    wp_redirect('edit-pages.php');
Note: See TracChangeset for help on using the changeset viewer.