wp/wp-admin/about.php
changeset 7 cf61fcea0001
parent 5 5e2f62d02dcd
child 9 177826044cd9
--- a/wp/wp-admin/about.php	Tue Jun 09 11:14:17 2015 +0000
+++ b/wp/wp-admin/about.php	Mon Oct 14 17:39:30 2019 +0200
@@ -9,145 +9,478 @@
 /** WordPress Administration Bootstrap */
 require_once( dirname( __FILE__ ) . '/admin.php' );
 
-wp_enqueue_style( 'wp-mediaelement' );
-wp_enqueue_script( 'wp-mediaelement' );
-wp_localize_script( 'mediaelement', '_wpmejsSettings', array(
-	'pluginPath' => includes_url( 'js/mediaelement/', 'relative' ),
-	'pauseOtherPlayers' => ''
-) );
+wp_enqueue_script( 'underscore' );
 
-$title = __( 'About' );
+/* translators: Page title of the About WordPress page in the admin. */
+$title = _x( 'About', 'page title' );
 
-list( $display_version ) = explode( '-', $wp_version );
+list( $display_version ) = explode( '-', get_bloginfo( 'version' ) );
 
 include( ABSPATH . 'wp-admin/admin-header.php' );
 ?>
-<div class="wrap about-wrap">
+	<div class="wrap about-wrap full-width-layout">
+		<h1><?php printf( __( 'Welcome to WordPress&nbsp;%s' ), $display_version ); ?></h1>
+
+		<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>
+		<div class="wp-badge"><?php printf( __( 'Version %s' ), $display_version ); ?></div>
 
-<h1><?php printf( __( 'Welcome to WordPress&nbsp;%s' ), $display_version ); ?></h1>
+		<h2 class="nav-tab-wrapper wp-clearfix">
+			<a href="about.php" class="nav-tab nav-tab-active"><?php _e( 'What&#8217;s New' ); ?></a>
+			<a href="credits.php" class="nav-tab"><?php _e( 'Credits' ); ?></a>
+			<a href="freedoms.php" class="nav-tab"><?php _e( 'Freedoms' ); ?></a>
+			<a href="freedoms.php?privacy-notice" class="nav-tab"><?php _e( 'Privacy' ); ?></a>
+		</h2>
 
-<div class="about-text"><?php printf( __( 'Thank you for updating! WordPress %s helps you communicate and share, globally.' ), $display_version ); ?></div>
-
-<div class="wp-badge"><?php printf( __( 'Version %s' ), $display_version ); ?></div>
+		<div class="changelog point-releases">
+			<h3><?php _e( 'Maintenance and Security Releases' ); ?></h3>
+			<p>
+				<?php
+				printf(
+					/* translators: 1: WordPress version number, 2: plural number of bugs. */
+					_n(
+						'<strong>Version %1$s</strong> addressed %2$s bug.',
+						'<strong>Version %1$s</strong> addressed %2$s bugs.',
+						46
+					),
+					'4.9.8',
+					number_format_i18n( 46 )
+				);
 
