WordPress.org

Make WordPress Core

Ticket #24139: 24139.diff

File 24139.diff, 2.1 KB (added by aaroncampbell, 9 months ago)
  • wp-admin/includes/post.php

     
    12131213                $locked = false; 
    12141214        } 
    12151215 
    1216         if ( $locked && ( $sendback = wp_get_referer() ) &&  
     1216        if ( $locked && ( $sendback = wp_get_referer() ) && 
    12171217                false === strpos( $sendback, 'post.php' ) && false === strpos( $sendback, 'post-new.php' ) ) { 
    12181218 
    12191219                $sendback_text = __('Go back'); 
     
    12351235        <?php 
    12361236 
    12371237        if ( $locked ) { 
    1238                 $preview_link = set_url_scheme( add_query_arg( 'preview', 'true', get_permalink( $post->ID ) ) ); 
     1238                if ( get_post_type_object( $post->post_type )->publicly_queryable ) { 
     1239                        $preview_link = set_url_scheme( add_query_arg( 'preview', 'true', get_permalink( $post->ID ) ) ); 
    12391240 
    1240                 if ( 'publish' == $post->post_status || $user->ID != $post->post_author ) { 
    1241                         // Latest content is in autosave 
    1242                         $nonce = wp_create_nonce( 'post_preview_' . $post->ID ); 
    1243                         $preview_link = add_query_arg( array( 'preview_id' => $post->ID, 'preview_nonce' => $nonce ), $preview_link ); 
     1241                        if ( 'publish' == $post->post_status || $user->ID != $post->post_author ) { 
     1242                                // Latest content is in autosave 
     1243                                $nonce = wp_create_nonce( 'post_preview_' . $post->ID ); 
     1244                                $preview_link = add_query_arg( array( 'preview_id' => $post->ID, 'preview_nonce' => $nonce ), $preview_link ); 
     1245                        } 
     1246 
     1247                } else { 
     1248                        $preview_link = ''; 
    12441249                } 
    1245  
    12461250                $preview_link = apply_filters( 'preview_post_link', $preview_link ); 
    12471251                $override = apply_filters( 'override_post_lock', true, $post, $user ); 
    12481252                $tab_last = $override ? '' : ' wp-tab-last'; 
     
    12541258                <?php do_action( 'post_lock_text', $post ); ?> 
    12551259                <p> 
    12561260                <a class="button" href="<?php echo esc_url( $sendback ); ?>"><?php echo $sendback_text; ?></a> 
     1261                <?php if ( ! empty( $preview_link ) ) { ?> 
    12571262                <a class="button<?php echo $tab_last; ?>" href="<?php echo esc_url( $preview_link ); ?>"><?php _e('Preview'); ?></a> 
    12581263                <?php 
     1264                } 
    12591265 
    12601266                // Allow plugins to prevent some users overriding the post lock 
    12611267                if ( $override ) {