Make WordPress Core

Ticket #53948: 53948.2.diff

File 53948.2.diff, 2.3 KB (added by sabernhardt, 2 years ago)

updated since note in option with a temporarily hidden link (53948-admin-bar.php.diff)

  • src/wp-includes/admin-bar.php

     
    728728 *
    729729 * @since 3.1.0
    730730 * @since 5.5.0 Added a "View Post" link on Comments screen for a single post.
     731 * @since 6.0.0 Added a placeholder for block editor to update "View Post" link when publishing post.
    731732 *
    732733 * @global WP_Term  $tag
    733734 * @global WP_Query $wp_the_query WordPress Query object.
     
    757758                }
    758759
    759760                if ( ( 'post' === $current_screen->base || 'edit-comments' === $current_screen->base )
    760                         && 'add' !== $current_screen->action
    761761                        && ( $post_type_object )
    762762                        && current_user_can( 'read_post', $post->ID )
    763763                        && ( $post_type_object->public )
    764764                        && ( $post_type_object->show_in_admin_bar ) ) {
    765                         if ( 'draft' === $post->post_status ) {
     765
     766                        if ( 'add' === $current_screen->action && use_block_editor_for_post( $post ) ) {
     767                                // Add a hidden placeholder when creating a new post with the block editor.
    766768                                $preview_link = get_preview_post_link( $post );
    767769                                $wp_admin_bar->add_node(
    768770                                        array(
    769                                                 'id'    => 'preview',
     771                                                'id'    => 'view',
    770772                                                'title' => $post_type_object->labels->view_item,
    771773                                                'href'  => esc_url( $preview_link ),
    772                                                 'meta'  => array( 'target' => 'wp-preview-' . $post->ID ),
     774                                                'meta'  => array( 'class' => 'hidden' ),
    773775                                        )
    774776                                );
    775                         } else {
    776                                 $wp_admin_bar->add_node(
    777                                         array(
    778                                                 'id'    => 'view',
    779                                                 'title' => $post_type_object->labels->view_item,
    780                                                 'href'  => get_permalink( $post->ID ),
    781                                         )
    782                                 );
     777                        } elseif ( 'add' !== $current_screen->action ) {
     778                                if ( 'draft' === $post->post_status ) {
     779                                        $preview_link = get_preview_post_link( $post );
     780                                        $wp_admin_bar->add_node(
     781                                                array(
     782                                                        'id'    => 'preview',
     783                                                        'title' => $post_type_object->labels->view_item,
     784                                                        'href'  => esc_url( $preview_link ),
     785                                                        'meta'  => array( 'target' => 'wp-preview-' . $post->ID ),
     786                                                )
     787                                        );
     788                                } else {
     789                                        $wp_admin_bar->add_node(
     790                                                array(
     791                                                        'id'    => 'view',
     792                                                        'title' => $post_type_object->labels->view_item,
     793                                                        'href'  => get_permalink( $post->ID ),
     794                                                )
     795                                        );
     796                                }
    783797                        }
    784798                } elseif ( 'edit' === $current_screen->base
    785799                        && ( $post_type_object )