-<h2 class="nav-tab-wrapper">
-	<a href="about.php" class="nav-tab nav-tab-active">
-		<?php _e( 'What&#8217;s New' ); ?>
-	</a><a href="credits.php" class="nav-tab">
-		<?php _e( 'Credits' ); ?>
-	</a><a href="freedoms.php" class="nav-tab">
-		<?php _e( 'Freedoms' ); ?>
-	</a>
-</h2>
+				printf(
+					/* translators: %s: Codex URL */
+					__( 'For more information, see <a href="%s">the release notes</a>.' ),
+					'https://codex.wordpress.org/Version_4.9.8'
+				);
+				?>
+			</p>
+			<p>
+				<?php
+				printf(
+					/* translators: 1: WordPress version number, 2: plural number of bugs. */
+					_n(
+						'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.',
+						'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.',
+						17
+					),
+					'4.9.7',
+					number_format_i18n( 17 )
+				);
+				?>
+				<?php
+				/* translators: %s: Codex URL */
+				printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'https://codex.wordpress.org/Version_4.9.7' );
+				?>
+			</p>
+			<p>
+				<?php
+				printf(
+					/* translators: 1: WordPress version number, 2: plural number of bugs. */
+					_n(
+						'<strong>Version %1$s</strong> addressed %2$s bug.',
+						'<strong>Version %1$s</strong> addressed %2$s bugs.',
+						18
+					),
+					'4.9.6',
+					number_format_i18n( 18 )
+				);
+				?>
+				<?php
+				/* translators: %s: Codex URL */
+				printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'https://codex.wordpress.org/Version_4.9.6' );
+				?>
+			</p>
+			<p>
+				<?php
+				printf(
+					/* translators: 1: WordPress version number, 2: plural number of bugs. */
+					_n(
+						'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.',
+						'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.',
+						28
+					),
+					'4.9.5',
+					number_format_i18n( 28 )
+				);
+				?>
+				<?php
+				/* translators: %s: Codex URL */
+				printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'https://codex.wordpress.org/Version_4.9.5' );
+				?>
+			</p>
+			<p>
+				<?php
+				printf(
+					/* translators: 1: WordPress version number, 2: plural number of bugs. */
+					_n(
+						'<strong>Version %1$s</strong> addressed %2$s bug.',
+						'<strong>Version %1$s</strong> addressed %2$s bugs.',
+						1
+					),
+					'4.9.4',
+					number_format_i18n( 1 )
+				);
+				?>
+				<?php
+				/* translators: %s: Codex URL */
+				printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'https://codex.wordpress.org/Version_4.9.4' );
+				?>
+			</p>
+			<p>
+				<?php
+				printf(
+					/* translators: 1: WordPress version number, 2: plural number of bugs. */
+					_n(
+						'<strong>Version %1$s</strong> addressed %2$s bug.',
+						'<strong>Version %1$s</strong> addressed %2$s bugs.',
+						34
+					),
+					'4.9.3',
+					number_format_i18n( 34 )
+				);
+				?>
+				<?php
+				/* translators: %s: Codex URL */
+				printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'https://codex.wordpress.org/Version_4.9.3' );
+				?>
+			</p>
+			<p>
+				<?php
+				printf(
+					/* translators: 1: WordPress version number, 2: plural number of bugs. */
+					_n(
+						'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.',
+						'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.',
+						22
+					),
+					'4.9.2',
+					number_format_i18n( 22 )
+				);
+				?>
+				<?php
+				/* translators: %s: Codex URL */
+				printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'https://codex.wordpress.org/Version_4.9.2' );
+				?>
+			</p>
+			<p>
+				<?php
+				printf(
+					/* translators: 1: WordPress version number, 2: plural number of bugs. */
+					_n(
+						'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.',
+						'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.',
+						11
+					),
+					'4.9.1',
+					number_format_i18n( 11 )
+				);
+				?>
+				<?php
+				/* translators: %s: Codex URL */
+				printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'https://codex.wordpress.org/Version_4.9.1' );
+				?>
+			</p>
+		</div>
+
+		<div class="feature-section one-col">
+			<div class="col">
+				<h2>
+					<?php
+						printf(
+							/* translators: %s: party popper emoji */
+							__( 'Major Customizer Improvements, Code Error Checking, and More! %s' ),
+							'&#x1F389'
+						);
+					?>
+				</h2>
+				<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>
+			</div>
+		</div>
 
