Make WordPress Core

Changeset 44264


Ignore:
Timestamp:
12/17/2018 04:35:32 PM (8 years ago)
Author:
desrosj
Message:

Help/About: WordPress 5.0 About Page.

The About page describes all the great changes in WordPress 5.0.

Highlights:

  • Warn users of Gutenberg plugin of its deactivation upon 5.0 upgrade.
  • Added illustrations to the Four Freedoms page.
  • Include a link to wporg user’s plugin favorites as a way to display only the classic plugin as a suggestion for install.
  • Detail the Classic Editor plugin and the support timeline.

Props pixelverbieger, ocean90, karmatosed, pento, boemedia, lonelyvegan, sami.keijonen, TimothyBlynJacobs, xkon, afercia, laurelfulford, joostdevalk, ipstenu, matveb, joen, tinkerbelly, chanthaboune, kjellr, alexislloyd, melchoyce, mcsf, courtney0burton, Otto42, cathibosco, tobifjellner, helen, audrasjb, antpb, jjj, elrae, desrosj, azaozz, joemcgill, skithund, gziolo.

Merges [43913], [43921-43922], [43937-43938], [43946-43947], [43952-43953], [43967-43969] into trunk.

Fixes #45178.

Location:
trunk
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • trunk

  • trunk/src/wp-admin/about.php

    r43571 r44264  
    1717list( $display_version ) = explode( '-', get_bloginfo( 'version' ) );
    1818
     19wp_enqueue_style( 'wp-block-library' );
     20
    1921include( ABSPATH . 'wp-admin/admin-header.php' );
    2022?>
    … …  
    2224                <h1><?php printf( __( 'Welcome to WordPress&nbsp;%s' ), $display_version ); ?></h1>
    2325
    24                 <p class="about-text"><?php printf( __( 'Thank you for updating to the latest version! WordPress %s will smooth your design workflow and keep you safe from coding errors.' ), $display_version ); ?></p>
     26                <p class="about-text"><?php printf( __( 'Thank you for updating to the latest version! WordPress %s introduces a robust new content creation experience.' ), $display_version ); ?></p>
     27
     28                <?php
     29                if (
     30                        // Was the Gutenberg plugin installed before upgrading to 5.0.x?
     31                        get_option( 'upgrade_500_was_gutenberg_active' ) == '1' &&
     32                        current_user_can( 'activate_plugins' ) &&
     33                        // Has it not been reactivated since?
     34                        is_plugin_inactive( 'gutenberg/gutenberg.php' ) &&
     35                        // Is it still installed?
     36                        file_exists( WP_PLUGIN_DIR . '/gutenberg/gutenberg.php' )
     37                ) :
     38                        ?>
     39                        <div class="about-text" style="font-style:italic;">
     40                                <?php
     41                                printf(
     42                                        /* translators: 1: WordPress version, 2: HTML start tag of link, 3: HTML end tag of link */
     43                                        __( 'The Gutenberg plugin has been deactivated, as the features are now included in WordPress %1$s by default. If you&#8217;d like to continue to test the upcoming changes in the WordPress editing experience, please %2$sreactivate the Gutenberg plugin%3$s.' ),
     44                                        $display_version,
     45                                        '<a href="' . esc_url( self_admin_url( 'plugins.php?s=gutenberg&plugin_status=all' ) ) . '">',
     46                                        '</a>'
     47                                );
     48                                ?>
     49                        </div>
     50                <?php elseif ( ! file_exists( WP_PLUGIN_DIR . '/classic-editor/classic-editor.php' ) ) : ?>
     51                        <p class="about-text">
     52                                &#x2139; <a href="#classic-editor"><?php _e( 'Learn how to keep using the old editor.' ); ?></a>
     53                        </p>
     54                <?php endif; ?>
     55
    2556                <div class="wp-badge"><?php printf( __( 'Version %s' ), $display_version ); ?></div>
    2657
    … …  
    3465                <div class="feature-section one-col">
    3566                        <div class="col">
    36                                 <h2>
    37                                         <?php
    38                                                 printf(
    39                                                         /* translators: %s: party popper emoji */
    40                                                         __( 'Major Customizer Improvements, Code Error Checking, and More! %s' ),
    41                                                         '&#x1F389'
    42                                                 );
    43                                                 ?>
    44                                 </h2>
    45                                 <p><?php _e( 'Welcome to an improved Customizer workflow with design drafts, locking, scheduling, and preview links. What&#8217;s more, code syntax highlighting and error checking will make for a clean and smooth site building experience. Finally, if all that wasn&#8217;t pretty great, we&#8217;ve got a great new Gallery widget and improvements to theme browsing and switching.' ); ?></p>
    46                         </div>
    47                 </div>
    48 
    49                 <div class="inline-svg full-width">
     67                                <h2><?php _e( 'Say Hello to the New Editor' ); ?></h2>
     68                        </div>
     69                </div>
     70
     71                <div class="full-width">
    5072                        <picture>
    51                                 <source media="(max-width: 500px)" srcset="<?php echo 'https://s.w.org/images/core/4.9/banner-mobile.svg'; ?>">
    52                                 <img src="https://s.w.org/images/core/4.9/banner.svg" alt="">
     73                                <source type="image/webp" media="(max-width: 782px)" srcset="https://s.w.org/images/core/5.0/header/Gutenberg%20Mobile1x.webp 1x, https://s.w.org/images/core/5.0/header/Gutenberg%20Mobile.webp 2x" />
     74                                <source media="(max-width: 782px)" srcset="https://s.w.org/images/core/5.0/header/Gutenberg%20Mobile1x.jpg 1x, https://s.w.org/images/core/5.0/header/Gutenberg%20Mobile.jpg 2x" />
     75                                <source type="image/webp" srcset="https://s.w.org/images/core/5.0/header/Gutenberg1x.webp 1x, https://s.w.org/images/core/5.0/header/Gutenberg.webp 2x" />
     76                                <img src="https://s.w.org/images/core/5.0/header/Gutenberg1x.jpg" srcset="https://s.w.org/images/core/5.0/header/Gutenberg1x.jpg 1x, https://s.w.org/images/core/5.0/header/Gutenberg.jpg 2x" alt="">
    5377                        </picture>
    5478                </div>
    5579
    56                 <div class="floating-header-section">
    57                         <div class="section-header">
    58                                 <h2><?php _e( 'Customizer Workflow Improved' ); ?></h2>
    59                         </div>
    60 
    61                         <div class="section-content">
    62                                 <div class="section-item">
    63                                         <div class="inline-svg">
    64                                                 <img src="https://s.w.org/images/core/4.9/draft-and-schedule.svg" alt="">
    65                                         </div>
    66                                         <h3><?php _e( 'Draft and Schedule Site Design Customizations' ); ?></h3>
    67                                         <p><?php _e( 'Yes, you read that right. Just like you can draft and revise posts and schedule them to go live on the date and time you choose, you can now tinker with your site&#8217;s design and schedule those design changes to go live as you please.' ); ?></p>
     80                <div class="feature-section one-col">
     81                        <div class="col">
     82                                <p><?php _e( 'You&#8217;ve successfully upgraded to WordPress 5.0! We’ve made some big changes to the editor. Our new block-based editor is the first step toward an exciting new future with a streamlined editing experience across your site. You’ll have more flexibility with how content is displayed, whether you are building your first site, revamping your blog, or write code for a living.' ); ?></p>
     83                        </div>
     84                </div>
     85
     86                <div class="feature-section four-col">
     87                        <div class="col">
     88                                <figure>
     89                                        <picture>
     90                                                <source type="image/webp" srcset="https://s.w.org/images/core/5.0/features/Plugins1x.webp 1x, https://s.w.org/images/core/5.0/features/Plugins.webp 2x">
     91                                                <img src="https://s.w.org/images/core/5.0/features/Plugins1x.jpg" srcset="https://s.w.org/images/core/5.0/features/Plugins1x.jpg 1x, https://s.w.org/images/core/5.0/features/Plugins.jpg 2x" alt="" width="250" height="250" />
     92                                        </picture>
     93                                        <figcaption><?php _e( 'Do more with fewer plugins.' ); ?></figcaption>
     94                                </figure>
     95                        </div>
     96                        <div class="col">
     97                                <figure>
     98                                        <picture>
     99                                                <source type="image/webp" srcset="https://s.w.org/images/core/5.0/features/Layout1x.webp 1x, https://s.w.org/images/core/5.0/features/Layout.webp 2x">
     100                                                <img src="https://s.w.org/images/core/5.0/features/Layout1x.jpg" srcset="https://s.w.org/images/core/5.0/features/Layout1x.jpg 1x, https://s.w.org/images/core/5.0/features/Layout.jpg 2x" alt="" width="250" height="250" />
     101                                        </picture>
     102                                        <figcaption><?php _e( 'Create modern, multimedia-heavy layouts.' ); ?></figcaption>
     103                                </figure>
     104                        </div>
     105                        <div class="col">
     106                                <figure>
     107                                        <picture>
     108                                                <source type="image/webp" srcset="https://s.w.org/images/core/5.0/features/Responsive1x.webp 1x, https://s.w.org/images/core/5.0/features/Responsive.webp 2x">
     109                                                <img src="https://s.w.org/images/core/5.0/features/Responsive1x.jpg" srcset="https://s.w.org/images/core/5.0/features/Responsive1x.jpg 1x, https://s.w.org/images/core/5.0/features/Responsive.jpg 2x" alt="" width="250" height="250" />
     110                                        </picture>
     111                                        <figcaption><?php _e( 'Work across all screen sizes and devices.' ); ?></figcaption>
     112                                </figure>
     113                        </div>
     114                        <div class="col">
     115                                <figure>
     116                                        <picture>
     117                                                <source type="image/webp" srcset="https://s.w.org/images/core/5.0/features/Editor%20Styles1x.webp 1x, https://s.w.org/images/core/5.0/features/Editor%20Styles.webp 2x">
     118                                                <img src="https://s.w.org/images/core/5.0/features/Editor%20Styles1x.jpg" srcset="https://s.w.org/images/core/5.0/features/Editor%20Styles1x.jpg 1x, https://s.w.org/images/core/5.0/features/Editor%20Styles.jpg 2x" alt="" width="250" height="250" />
     119                                        </picture>
     120                                        <figcaption><?php _e( 'Trust that your editor looks like your website.' ); ?></figcaption>
     121                                </figure>
     122                        </div>
     123                </div>
     124
     125                <div class="feature-section one-col">
     126                        <div class="col">
     127                                <h2><?php _e( 'Building with Blocks' ); ?></h2>
     128                                <p><?php _e( 'The new block-based editor won&#8217;t change the way any of your content looks to your visitors. What it will do is let you insert any type of multimedia in a snap and rearrange to your heart&#8217;s content. Each piece of content will be in its own block; a distinct wrapper for easy maneuvering. If you&#8217;re more of an HTML and CSS sort of person, then the blocks won&#8217;t stand in your way. WordPress is here to simplify the process, not the outcome.' ); ?></p>
     129                                <video controls>
     130                                        <source src="https://s.w.org/images/core/5.0/videos/add-block.mp4" type="video/mp4">
     131                                        <source src="https://s.w.org/images/core/5.0/videos/add-block.webm" type="video/webm">
     132                                        <p><?php printf( __( 'Your browser doesn&#8217;t support HTML5 video. Here is a %1$slink to the video%2$s instead.' ), '<a href="https://wordpress.org/gutenberg/files/2018/11/add-block.mp4">', '</a>' ); ?></p>
     133                                </video>
     134                                <p><?php _e( 'We have tons of blocks available by default, and more get added by the community every day. Here are a few of the blocks to help you get started:' ); ?></p>
     135                        </div>
     136                </div>
     137
     138                <div class="feature-section eight-col">
     139                        <div class="col">
     140                                <figure>
     141                                        <picture>
     142                                                <source type="image/webp" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Paragraph@1x.webp 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Paragraph.webp 2x" />
     143                                                <img src="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Paragraph@1x.jpg" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Paragraph@1x.jpg 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Paragraph.jpg 2x" alt=""/>
     144                                        </picture>
     145                                        <figcaption><?php _e( 'Paragraph' ); ?></figcaption>
     146                                </figure>
     147                        </div>
     148                        <div class="col">
     149                                <figure>
     150                                        <picture>
     151                                                <source type="image/webp" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Heading@1x.webp 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Heading.webp 2x" />
     152                                                <img src="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Heading@1x.jpg" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Heading@1x.jpg 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Heading.jpg 2x" alt=""/>
     153                                        </picture>
     154                                        <figcaption><?php _e( 'Heading' ); ?></figcaption>
     155                                </figure>
     156                        </div>
     157                        <div class="col">
     158                                <figure>
     159                                        <picture>
     160                                                <source type="image/webp" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Preformatted@1x.webp 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Preformatted.webp 2x" />
     161                                                <img src="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Preformatted@1x.jpg" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Preformatted@1x.jpg 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Preformatted.jpg 2x" alt=""/>
     162                                        </picture>
     163                                        <figcaption><?php _e( 'Preformatted' ); ?></figcaption>
     164                                </figure>
     165                        </div>
     166                        <div class="col">
     167                                <figure>
     168                                        <picture>
     169                                                <source type="image/webp" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Quote@1x.webp 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Quote.webp 2x" />
     170                                                <img src="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Quote@1x.jpg" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Quote@1x.jpg 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Quote.jpg 2x" alt=""/>
     171                                        </picture>
     172                                        <figcaption><?php _e( 'Quote' ); ?></figcaption>
     173                                </figure>
     174                        </div>
     175                        <div class="col">
     176                                <figure>
     177                                        <picture>
     178                                                <source type="image/webp" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Image@1x.webp 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Image.webp 2x" />
     179                                                <img src="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Image@1x.jpg" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Image@1x.jpg 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Image.jpg 2x" alt=""/>
     180                                        </picture>
     181                                        <figcaption><?php _e( 'Image' ); ?></figcaption>
     182                                </figure>
     183                        </div>
     184                        <div class="col">
     185                                <figure>
     186                                        <picture>
     187                                                <source type="image/webp" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Gallery@1x.webp 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Gallery.webp 2x" />
     188                                                <img src="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Gallery@1x.jpg" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Gallery@1x.jpg 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Gallery.jpg 2x" alt=""/>
     189                                        </picture>
     190                                        <figcaption><?php _e( 'Gallery' ); ?></figcaption>
     191                                </figure>
     192                        </div>
     193                        <div class="col">
     194                                <figure>
     195                                        <picture>
     196                                                <source type="image/webp" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Cover%20Image@1x.webp 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Cover%20Image.webp 2x" />
     197                                                <img src="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Cover%20Image@1x.jpg" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Cover%20Image@1x.jpg 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Cover%20Image.jpg 2x" alt=""/>
     198                                        </picture>
     199                                        <figcaption><?php _e( 'Cover' ); ?></figcaption>
     200                                </figure>
     201                        </div>
     202                        <div class="col">
     203                                <figure>
     204                                        <picture>
     205                                                <source type="image/webp" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Video@1x.webp 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Video.webp 2x" />
     206                                                <img src="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Video@1x.jpg" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Video@1x.jpg 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Video.jpg 2x" alt=""/>
     207                                        </picture>
     208                                        <figcaption><?php _e( 'Video' ); ?></figcaption>
     209                                </figure>
     210                        </div>
     211                        <div class="col">
     212                                <figure>
     213                                        <picture>
     214                                                <source type="image/webp" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Audio@1x.webp 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Audio.webp 2x" />
     215                                                <img src="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Audio@1x.jpg" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Audio@1x.jpg 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Audio.jpg 2x" alt=""/>
     216                                        </picture>
     217                                        <figcaption><?php _e( 'Audio' ); ?></figcaption>
     218                                </figure>
     219                        </div>
     220                        <div class="col">
     221                                <figure>
     222                                        <picture>
     223                                                <source type="image/webp" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Column@1x.webp 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Column.webp 2x" />
     224                                                <img src="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Column@1x.jpg" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Column@1x.jpg 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Column.jpg 2x" alt=""/>
     225                                        </picture>
     226                                        <figcaption><?php _e( 'Columns' ); ?></figcaption>
     227                                </figure>
     228                        </div>
     229                        <div class="col">
     230                                <figure>
     231                                        <picture>
     232                                                <source type="image/webp" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20File@1x.webp 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20File.webp 2x" />
     233                                                <img src="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20File@1x.jpg" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20File@1x.jpg 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20File.jpg 2x" alt=""/>
     234                                        </picture>
     235                                        <figcaption><?php _e( 'File' ); ?></figcaption>
     236                                </figure>
     237                        </div>
     238                        <div class="col">
     239                                <figure>
     240                                        <picture>
     241                                                <source type="image/webp" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Code@1x.webp 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Code.webp 2x" />
     242                                                <img src="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Code@1x.jpg" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Code@1x.jpg 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Code.jpg 2x" alt=""/>
     243                                        </picture>
     244                                        <figcaption><?php _e( 'Code' ); ?></figcaption>
     245                                </figure>
     246                        </div>
     247                        <div class="col">
     248                                <figure>
     249                                        <picture>
     250                                                <source type="image/webp" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20List@1x.webp 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20List.webp 2x" />
     251                                                <img src="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20List@1x.jpg" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20List@1x.jpg 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20List.jpg 2x" alt=""/>
     252                                        </picture>
     253                                        <figcaption><?php _e( 'List' ); ?></figcaption>
     254                                </figure>
     255                        </div>
     256                        <div class="col">
     257                                <figure>
     258                                        <picture>
     259                                                <source type="image/webp" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Button@1x.webp 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Button.webp 2x" />
     260                                                <img src="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Button@1x.jpg" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Button@1x.jpg 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Button.jpg 2x" alt=""/>
     261                                        </picture>
     262                                        <figcaption><?php _e( 'Button' ); ?></figcaption>
     263                                </figure>
     264                        </div>
     265                        <div class="col">
     266                                <figure>
     267                                        <picture>
     268                                                <source type="image/webp" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Embeds@1x.webp 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Embeds.webp 2x" />
     269                                                <img src="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Embeds@1x.jpg" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Embeds@1x.jpg 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20Embeds.jpg 2x" alt=""/>
     270                                        </picture>
     271                                        <figcaption><?php _e( 'Embeds' ); ?></figcaption>
     272                                </figure>
     273                        </div>
     274                        <div class="col">
     275                                <figure>
     276                                        <picture>
     277                                                <source type="image/webp" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20More@1x.webp 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20More.webp 2x" />
     278                                                <img src="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20More@1x.jpg" srcset="https://s.w.org/images/core/5.0/blocks/Block%20Icon%20More@1x.jpg 1x, https://s.w.org/images/core/5.0/blocks/Block%20Icon%20More.jpg 2x" alt=""/>
     279                                        </picture>
     280                                        <figcaption><?php _e( 'More' ); ?></figcaption>
     281                                </figure>
     282                        </div>
     283                </div>
     284
     285                <div class="feature-section one-col">
     286                        <div class="col">
     287                                <h2><?php _e( 'Freedom to Build, Freedom to Write' ); ?></h2>
     288                                <p><?php _e( 'This new editing experience provides a more consistent treatment of design as well as content. If you&#8217;re building client sites, you can create reusable blocks. This lets your clients add new content anytime, while still maintaining a consistent look and feel.' ); ?></p>
     289                                <video controls>
     290                                        <source src="https://s.w.org/images/core/5.0/videos/build.mp4" type="video/mp4">
     291                                        <source src="https://s.w.org/images/core/5.0/videos/build.webm" type="video/webm">
     292                                        <p><?php printf( __( 'Your browser doesn&#8217;t support HTML5 video. Here is a %1$slink to the video%2$s instead.' ), '<a href="https://wordpress.org/gutenberg/files/2018/11/build.mp4">', '</a>' ); ?></p>
     293                                </video>
     294                        </div>
     295                </div>
     296
     297                <?php if ( current_user_can( 'edit_posts' ) ) { ?>
     298                        <div class="feature-section one-col cta">
     299                                <div class="col">
     300                                        <a class="button button-primary button-hero" href="<?php echo esc_url( admin_url( 'post-new.php' ) ); ?>"><?php _e( 'Build your first post' ); ?></a>
    68301                                </div>
    69                                 <div class="section-item">
    70                                         <div class="inline-svg">
    71                                                 <img src="https://s.w.org/images/core/4.9/design-preview-links.svg" alt="">
    72                                         </div>
    73                                         <h3><?php _e( 'Collaborate with Design Preview Links' ); ?></h3>
    74                                         <p><?php _e( 'Need to get some feedback on proposed site design changes? WordPress 4.9 gives you a preview link you can send to your team and customers so that you can collect and integrate feedback before you schedule the changes to go live. Can we say collaboration&#43;&#43;?' ); ?></p>
     302                        </div>
     303                <?php } ?>
     304
     305
     306                <hr />
     307
     308                <div class="feature-section one-col">
     309                        <div class="col">
     310                                <h2><?php _e( 'A Stunning New Default Theme' ); ?></h2>
     311                        </div>
     312                </div>
     313
     314                <div class="full-width">
     315                        <figure>
     316                                <picture>
     317                                        <source type="image/webp" media="(max-width: 782px)" srcset="https://s.w.org/images/core/5.0/twenty%20nineteen/twenty-nineteen-mobile@1x.webp 1x, https://s.w.org/images/core/5.0/twenty%20nineteen/twenty-nineteen-mobile.webp 2x" />
     318                                        <source media="(max-width: 782px)" srcset="https://s.w.org/images/core/5.0/twenty%20nineteen/twenty-nineteen-mobile@1x.jpg 1x, https://s.w.org/images/core/5.0/twenty%20nineteen/twenty-nineteen-mobile.jpg 2x" />
     319                                        <source type="image/webp" srcset="https://s.w.org/images/core/5.0/twenty%20nineteen/twenty-nineteen@1x.webp 1x, https://s.w.org/images/core/5.0/twenty%20nineteen/twenty-nineteen.webp 2x" />
     320                                        <img src="https://s.w.org/images/core/5.0/twenty%20nineteen/twenty-nineteen@1x.jpg" srcset="https://s.w.org/images/core/5.0/twenty%20nineteen/twenty-nineteen@1x.jpg 1x, https://s.w.org/images/core/5.0/header/twenty-nineteen.jpg 2x" alt="">
     321                                </picture>
     322
     323                                <figcaption><?php _e( 'The front-end of Twenty Nineteen on the left, and how it looks in the editor on the right.' ); ?></figcaption>
     324                        </figure>
     325                </div>
     326
     327                <div class="feature-section one-col">
     328                        <div class="col">
     329                                <p><?php _e( 'Introducing Twenty Nineteen, a new default theme that shows off the power of the new editor.' ); ?></p>
     330                        </div>
     331                </div>
     332
     333                <div class="feature-section three-col">
     334                        <div class="col">
     335                                <picture>
     336                                        <source type="image/webp" srcset="https://s.w.org/images/core/5.0/twenty%20nineteen/block%20editor@1x.webp 1x, https://s.w.org/images/core/5.0/twenty%20nineteen/block%20editor.webp 2x" />
     337                                        <img src="https://s.w.org/images/core/5.0/twenty%20nineteen/block%20editor@1x.jpg" srcset="https://s.w.org/images/core/5.0/twenty%20nineteen/block%20editor@1x.jpg 1x, https://s.w.org/images/core/5.0/twenty%20nineteen/block%20editor.jpg 2x" alt="">
     338                                </picture>
     339                                <h3><?php _e( 'Designed for the block editor' ); ?></h3>
     340                                <p><?php _e( 'Twenty Nineteen features custom styles for the blocks available by default in 5.0. It makes extensive use of editor styles throughout the theme. That way, what you create in your content editor is what you see on the front of your site.' ); ?></p>
     341                        </div>
     342                        <div class="col">
     343                                <picture>
     344                                        <source type="image/webp" srcset="https://s.w.org/images/core/5.0/twenty%20nineteen/typography@1x.webp 1x, https://s.w.org/images/core/5.0/twenty%20nineteen/typography.webp 2x" />
     345                                        <img src="https://s.w.org/images/core/5.0/twenty%20nineteen/typography@1x.jpg" srcset="https://s.w.org/images/core/5.0/twenty%20nineteen/typography@1x.jpg 1x, https://s.w.org/images/core/5.0/twenty%20nineteen/typography.jpg 2x" alt="">
     346                                </picture>
     347                                <h3><?php _e( 'Simple, type-driven layout' ); ?></h3>
     348                                <p><?php _e( 'Featuring ample whitespace, and modern sans-serif headlines paired with classic serif body text, Twenty Nineteen is built to be beautiful on the go. It uses system fonts to increase loading speed. No more long waits on slow networks!' ); ?></p>
     349                        </div>
     350                        <div class="col">
     351                                <img src="https://s.w.org/images/core/5.0/twenty%20nineteen/twenty-nineteen-versatile.gif" alt="">
     352                                <h3><?php _e( 'Versatile design for all sites' ); ?></h3>
     353                                <p><?php _e( 'Twenty Nineteen is designed to work for a wide variety of use cases. Whether you’re running a photo blog, launching a new business, or supporting a non-profit, Twenty Nineteen is flexible enough to fit your needs.' ); ?></p>
     354                        </div>
     355                </div>
     356
     357                <?php if ( current_user_can( 'customize' ) ) { ?>
     358                        <div class="feature-section one-col cta">
     359                                <div class="col">
     360                                        <a class="button button-primary button-hero load-customize hide-if-no-customize" href="<?php echo esc_url( admin_url( 'customize.php?theme=twentynineteen' ) ); ?>"><?php _e( 'Give Twenty Nineteen a try' ); ?></a>
    75361                                </div>
    76                                 <div class="section-item">
    77                                         <div class="inline-svg">
    78                                                 <img src="https://s.w.org/images/core/4.9/locking.svg" alt="">
    79                                         </div>
    80                                         <h3><?php _e( 'Design Locking To Guard Your Changes' ); ?></h3>
    81                                         <p><?php _e( 'Ever encounter a scenario where two designers walk into a project and designer A overrides designer B&#8217;s beautiful changes? WordPress 4.9&#8217;s design lock feature (similar to post locking) secures your draft design so that no one can make changes to it or erase all your hard work.' ); ?></p>
     362                        </div>
     363                <?php } ?>
     364
     365                <hr />
     366
     367                <div class="under-the-hood feature-section">
     368                        <div class="col">
     369                                <h2><?php _e( 'Developer Happiness' ); ?></h2>
     370                        </div>
     371                </div>
     372
     373                <div class="under-the-hood feature-section three-col">
     374                        <div class="col">
     375                                <picture>
     376                                        <source type="image/webp" srcset="https://s.w.org/images/core/5.0/devs/Protect1x.webp 1x, https://s.w.org/images/core/5.0/devs/Protect.webp 2x" />
     377                                        <img src="https://s.w.org/images/core/5.0/devs/Protect1x.jpg" srcset="https://s.w.org/images/core/5.0/devs/Protect1x.jpg 1x, https://s.w.org/images/core/5.0/devs/Protect.jpg 2x" alt="">
     378                                </picture>
     379                                <h3><?php _e( 'Protect' ); ?></h3>
     380                                <p><?php _e( 'Blocks provide a comfortable way for users to change content directly, while also ensuring the content structure cannot be easily disturbed by accidental code edits. This allows the developer to control the output, building polished and semantic markup that is preserved through edits and not easily broken.' ); ?></p>
     381                        </div>
     382                        <div class="col">
     383                                <picture>
     384                                        <source type="image/webp" srcset="https://s.w.org/images/core/5.0/devs/Compose1x.webp 1x, https://s.w.org/images/core/5.0/devs/Compose.webp 2x" />
     385                                        <img src="https://s.w.org/images/core/5.0/devs/Compose1x.jpg" srcset="https://s.w.org/images/core/5.0/devs/Compose1x.jpg 1x, https://s.w.org/images/core/5.0/devs/Compose.jpg 2x" alt="">
     386                                </picture>
     387                                <h3><?php _e( 'Compose' ); ?></h3>
     388                                <p><?php _e( 'Take advantage of a wide collection of APIs and interface components to easily create blocks with intuitive controls for your clients. Utilizing these components not only speeds up development work but also provide a more consistent, usable, and accessible interface to all users.' ); ?></p>
     389                        </div>
     390                        <div class="col">
     391                                <picture>
     392                                        <source type="image/webp" srcset="https://s.w.org/images/core/5.0/devs/Create1x.webp 1x, https://s.w.org/images/core/5.0/devs/Create.webp 2x" />
     393                                        <img src="https://s.w.org/images/core/5.0/devs/Create1x.jpg" srcset="https://s.w.org/images/core/5.0/devs/Create1x.jpg 1x, https://s.w.org/images/core/5.0/devs/Create.jpg 2x" alt="">
     394                                </picture>
     395                                <h3><?php _e( 'Create' ); ?></h3>
     396                                <p><?php _e( 'The new block paradigm opens up a path of exploration and imagination when it comes to solving user needs. With the unified block insertion flow, it&#8217;s easier for your clients and customers to find and use blocks for all types of content. Developers can focus on executing their vision and providing rich editing experiences, rather than fussing with difficult APIs.' ); ?></p>
     397                        </div>
     398                </div>
     399
     400                <div class="under-the-hood feature-section one-col cta">
     401                        <div class="col">
     402                                <a class="button button-primary button-hero" href="<?php echo esc_url( 'https://wordpress.org/gutenberg/handbook/' ); ?>"><?php _e( 'Learn how to get started' ); ?></a>
     403                        </div>
     404                </div>
     405
     406                <hr />
     407
     408                <?php if ( ! file_exists( WP_PLUGIN_DIR . '/classic-editor/classic-editor.php' ) ) : ?>
     409                        <div class="feature-section one-col" id="classic-editor">
     410                                <div class="col">
     411                                        <h2><?php _e( 'Keep it Classic' ); ?></h2>
    82412                                </div>
    83                                 <div class="section-item">
    84                                         <div class="inline-svg">
    85                                                 <img src="https://s.w.org/images/core/4.9/prompt.svg" alt="">
    86                                         </div>
    87                                         <h3><?php _e( 'A Prompt to Protect Your Work' ); ?></h3>
    88                                         <p><?php _e( 'Were you lured away from your desk before you saved your new draft design? Fear not, when you return, WordPress 4.9 will politely ask whether or not you&#8217;d like to save your unsaved changes.' ); ?></p>
     413                        </div>
     414
     415                        <div class="full-width">
     416                                <picture>
     417                                        <source type="image/webp" media="(max-width: 782px)" srcset="https://s.w.org/images/core/5.0/classic/Classic%20Mobile1x.webp 1x, https://s.w.org/images/core/5.0/classic/Classic%20Mobile.webp 2x" />
     418                                        <source media="(max-width: 782px)" srcset="https://s.w.org/images/core/5.0/classic/Classic%20Mobile1x.jpg 1x, https://s.w.org/images/core/5.0/classic/Classic%20Mobile.jpg 2x" />
     419                                        <source type="image/webp" srcset="https://s.w.org/images/core/5.0/classic/Classic@1x.webp 1x, https://s.w.org/images/core/5.0/classic/Classic.webp 2x" />
     420                                        <img src="https://s.w.org/images/core/5.0/classic/Classic@1x.jpg" srcset="https://s.w.org/images/core/5.0/classic/Classic@1x.jpg 1x, https://s.w.org/images/core/5.0/header/Classic.jpg 2x" alt="">
     421                                </picture>
     422                        </div>
     423
     424                        <div class="feature-section one-col">
     425                                <div class="col">
     426                                        <p><?php _e( 'Prefer to stick with the familiar Classic Editor? No problem! Support for the Classic Editor plugin will remain in WordPress through 2021.' ); ?></p>
     427                                        <p><?php _e( 'The Classic Editor plugin restores the previous WordPress editor and the Edit Post screen. It lets you keep using plugins that extend it, add old-style meta boxes, or otherwise depend on the previous editor. To install, visit your plugins page and click the &#8220;Install Now&#8221; button next to &#8220;Classic Editor&#8221;. After the plugin finishes installing, click &#8220;Activate&#8221;. That’s it!' ); ?></p>
     428                                        <p><?php _e( 'Note to users of assistive technology: if you experience usability issues with the block editor, we recommend you continue to use the Classic Editor.' ); ?></p>
     429                                        <?php if ( current_user_can( 'install_plugins' ) ) { ?>
     430                                                <div class="col cta">
     431                                                        <a class="button button-primary button-hero" href="<?php echo esc_url( wp_nonce_url( self_admin_url( 'plugin-install.php?tab=favorites&user=wordpressdotorg&save=0' ), 'save_wporg_username_' . get_current_user_id() ) ); ?>"><?php _e( 'Install the Classic Editor' ); ?></a>
     432                                                </div>
     433                                        <?php } ?>
    89434                                </div>
    90435                        </div>
    91                 </div>
    92 
    93                 <div class="floating-header-section">
    94                         <div class="section-header">
    95                                 <h2><?php _e( 'Coding Enhancements' ); ?></h2>
    96                         </div>
    97 
    98                         <div class="section-content">
    99                                 <div class="section-item">
    100                                         <div class="inline-svg">
    101                                                 <img src="https://s.w.org/images/core/4.9/syntax-highlighting.svg" alt="">
    102                                         </div>
    103                                         <h3><?php _e( 'Syntax Highlighting and Error Checking? Yes, Please!' ); ?></h3>
    104                                         <p><?php _e( 'You&#8217;ve got a display problem but can&#8217;t quite figure out exactly what went wrong in the CSS you lovingly wrote. With syntax highlighting and error checking for CSS editing and the Custom HTML widget introduced in WordPress 4.8.1, you&#8217;ll pinpoint coding errors quickly. Practically guaranteed to help you scan code more easily and suss out and fix code errors quickly.' ); ?></p>
    105                                 </div>
    106                                 <div class="section-item">
    107                                         <div class="inline-svg">
    108                                                 <img src="https://s.w.org/images/core/4.9/sandbox.svg" alt="">
    109                                         </div>
    110                                         <h3><?php _e( 'Sandbox for Safety' ); ?></h3>
    111                                         <p><?php _e( 'The dreaded white screen. You&#8217;ll avoid it when working on themes and plugin code because WordPress 4.9 will warn you about saving an error. You&#8217;ll sleep better at night.' ); ?></p>
    112                                 </div>
    113                                 <div class="section-item">
    114                                         <div class="inline-svg">
    115                                                 <img src="https://s.w.org/images/core/4.9/warning.svg" alt="">
    116                                         </div>
    117                                         <h3><?php _e( 'Warning: Potential Danger Ahead!' ); ?></h3>
    118                                         <p><?php _e( 'When you edit themes and plugins directly, WordPress 4.9 will politely warn you that this is a dangerous practice. It will recommend that you backup your files before saving, so they don&#8217;t get overwritten by the next update. Take the safe route: your future self will thank you. Your team and customers will thank you.' ); ?></p>
    119                                 </div>
    120                         </div>
    121                 </div>
    122 
    123                 <div class="floating-header-section">
    124                         <div class="section-header">
    125                                 <h2><?php _e( 'Even More Widget Updates' ); ?></h2>
    126                         </div>
    127 
    128                         <div class="section-content">
    129                                 <div class="section-item">
    130                                         <div class="inline-svg">
    131                                                 <img src="https://s.w.org/images/core/4.9/gallery-widget.svg" alt="">
    132                                         </div>
    133                                         <h3><?php _e( 'The New Gallery Widget' ); ?></h3>
    134                                         <p><?php _e( 'An incremental improvement to the media changes hatched in WordPress 4.8, you can now add a gallery via widget. Yes!' ); ?></p>
    135                                 </div>
    136                                 <div class="section-item">
    137                                         <div class="inline-svg">
    138                                                 <img src="https://s.w.org/images/core/4.9/media-button.svg" alt="">
    139                                         </div>
    140                                         <h3><?php _e( 'Press a Button, Add Media' ); ?></h3>
    141                                         <p><?php _e( 'Want to add media to your text widget? Embed images, video, and audio directly into the widget along with your text, with our simple but useful Add Media button. Woo!' ); ?></p>
    142                                 </div>
    143                         </div>
    144                 </div>
    145 
    146                 <div class="floating-header-section">
    147                         <div class="section-header">
    148                                 <h2><?php _e( 'Site Building Improvements' ); ?></h2>
    149                         </div>
    150 
    151                         <div class="section-content">
    152                                 <div class="section-item">
    153                                         <div class="inline-svg">
    154                                                 <img src="https://s.w.org/images/core/4.9/theme-switching.svg" alt="">
    155                                         </div>
    156                                         <h3><?php _e( 'More Reliable Theme Switching' ); ?></h3>
    157                                         <p><?php _e( 'When you switch themes, widgets sometimes think they can just up and move location. Improvements in WordPress 4.9 offer more persistent menu and widget placement when you decide it&#8217;s time for a new theme. Additionally, you can preview installed themes or download, install, and preview new themes right. Nothing says handy like being able to preview before you deploy. ' ); ?></p>
    158                                 </div>
    159                                 <div class="section-item">
    160                                         <div class="inline-svg">
    161                                                 <img src="https://s.w.org/images/core/4.9/menu-flow.svg" alt="">
    162                                         </div>
    163                                         <h3><?php _e( 'Better Menu Instructions = Less Confusion' ); ?></h3>
    164                                         <p><?php _e( 'Were you confused by the steps to create a new menu? Perhaps no longer! We&#8217;ve ironed out the UX for a smoother menu creation process. Newly updated copy will guide you.' ); ?></p>
    165                                 </div>
    166                         </div>
    167                 </div>
    168 
    169                 <div class="inline-svg">
    170                         <picture>
    171                                 <source media="(max-width: 500px)" srcset="<?php echo 'https://s.w.org/images/core/4.9/gutenberg-mobile.svg'; ?>">
    172                                 <img src="https://s.w.org/images/core/4.9/gutenberg.svg" alt="">
    173                         </picture>
    174                 </div>
    175 
    176                 <div class="feature-section">
    177                         <h2>
    178                                 <?php
    179                                         printf(
    180                                                 /* translators: %s: handshake emoji */
    181                                                 __( 'Lend a Hand with Gutenberg %s' ),
    182                                                 '&#x1F91D'
    183                                         );
    184                                         ?>
    185                         </h2>
    186                         <p>
    187                         <?php
    188                         printf(
    189                                 __( 'WordPress is working on a new way to create and control your content and we&#8217;d love to have your help. Interested in being an <a href="%1$s">early tester</a> or getting involved with the Gutenberg project? <a href="%2$s">Contribute on GitHub</a>.' ),
    190                                 __( 'https://wordpress.org/plugins/gutenberg/' ),
    191                                 'https://github.com/WordPress/gutenberg'
    192                         );
    193                         ?>
    194                                 </p>
    195                 </div>
    196 
    197                 <hr />
    198 
    199                 <div class="changelog">
    200                         <h2>
    201                         <?php
    202                                 printf(
    203                                         /* translators: %s: smiling face with smiling eyes emoji */
    204                                         __( 'Developer Happiness %s' ),
    205                                         '&#x1F60A'
    206                                 );
    207                                 ?>
    208                         </h2>
    209 
    210                         <div class="under-the-hood two-col">
    211                                 <div class="col">
    212                                         <h3><a href="https://make.wordpress.org/core/2017/11/01/improvements-to-the-customize-js-api-in-4-9/"><?php _e( 'Customizer JS API Improvements' ); ?></a></h3>
    213                                         <p>
    214                                         <?php
    215                                                 printf(
    216                                                         /* translators: %s: https://make.wordpress.org/core/2017/11/01/improvements-to-the-customize-js-api-in-4-9/  */
    217                                                         __( 'We&#8217;ve made numerous improvements to the Customizer JS API in WordPress 4.9, eliminating many pain points and making it just as easy to work with as the PHP API. There are also new base control templates, a date/time control, and section/panel/global notifications to name a few. <a href="%s">Check out the full list.</a>' ),
    218                                                         'https://make.wordpress.org/core/2017/11/01/improvements-to-the-customize-js-api-in-4-9/'
    219                                                 );
    220                                                 ?>
    221                                         </p>
    222                                 </div>
    223                                 <div class="col">
    224                                         <h3><a href="https://make.wordpress.org/core/2017/10/22/code-editing-improvements-in-wordpress-4-9/"><?php _e( 'CodeMirror available for use in your themes and plugins' ); ?></a></h3>
    225                                         <p><?php _e( 'We&#8217;ve introduced a new code editing library, CodeMirror, for use within core. Use it to improve any code writing or editing experiences within your plugins, like CSS or JavaScript include fields.' ); ?></p>
    226                                 </div>
    227                                 <div class="col">
    228                                         <h3><a href="https://make.wordpress.org/core/2017/10/30/mediaelement-upgrades-in-wordpress-4-9/"><?php _e( 'MediaElement.js upgraded to 4.2.6' ); ?></a></h3>
    229                                         <p><?php _e( 'WordPress 4.9 includes an upgraded version of MediaElement.js, which removes dependencies on jQuery, improves accessibility, modernizes the UI, and fixes many bugs.' ); ?></p>
    230                                 </div>
    231                                 <div class="col">
    232                                         <h3><a href="https://make.wordpress.org/core/2017/10/15/improvements-for-roles-and-capabilities-in-4-9/"><?php _e( 'Improvements to Roles and Capabilities' ); ?></a></h3>
    233                                         <p><?php _e( 'New capabilities have been introduced that allow granular management of plugins and translation files. In addition, the site switching process in multisite has been fine-tuned to update the available roles and capabilities in a more reliable and coherent way.' ); ?></p>
    234                                 </div>
    235                         </div>
    236                 </div>
    237 
    238                 <hr />
     436
     437                        <hr />
     438                <?php endif; ?>
    239439
    240440                <div class="return-to-dashboard">
  • trunk/src/wp-admin/credits.php

    r43032 r44264  
    2121<h1><?php printf( __( 'Welcome to WordPress %s' ), $display_version ); ?></h1>
    2222
    23 <p class="about-text"><?php printf( __( 'Thank you for updating to the latest version! WordPress %s will smooth your design workflow and keep you safe from coding errors.' ), $display_version ); ?></p>
     23<p class="about-text"><?php printf( __( 'Thank you for updating to the latest version! WordPress %s introduces a robust new content creation experience.' ), $display_version ); ?></p>
    2424
    2525<div class="wp-badge"><?php printf( __( 'Version %s' ), $display_version ); ?></div>
  • trunk/src/wp-admin/css/about.css

    r43309 r44264  
    4141        border: 0;
    4242        height: 0;
    43         margin: 0;
     43        margin: 3em 0 0;
    4444        border-top: 1px solid rgba(0, 0, 0, 0.1);
    4545}
    … …  
    4747.about-wrap img {
    4848        margin: 0;
    49         max-width: 100%;
     49        width: 100%;
    5050        height: auto;
    5151        vertical-align: middle;
     52}
     53
     54.about-wrap figure {
     55        position: relative;
     56        margin: 0;
     57}
     58
     59.about-wrap .feature-section figure img {
     60        margin-bottom: 0;
     61}
     62
     63.about-wrap figcaption {
     64        position: absolute;
     65        bottom: 0;
     66        width: 100%;
     67    padding: 40px 10px 15px;
     68    overflow: auto;
     69    box-sizing: border-box;
     70    background: linear-gradient(0deg,rgba(0,0,0,.7),rgba(0,0,0,.3) 60%,transparent);
     71    font-weight: 600;
     72    text-shadow: 0px 0px 5px rgba(0,0,0,.75);
    5273}
    5374
    … …  
    133154}
    134155
    135 .about-wrap .changelog h2 {
    136         font-size: 1.4em;
    137         font-weight: 600;
    138         text-align: left;
    139 }
    140 
    141 .about-wrap .changelog h3 {
    142         margin: 1.33em 0;
    143         font-size: 1em;
    144         line-height: inherit;
    145         color: #23282d;
    146 }
    147 
    148156.about-wrap code,
    149157.about-wrap ol li p {
    150158        font-size: 14px;
    151159        font-weight: 400;
     160}
     161
     162.about-wrap figcaption {
     163    font-size: 13px;
     164    text-align: center;
     165        color: white;
     166        text-overflow: ellipsis;
    152167}
    153168
    … …  
    162177.about-wrap .about-text {
    163178        margin: 1em 200px 1em 0;
    164         min-height: 60px;
    165179        color: #555d66;
    166180}
    … …  
    176190.about-wrap .feature-section.one-col {
    177191        margin: 0 auto;
    178         max-width: 700px;
     192        max-width: 680px;
    179193}
    180194
    … …  
    198212}
    199213
     214.about-wrap .three-col,
     215.about-wrap .four-col {
     216        margin: auto;
     217        max-width: 1020px;
     218}
     219
    200220.about-wrap .three-col .col {
    201221        align-self: flex-start;
    … …  
    204224}
    205225
     226.about-wrap .four-col .col {
     227        align-self: flex-start;
     228        min-width: 23%;
     229        max-width: 23%;
     230}
     231
     232.about-wrap .feature-section.eight-col .col {
     233        align-self: flex-start;
     234        margin-top: 6px;
     235        min-width: 12%;
     236        max-width: 12%;
     237}
     238
     239.about-wrap .one-col img {
     240        margin: 1em 0 2em;
     241}
     242
    206243.about-wrap .two-col img {
    207244        margin-bottom: 1.5em;
    … …  
    214251.about-wrap .feature-video .mejs-overlay-loading span {
    215252        background: transparent; /* Hide loading.gif */
     253}
     254
     255.about-wrap video {
     256        margin: 1.5em auto;
     257}
     258
     259.about-wrap .cta {
     260        text-align: center;
     261}
     262.about-wrap .cta .button {
     263        margin: 0 auto 5px;
     264        font-weight: 600;
    216265}
    217266
    … …  
    256305
    257306.about-wrap .two-col-text {
    258         -webkit-column-count: 2;
    259307        column-count: 2;
    260         -webkit-column-gap: 40px;
    261308        column-gap: 40px;
    262309}
    … …  
    269316.about-wrap .native-fonts p {
    270317        margin-bottom: 3em;
     318}
     319
     320.about-wrap .under-the-hood img + h3 {
     321        margin-top: 1.25em;
    271322}
    272323
    … …  
    297348.about-wrap .feature-section {
    298349        overflow: hidden;
    299         padding: 0 0 40px;
    300350}
    301351
    … …  
    306356.about-wrap .feature-section .media-container {
    307357        overflow: hidden;
    308 }
    309 
    310 .about-wrap .feature-section img {
    311         margin-bottom: 1em;
    312358}
    313359
    … …  
    347393        text-decoration: none;
    348394        padding: 0 5px;
    349 }
    350 
    351 /* 2.3 Floating Header Layout */
    352 
    353 .about-wrap .floating-header-section {
    354         display: -ms-grid;
    355         display: grid;
    356         grid-gap: 0 60px;
    357         -ms-grid-columns: 5fr 11fr;
    358         grid-template-columns: 5fr 11fr;
    359         max-width: 1020px;
    360         margin: 0 auto 120px;
    361 }
    362 
    363 .about-wrap .floating-header-section .section-header {
    364         -ms-grid-column: 1;
    365         grid-column: 1;
    366         position: relative;
    367         min-width: 230px;
    368         max-width: 300px;
    369 }
    370 
    371 .about-wrap .floating-header-section h2 {
    372         margin: 0;
    373         text-align: left;
    374         position: absolute;
    375 }
    376 
    377 .about-wrap .floating-header-section .section-content {
    378         -ms-grid-column: 2;
    379         grid-column: 2;
    380         display: flex;
    381         justify-content: space-between;
    382         align-items: flex-start;
    383         flex-flow: row wrap;
    384         flex-grow: 2;
    385         flex-shrink: 0;
    386 }
    387 
    388 .about-wrap .floating-header-section .section-item {
    389         flex-grow: 1;
    390         max-width: calc(50% - 30px);
    391 }
    392 
    393 .about-wrap .floating-header-section .section-item:nth-child(1),
    394 .about-wrap .floating-header-section .section-item:nth-child(2) {
    395         margin-bottom: 60px;
    396 }
    397 
    398 .about-wrap .floating-header-section .section-item:nth-child(1):nth-last-child(2),
    399 .about-wrap .floating-header-section .section-item:nth-child(2):nth-last-child(1) {
    400         margin-bottom: 0;
    401 }
    402 
    403 .about-wrap .floating-header-section.has-long-title {
    404         display: block;
    405 }
    406 
    407 .about-wrap .floating-header-section.has-long-title .section-header {
    408         max-width: 100%;
    409 }
    410 
    411 .about-wrap .floating-header-section.has-long-title h2 {
    412         position: static;
    413         margin-bottom: 60px;
    414 }
    415 
    416 .about-wrap .floating-header-section.has-long-title .section-content {
    417         justify-content: flex-start;
    418 }
    419 
    420 .about-wrap .floating-header-section.has-long-title .section-item {
    421         max-width: 300px;
    422         margin-bottom: 0;
    423 }
    424 
    425 .about-wrap .floating-header-section.has-long-title .section-item + .section-item {
    426         margin-left: 60px;
    427395}
    428396
    … …  
    514482}
    515483
     484.freedoms-php .about-wrap .col .freedoms-image {
     485        background-image: url('https://s.w.org/wp-content/themes/pub/wporg-main/images/freedoms-2x.png');
     486        background-size: 100%;
     487        padding-top: 100%;
     488}
     489.freedoms-php .about-wrap .col:nth-of-type(2) .freedoms-image {
     490        background-position: 0 34%;
     491}
     492.freedoms-php .about-wrap .col:nth-of-type(3) .freedoms-image {
     493        background-position: 0 66%;
     494}
     495.freedoms-php .about-wrap .col:nth-of-type(4) .freedoms-image {
     496        background-position: 0 100%;
     497}
     498
    516499/*------------------------------------------------------------------------------
    517500  4.0 - Media Queries
    … …  
    537520@media screen and (max-width: 782px) {
    538521        .about-wrap .two-col-text {
    539                 -webkit-column-count: 1;
    540522                column-count: 1;
    541523        }
    542524
    543525        .about-wrap .two-col .col,
    544         .about-wrap .three-col .col {
     526        .about-wrap .three-col .col,
     527        .about-wrap .four-col .col {
    545528                min-width: 48% !important;
    546529        }
    547530
    548         .about-wrap .three-col img {
     531        .about-wrap .eight-col .col {
     532                min-width: 24% !important;
     533        }
     534
     535        .about-wrap .three-col img,
     536        .about-wrap .four-col img,
     537        .about-wrap .eight-col img {
    549538                display: block;
    550539                margin: 0 auto;
     540        }
     541
     542        .about-wrap figcaption {
     543                position: relative;
     544                margin-top: 10px;
     545                margin-bottom: 15px;
     546                padding: 0;
     547                background: none;
     548                color: #40464D;
     549                text-shadow: none;
    551550        }
    552551
    … …  
    587586        }
    588587
     588        .about-wrap .feature-section .col {
     589                margin-top: 1em;
     590        }
     591
    589592        .about-wrap .two-col .col,
     593        .about-wrap .three-col .col,
    590594        .about-wrap .three-col .col {
    591595                min-width: 100% !important;
    592596        }
    593597
     598        .about-wrap .eight-col .col {
     599                min-width: 48% !important;
     600        }
     601
     602        .about-wrap .under-the-hood.four-col .col,
    594603        .about-wrap .under-the-hood.three-col .col,
    595604        .about-wrap .under-the-hood.two-col .col,
    … …  
    604613        }
    605614
    606         .about-wrap .under-the-hood:nth-of-type(2n) h3,
    607         .about-wrap .under-the-hood:nth-of-type(3n) h3 {
    608                 margin-top: 0;
     615        .about-wrap .under-the-hood img + h3 {
     616                margin-top: 1.25em;
    609617        }
    610618
  • trunk/src/wp-admin/freedoms.php

    r43569 r44264  
    3131<h1><?php printf( __( 'Welcome to WordPress %s' ), $display_version ); ?></h1>
    3232
    33 <p class="about-text"><?php printf( __( 'Thank you for updating to the latest version! WordPress %s will smooth your design workflow and keep you safe from coding errors.' ), $display_version ); ?></p>
     33<p class="about-text"><?php printf( __( 'Thank you for updating to the latest version! WordPress %s introduces a robust new content creation experience.' ), $display_version ); ?></p>
    3434
    3535<div class="wp-badge"><?php printf( __( 'Version %s' ), $display_version ); ?></div>
    … …  
    5454<?php else : ?>
    5555<div class="about-wrap-content">
    56         <p class="about-description"><?php printf( __( 'WordPress is Free and open source software, built by a distributed community of mostly volunteer developers from around the world. WordPress comes with some awesome, worldview-changing rights courtesy of its <a href="%s">license</a>, the GPL.' ), 'https://wordpress.org/about/license/' ); ?></p>
     56        <div class="feature-section one-col">
     57                <div class="col">
     58                        <h2><?php _e( 'Freedoms' ); ?></h2>
     59                        <p class="about-description"><?php printf( __( 'WordPress is Free and open source software, built by a distributed community of mostly volunteer developers from around the world. WordPress comes with some awesome, worldview-changing rights courtesy of its <a href="%s">license</a>, the GPL.' ), 'https://wordpress.org/about/license/' ); ?></p>
     60                </div>
     61        </div>
    5762
    58         <ol start="0">
    59                 <li><p><?php _e( 'You have the freedom to run the program, for any purpose.' ); ?></p></li>
    60                 <li><p><?php _e( 'You have access to the source code, the freedom to study how the program works, and the freedom to change it to make it do what you wish.' ); ?></p></li>
    61                 <li><p><?php _e( 'You have the freedom to redistribute copies of the original program so you can help your neighbor.' ); ?></p></li>
    62                 <li><p><?php _e( 'You have the freedom to distribute copies of your modified versions to others. By doing this you can give the whole community a chance to benefit from your changes.' ); ?></p></li>
    63         </ol>
     63        <div class="feature-section four-col">
     64                <div class="col">
     65                        <div class="freedoms-image"></div>
     66                        <h3><?php _e( 'The 1st Freedom' ); ?></h3>
     67                        <p><?php _e( 'To run the program for any purpose.' ); ?></p>
     68                </div>
     69                <div class="col">
     70                        <div class="freedoms-image"></div>
     71                        <h3><?php _e( 'The 2nd Freedom' ); ?></h3>
     72                        <p><?php _e( 'To study how the program works and change it to make it do what you wish.' ); ?></p>
     73                </div>
     74                <div class="col">
     75                        <div class="freedoms-image"></div>
     76                        <h3><?php _e( 'The 3rd Freedom' ); ?></h3>
     77                        <p><?php _e( 'To redistribute.' ); ?></p>
     78                </div>
     79                <div class="col">
     80                        <div class="freedoms-image"></div>
     81                        <h3><?php _e( 'The 4th Freedom' ); ?></h3>
     82                        <p><?php _e( 'To distribute copies of your modified versions to others.' ); ?></p>
     83                </div>
     84        </div>
    6485
    65         <p><?php printf( __( 'WordPress grows when people like you tell their friends about it, and the thousands of businesses and services that are built on and around WordPress share that fact with their users. We&#8217;re flattered every time someone spreads the good word, just make sure to <a href="%s">check out our trademark guidelines</a> first.' ), 'https://wordpressfoundation.org/trademark-policy/' ); ?></p>
     86        <div class="feature-section one-col">
     87                <div class="col">
     88                        <p><?php printf( __( 'WordPress grows when people like you tell their friends about it, and the thousands of businesses and services that are built on and around WordPress share that fact with their users. We&#8217;re flattered every time someone spreads the good word, just make sure to <a href="%s">check out our trademark guidelines</a> first.' ), 'https://wordpressfoundation.org/trademark-policy/' ); ?></p>
    6689
    67         <p>
    68         <?php
     90                        <p>
     91                        <?php
     92                                $plugins_url = current_user_can( 'activate_plugins' ) ? admin_url( 'plugins.php' ) : __( 'https://wordpress.org/plugins/' );
     93                                $themes_url  = current_user_can( 'switch_themes' ) ? admin_url( 'themes.php' ) : __( 'https://wordpress.org/themes/' );
    6994
    70         $plugins_url = current_user_can( 'activate_plugins' ) ? admin_url( 'plugins.php' ) : __( 'https://wordpress.org/plugins/' );
    71         $themes_url  = current_user_can( 'switch_themes' ) ? admin_url( 'themes.php' ) : __( 'https://wordpress.org/themes/' );
     95                                printf( __( 'Every plugin and theme in WordPress.org&#8217;s directory is 100%% GPL or a similarly free and compatible license, so you can feel safe finding <a href="%1$s">plugins</a> and <a href="%2$s">themes</a> there. If you get a plugin or theme from another source, make sure to <a href="%3$s">ask them if it&#8217;s GPL</a> first. If they don&#8217;t respect the WordPress license, we don&#8217;t recommend them.' ), $plugins_url, $themes_url, 'https://wordpress.org/about/license/' );
     96                        ?>
     97                        </p>
    7298
    73         printf( __( 'Every plugin and theme in WordPress.org&#8217;s directory is 100%% GPL or a similarly free and compatible license, so you can feel safe finding <a href="%1$s">plugins</a> and <a href="%2$s">themes</a> there. If you get a plugin or theme from another source, make sure to <a href="%3$s">ask them if it&#8217;s GPL</a> first. If they don&#8217;t respect the WordPress license, we don&#8217;t recommend them.' ), $plugins_url, $themes_url, 'https://wordpress.org/about/license/' );
    74         ?>
    75         </p>
    76 
    77         <p><?php _e( 'Don&#8217;t you wish all software came with these freedoms? So do we! For more information, check out the <a href="https://www.fsf.org/">Free Software Foundation</a>.' ); ?></p>
     99                        <p><?php _e( 'Don&#8217;t you wish all software came with these freedoms? So do we! For more information, check out the <a href="https://www.fsf.org/">Free Software Foundation</a>.' ); ?></p>
     100                </div>
     101        </div>
    78102</div>
    79103
  • trunk/src/wp-admin/includes/class-wp-plugin-install-list-table.php

    r43669 r44264  
    185185                                if ( isset( $_GET['_wpnonce'] ) && wp_verify_nonce( wp_unslash( $_GET['_wpnonce'] ), $action ) ) {
    186186                                        $user = isset( $_GET['user'] ) ? wp_unslash( $_GET['user'] ) : get_user_option( 'wporg_favorites' );
    187                                         update_user_meta( get_current_user_id(), 'wporg_favorites', $user );
     187
     188                                        // If the save url parameter is passed with a falsey value, don't save the favorite user.
     189                                        if ( ! isset( $_GET['save'] ) || $_GET['save'] ) {
     190                                                update_user_meta( get_current_user_id(), 'wporg_favorites', $user );
     191                                        }
    188192                                } else {
    189193                                        $user = get_user_option( 'wporg_favorites' );
  • trunk/src/wp-admin/includes/upgrade.php

    r44168 r44264  
    21072107                        return;
    21082108                }
     2109
     2110                $was_active = is_plugin_active( 'gutenberg/gutenberg.php' );
     2111                if ( $was_active ) {
     2112                        // FIXME: Leave until 501 or 510 to clean up.
     2113                        update_site_option( 'upgrade_500_was_gutenberg_active', '1' );
     2114                }
     2115
    21092116                deactivate_plugins( array( 'gutenberg/gutenberg.php' ), true );
    21102117        }
  • trunk/src/wp-includes/class-wp-block-parser.php

    r44261 r44264  
    6464
    6565        function __construct( $name, $attrs, $innerBlocks, $innerHTML, $innerContent ) {
    66                 $this->blockName    = $name;
    67                 $this->attrs        = $attrs;
    68                 $this->innerBlocks  = $innerBlocks;
    69                 $this->innerHTML    = $innerHTML;
     66                $this->blockName   = $name;
     67                $this->attrs       = $attrs;
     68                $this->innerBlocks = $innerBlocks;
     69                $this->innerHTML   = $innerHTML;
    7070                $this->innerContent = $innerContent;
    7171        }
    … …  
    270270                                if ( 0 === $stack_depth ) {
    271271                                        if ( isset( $leading_html_start ) ) {
    272                                                 $this->output[] = (array) self::freeform(
    273                                                         substr(
    274                                                                 $this->document,
    275                                                                 $leading_html_start,
    276                                                                 $start_offset - $leading_html_start
    277                                                         )
    278                                                 );
     272                                                $this->output[] = (array) self::freeform( substr(
     273                                                        $this->document,
     274                                                        $leading_html_start,
     275                                                        $start_offset - $leading_html_start
     276                                                ) );
    279277                                        }
    280278
    281279                                        $this->output[] = (array) new WP_Block_Parser_Block( $block_name, $attrs, array(), '', array() );
    282                                         $this->offset   = $start_offset + $token_length;
     280                                        $this->offset = $start_offset + $token_length;
    283281                                        return true;
    284282                                }
    … …  
    295293                        case 'block-opener':
    296294                                // track all newly-opened blocks on the stack
    297                                 array_push(
    298                                         $this->stack,
    299                                         new WP_Block_Parser_Frame(
    300                                                 new WP_Block_Parser_Block( $block_name, $attrs, array(), '', array() ),
    301                                                 $start_offset,
    302                                                 $token_length,
    303                                                 $start_offset + $token_length,
    304                                                 $leading_html_start
    305                                         )
    306                                 );
     295                                array_push( $this->stack, new WP_Block_Parser_Frame(
     296                                        new WP_Block_Parser_Block( $block_name, $attrs, array(), '', array() ),
     297                                        $start_offset,
     298                                        $token_length,
     299                                        $start_offset + $token_length,
     300                                        $leading_html_start
     301                                ) );
    307302                                $this->offset = $start_offset + $token_length;
    308303                                return true;
    … …  
    335330                                 * block and add it as a new innerBlock to the parent
    336331                                 */
    337                                 $stack_top                        = array_pop( $this->stack );
    338                                 $html                             = substr( $this->document, $stack_top->prev_offset, $start_offset - $stack_top->prev_offset );
    339                                 $stack_top->block->innerHTML     .= $html;
     332                                $stack_top = array_pop( $this->stack );
     333                                $html = substr( $this->document, $stack_top->prev_offset, $start_offset - $stack_top->prev_offset );
     334                                $stack_top->block->innerHTML .= $html;
    340335                                $stack_top->block->innerContent[] = $html;
    341                                 $stack_top->prev_offset           = $start_offset + $token_length;
     336                                $stack_top->prev_offset = $start_offset + $token_length;
    342337
    343338                                $this->add_inner_block(
    … …  
    391386                }
    392387
    393                 list( $match, $started_at ) = $matches[0];
     388                list( $match, $started_at ) = $matches[ 0 ];
    394389
    395390                $length    = strlen( $match );
    396                 $is_closer = isset( $matches['closer'] ) && -1 !== $matches['closer'][1];
    397                 $is_void   = isset( $matches['void'] ) && -1 !== $matches['void'][1];
    398                 $namespace = $matches['namespace'];
    399                 $namespace = ( isset( $namespace ) && -1 !== $namespace[1] ) ? $namespace[0] : 'core/';
    400                 $name      = $namespace . $matches['name'][0];
    401                 $has_attrs = isset( $matches['attrs'] ) && -1 !== $matches['attrs'][1];
     391                $is_closer = isset( $matches[ 'closer' ] ) && -1 !== $matches[ 'closer' ][ 1 ];
     392                $is_void   = isset( $matches[ 'void' ] ) && -1 !== $matches[ 'void' ][ 1 ];
     393                $namespace = $matches[ 'namespace' ];
     394                $namespace = ( isset( $namespace ) && -1 !== $namespace[ 1 ] ) ? $namespace[ 0 ] : 'core/';
     395                $name      = $namespace . $matches[ 'name' ][ 0 ];
     396                $has_attrs = isset( $matches[ 'attrs' ] ) && -1 !== $matches[ 'attrs' ][ 1 ];
    402397
    403398                /*
    … …  
    406401                 */
    407402                $attrs = $has_attrs
    408                         ? json_decode( $matches['attrs'][0], /* as-associative */ true )
     403                        ? json_decode( $matches[ 'attrs' ][ 0 ], /* as-associative */ true )
    409404                        : $this->empty_attrs;
    410405
    … …  
    471466         */
    472467        function add_inner_block( WP_Block_Parser_Block $block, $token_start, $token_length, $last_offset = null ) {
    473                 $parent                       = $this->stack[ count( $this->stack ) - 1 ];
     468                $parent = $this->stack[ count( $this->stack ) - 1 ];
    474469                $parent->block->innerBlocks[] = (array) $block;
    475                 $html                         = substr( $this->document, $parent->prev_offset, $token_start - $parent->prev_offset );
     470                $html = substr( $this->document, $parent->prev_offset, $token_start - $parent->prev_offset );
    476471
    477472                if ( ! empty( $html ) ) {
    478                         $parent->block->innerHTML     .= $html;
     473                        $parent->block->innerHTML .= $html;
    479474                        $parent->block->innerContent[] = $html;
    480475                }
    481476
    482477                $parent->block->innerContent[] = null;
    483                 $parent->prev_offset           = $last_offset ? $last_offset : $token_start + $token_length;
     478                $parent->prev_offset = $last_offset ? $last_offset : $token_start + $token_length;
    484479        }
    485480
    … …  
    500495
    501496                if ( ! empty( $html ) ) {
    502                         $stack_top->block->innerHTML     .= $html;
     497                        $stack_top->block->innerHTML .= $html;
    503498                        $stack_top->block->innerContent[] = $html;
    504499                }
    505500
    506501                if ( isset( $stack_top->leading_html_start ) ) {
    507                         $this->output[] = (array) self::freeform(
    508                                 substr(
    509                                         $this->document,
    510                                         $stack_top->leading_html_start,
    511                                         $stack_top->token_start - $stack_top->leading_html_start
    512                                 )
    513                         );
     502                        $this->output[] = (array) self::freeform( substr(
     503                                $this->document,
     504                                $stack_top->leading_html_start,
     505                                $stack_top->token_start - $stack_top->leading_html_start
     506                        ) );
    514507                }
    515508
Note: See TracChangeset for help on using the changeset viewer.