-<div class="changelog point-releases">
-	<h3><?php echo _n( 'Maintenance and Security Release', 'Maintenance and Security Releases', 2 ); ?></h3>
-	<p><?php printf( _n( '<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.',
-         '<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.', 13 ), '4.2.2', number_format_i18n( 13 ) ); ?>
-		<?php printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'http://codex.wordpress.org/Version_4.2.2' ); ?>
-	</p>
-	<p><?php printf( _n( '<strong>Version %1$s</strong> addressed a security issue.',
-         '<strong>Version %1$s</strong> addressed some security issues.', 1 ), '4.2.1' ); ?>
-		<?php printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'http://codex.wordpress.org/Version_4.2.1' ); ?>
- 	</p>
-</div>
+		<div class="inline-svg full-width">
+			<picture>
+				<source media="(max-width: 500px)" srcset="<?php echo 'https://s.w.org/images/core/4.9/banner-mobile.svg'; ?>">
+				<img src="https://s.w.org/images/core/4.9/banner.svg" alt="">
+			</picture>
+		</div>
+
+		<div class="floating-header-section">
+			<div class="section-header">
+				<h2><?php _e( 'Customizer Workflow Improved' ); ?></h2>
+			</div>
+
+			<div class="section-content">
+				<div class="section-item">
+					<div class="inline-svg">
+						<img src="https://s.w.org/images/core/4.9/draft-and-schedule.svg" alt="">
+					</div>
+					<h3><?php _e( 'Draft and Schedule Site Design Customizations' ); ?></h3>
+					<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>
+				</div>
+				<div class="section-item">
+					<div class="inline-svg">
+						<img src="https://s.w.org/images/core/4.9/design-preview-links.svg" alt="">
+					</div>
+					<h3><?php _e( 'Collaborate with Design Preview Links' ); ?></h3>
+					<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>
+				</div>
+				<div class="section-item">
+					<div class="inline-svg">
+						<img src="https://s.w.org/images/core/4.9/locking.svg" alt="">
+					</div>
+					<h3><?php _e( 'Design Locking To Guard Your Changes' ); ?></h3>
+					<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>
+				</div>
+				<div class="section-item">
+					<div class="inline-svg">
+						<img src="https://s.w.org/images/core/4.9/prompt.svg" alt="">
+					</div>
+					<h3><?php _e( 'A Prompt to Protect Your Work' ); ?></h3>
+					<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>
+				</div>
+			</div>
+		</div>
+
+		<div class="floating-header-section">
+			<div class="section-header">
+				<h2><?php _e( 'Coding Enhancements' ); ?></h2>
+			</div>
+
+			<div class="section-content">
+				<div class="section-item">
+					<div class="inline-svg">
+						<img src="https://s.w.org/images/core/4.9/syntax-highlighting.svg" alt="">
+					</div>
+					<h3><?php _e( 'Syntax Highlighting and Error Checking? Yes, Please!' ); ?></h3>
+					<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>
+				</div>
+				<div class="section-item">
+					<div class="inline-svg">
+						<img src="https://s.w.org/images/core/4.9/sandbox.svg" alt="">
+					</div>
+					<h3><?php _e( 'Sandbox for Safety' ); ?></h3>
+					<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>
+				</div>
+				<div class="section-item">
+					<div class="inline-svg">
+						<img src="https://s.w.org/images/core/4.9/warning.svg" alt="">
+					</div>
+					<h3><?php _e( 'Warning: Potential Danger Ahead!' ); ?></h3>
+					<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>
+				</div>
+			</div>
+		</div>
+
+		<div class="floating-header-section">
+			<div class="section-header">
+				<h2><?php _e( 'Even More Widget Updates' ); ?></h2>
+			</div>
 
-<div class="headline-feature feature-video">
-	<embed type="application/x-shockwave-flash" src="https://v0.wordpress.com/player.swf?v=1.04" width="1000" height="560" wmode="direct" seamlesstabbing="true" allowfullscreen="true" allowscriptaccess="always" overstretch="true" flashvars="guid=e9kH4FzP&amp;isDynamicSeeking=true"></embed>
-</div>
+			<div class="section-content">
+				<div class="section-item">
+					<div class="inline-svg">
+						<img src="https://s.w.org/images/core/4.9/gallery-widget.svg" alt="">
+					</div>
+					<h3><?php _e( 'The New Gallery Widget' ); ?></h3>
+					<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>
+				</div>
+				<div class="section-item">
+					<div class="inline-svg">
+						<img src="https://s.w.org/images/core/4.9/media-button.svg" alt="">
+					</div>
+					<h3><?php _e( 'Press a Button, Add Media' ); ?></h3>
+					<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>
+				</div>
+			</div>
+		</div>
+
+		<div class="floating-header-section">
+			<div class="section-header">
+				<h2><?php _e( 'Site Building Improvements' ); ?></h2>
+			</div>
 
-<hr />
+			<div class="section-content">
+				<div class="section-item">
+					<div class="inline-svg">
+						<img src="https://s.w.org/images/core/4.9/theme-switching.svg" alt="">
+					</div>
+					<h3><?php _e( 'More Reliable Theme Switching' ); ?></h3>
+					<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>
+				</div>
+				<div class="section-item">
+					<div class="inline-svg">
+						<img src="https://s.w.org/images/core/4.9/menu-flow.svg" alt="">
+					</div>
+					<h3><?php _e( 'Better Menu Instructions = Less Confusion' ); ?></h3>
+					<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>
+				</div>
+			</div>
+		</div>
+
+		<div class="inline-svg">
+			<picture>
+				<source media="(max-width: 500px)" srcset="<?php echo 'https://s.w.org/images/core/4.9/gutenberg-mobile.svg'; ?>">
+				<img src="https://s.w.org/images/core/4.9/gutenberg.svg" alt="">
+			</picture>
+		</div>
 
-<div class="feature-section two-col">
-	<div class="col">
-		<h3><?php _e( 'An easier way to share content' ); ?></h3>
-		<p><?php printf( __( 'Clip it, edit it, publish it. Get familiar with the new and improved Press This. From the <a href="%s">Tools</a> menu, add Press This to your browser bookmark bar or your mobile device home screen. Once installed you can share your content with lightning speed. Sharing your favorite videos, images, and content has never been this fast or this easy.' ), admin_url( 'tools.php' ) ); ?></p>
-		<p><?php _e( 'Drag the bookmarklet below to your bookmarks bar. Then, when you&#8217;re on a page you want to share, simply &#8220;press&#8221; it.' ); ?></p>
+		<div class="feature-section">
+			<h2>
+				<?php
+					printf(
+						/* translators: %s: handshake emoji */
+						__( 'Lend a Hand with Gutenberg %s' ),
+						'&#x1F91D'
+					);
+				?>
+			</h2>
+			<p><?php printf(
+				__( '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="%s">early tester</a> or getting involved with the Gutenberg project? <a href="%s">Contribute on GitHub</a>.' ),
+				__( 'https://wordpress.org/plugins/gutenberg/' ),
+				'https://github.com/WordPress/gutenberg' ); ?></p>
+		</div>
+
+		<hr />
+
+		<div class="changelog">
+			<h2><?php
+				printf(
+					/* translators: %s: smiling face with smiling eyes emoji */
+					__( 'Developer Happiness %s' ),
+					'&#x1F60A'
+				);
+			?></h2>
 
-		<p class="pressthis-bookmarklet-demo">
-			<a class="pressthis-bookmarklet" onclick="return false;" href="<?php echo htmlspecialchars( get_shortcut_link() ); ?>"><span><?php _e( 'Press This' ); ?></span></a>
-		</p>
+			<div class="under-the-hood two-col">
+				<div class="col">
+					<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>
+					<p><?php
+						printf(
+							/* translators: %s: https://make.wordpress.org/core/2017/11/01/improvements-to-the-customize-js-api-in-4-9/  */
+							__( '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>' ),
+							'https://make.wordpress.org/core/2017/11/01/improvements-to-the-customize-js-api-in-4-9/'
+						);
+					?></p>
+				</div>
+				<div class="col">
+					<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>
+					<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>
+				</div>
+				<div class="col">
+					<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>
+					<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>
+				</div>
+				<div class="col">
+					<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>
+					<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>
+				</div>
+			</div>
+		</div>
+
+		<hr />
+
+		<div class="return-to-dashboard">
+			<?php if ( current_user_can( 'update_core' ) && isset( $_GET['updated'] ) ) : ?>
+				<a href="<?php echo esc_url( self_admin_url( 'update-core.php' ) ); ?>">
+					<?php is_multisite() ? _e( 'Return to Updates' ) : _e( 'Return to Dashboard &rarr; Updates' ); ?>
+				</a> |
+			<?php endif; ?>
+			<a href="<?php echo esc_url( self_admin_url() ); ?>"><?php is_blog_admin() ? _e( 'Go to Dashboard &rarr; Home' ) : _e( 'Go to Dashboard' ); ?></a>
+		</div>
 	</div>
 
-	<div class="col">
-		<img src="//s.w.org/images/core/4.2/press-this.jpg" />
-	</div>
-</div>
+	<script>
+		(function( $ ) {
+			$( function() {
+				var $window = $( window );
+				var $adminbar = $( '#wpadminbar' );
+				var $sections = $( '.floating-header-section' );
+				var offset = 0;
 
-<div class="feature-section two-col">
-	<div class="col">
-		<img src="//s.w.org/images/core/4.2/unicode.png" />
-	</div>
-	<div class="col">
-		<h3><?php _e( 'Extended character support' ); ?></h3>
-		<p><?php _e( 'Writing in WordPress, whatever your language, just got better. WordPress 4.2 supports a host of new characters out-of-the-box, including native Chinese, Japanese, and Korean characters, musical and mathematical symbols, and hieroglyphs.' ); ?></p>
-		<p><?php
-			/* translators: 1: heart emoji, 2: frog face emoji, 3, monkey emoji, 4: pizza emoji, 5: Emoji Codex link */
-			printf( __( 'Don&#8217;t use any of those characters? You can still have fun &mdash; emoji are now available in WordPress! Get creative and decorate your content with %1$s, %2$s, %3$s, %4$s, and all the many other <a href="%5$s">emoji</a>.' ), '&#x1F499', '&#x1F438', '&#x1F412', '&#x1F355', __( 'https://codex.wordpress.org/Emoji' ) );
-		?></p>
-	</div>
-</div>
+				// Account for Admin bar.
+				if ( $adminbar.length ) {
+					offset += $adminbar.height();
+				}
 
-<div class="changelog feature-section three-col">
-	<div>
-		<img src="//s.w.org/images/core/4.2/theme-switcher.png" />
-		<h3><?php _e( 'Switch themes in the Customizer' ); ?></h3>
-		<p><?php _e( 'Browse and preview your installed themes from the Customizer. Make sure the theme looks great with <em>your</em> content, before it debuts on your site. ' ); ?></p>
-	</div>
-	<div>
-		<img src="//s.w.org/images/core/4.2/embeds.png" />
-		<h3><?php _e( 'Even more embeds' ); ?></h3>
-		<p><?php _e( 'Paste links from Tumblr.com and Kickstarter and watch them magically appear right in the editor. With every release, your publishing and editing experience get closer together.' ); ?></p>
-	</div>
-	<div class="last-feature">
-		<img src="//s.w.org/images/core/4.2/plugins.png" />
-		<h3><?php _e( 'Streamlined plugin updates' ); ?></h3>
-		<p><?php _e( 'Goodbye boring loading screen, hello smooth and simple plugin updates. Click <em>Update&nbsp;Now</em> and watch the magic happen.' ); ?></p>
-	</div>
-</div>
+				function setup() {
+					$sections.each( function( i, section ) {
+						var $section = $( section );
+						// If the title is long, switch the layout
+						var $title = $section.find( 'h2' );
+						if ( $title.innerWidth() > 300 ) {
+							$section.addClass( 'has-long-title' );
+						}
+					} );
+				}
 
-<div class="changelog under-the-hood feature-list">
-	<h3><?php _e( 'Under the Hood' ); ?></h3>
+				var adjustScrollPosition = _.throttle( function adjustScrollPosition() {
+					$sections.each( function( i, section ) {
+						var $section = $( section );
+						var $header = $section.find( 'h2' );
+						var width = $header.innerWidth();
+						var height = $header.innerHeight();
+
+						if ( $section.hasClass( 'has-long-title' ) ) {
+							return;
+						}
+
+						var sectionStart = $section.offset().top - offset;
+						var sectionEnd = sectionStart + $section.innerHeight();
+						var scrollPos = $window.scrollTop();
 
-	<div class="feature-section col two-col">
-		<div>
-			<h4><?php _e( 'utf8mb4 support' ); ?></h4>
-			<p><?php _e( 'Database character encoding has changed from utf8 to utf8mb4, which adds support for a whole range of new 4-byte characters.' ); ?></p>
-
-			<h4><?php _e( 'JavaScript accessibility' ); ?></h4>
-			<p><?php
-				/* translators: %s wp.a11y.speak() */
-				printf( __( 'You can now send audible notifications to screen readers in JavaScript with %s. Pass it a string, and an update will be sent to a dedicated ARIA live notifications area.' ), '<code>wp.a11y.speak()</code>' );
-			?></p>
-		</div>
-		<div class="last-feature">
-			<h4><?php _e( 'Shared term splitting' ); ?></h4>
-			<p><?php
-				/* translators: 1: Term splitting guide link */
-				printf( __( 'Terms shared across multiple taxonomies will be split when one of them is updated. Find out more in the <a href="%1$s">Plugin Developer Handbook</a>.' ), 'https://developer.wordpress.org/plugins/taxonomy/working-with-split-terms-in-wp-4-2/' );
-			?></p>
+						// If we're scrolled into a section, stick the header
+						if ( scrollPos >= sectionStart && scrollPos < sectionEnd - height ) {
+							$header.css( {
+								position: 'fixed',
+								top: offset + 'px',
+								bottom: 'auto',
+								width: width + 'px'
+							} );
+						// If we're at the end of the section, stick the header to the bottom
+						} else if ( scrollPos >= sectionEnd - height && scrollPos < sectionEnd ) {
+							$header.css( {
+								position: 'absolute',
+								top: 'auto',
+								bottom: 0,
+								width: width + 'px'
+							} );
+						// Unstick the header
+						} else {
+							$header.css( {
+								position: 'static',
+								top: 'auto',
+								bottom: 'auto',
+								width: 'auto'
+							} );
+						}
+					} );
+				}, 100 );
 
-			<h4><?php _e( 'Complex query ordering' ); ?></h4>
-			<p><?php
-				/* translators: 1: WP_Query, 2: WP_Comment_Query, 3: WP_User_Query */
-				printf( __( '%1$s, %2$s, and %3$s now support complex ordering with named meta query clauses.' ), '<code>WP_Query</code>', '<code>WP_Comment_Query</code>', '<code>WP_User_Query</code>' );
-			?></p>
-		</div>
-
-	<hr />
+				function enableFixedHeaders() {
+					if ( $window.width() > 782 ) {
+						setup();
+						adjustScrollPosition();
+						$window.on( 'scroll', adjustScrollPosition );
+					} else {
+						$window.off( 'scroll', adjustScrollPosition );
+						$sections.find( '.section-header' )
+							.css( {
+								width: 'auto'
+							} );
+						$sections.find( 'h2' )
+							.css( {
+								position: 'static',
+								top: 'auto',
+								bottom: 'auto',
+								width: 'auto'
+							} );
+					}
+				}
+				$( window ).resize( enableFixedHeaders );
+				enableFixedHeaders();
+			} );
+		})( jQuery );
+	</script>
 
-	<div class="return-to-dashboard">
-		<?php if ( current_user_can( 'update_core' ) && isset( $_GET['updated'] ) ) : ?>
-		<a href="<?php echo esc_url( self_admin_url( 'update-core.php' ) ); ?>"><?php
-			is_multisite() ? _e( 'Return to Updates' ) : _e( 'Return to Dashboard &rarr; Updates' );
-		?></a> |
-		<?php endif; ?>
-		<a href="<?php echo esc_url( self_admin_url() ); ?>"><?php
-			is_blog_admin() ? _e( 'Go to Dashboard &rarr; Home' ) : _e( 'Go to Dashboard' ); ?></a>
-	</div>
-</div>
-
-</div>
 <?php
 
 include( ABSPATH . 'wp-admin/admin-footer.php' );
@@ -155,13 +488,19 @@
 // These are strings we may use to describe maintenance/security releases, where we aim for no new strings.
 return;
 
-_n_noop( 'Maintenance Release', 'Maintenance Releases' );
-_n_noop( 'Security Release', 'Security Releases' );
-_n_noop( 'Maintenance and Security Release', 'Maintenance and Security Releases' );
+__( 'Maintenance Release' );
+__( 'Maintenance Releases' );
+
+__( 'Security Release' );
+__( 'Security Releases' );
 
-/* translators: 1: WordPress version number. */
-_n_noop( '<strong>Version %1$s</strong> addressed a security issue.',
-         '<strong>Version %1$s</strong> addressed some security issues.' );
+__( 'Maintenance and Security Release' );
+__( 'Maintenance and Security Releases' );
+
+/* translators: %s: WordPress version number */
+__( '<strong>Version %s</strong> addressed one security issue.' );
+/* translators: %s: WordPress version number */
+__( '<strong>Version %s</strong> addressed some security issues.' );
 
 /* translators: 1: WordPress version number, 2: plural number of bugs. */
 _n_noop( '<strong>Version %1$s</strong> addressed %2$s bug.',
@@ -175,4 +514,5 @@
 _n_noop( '<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.',
          '<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.' );
 
+/* translators: %s: Codex URL */
 __( 'For more information, see <a href="%s">the release notes</a>.' );