wp/wp-admin/about.php
changeset 7 cf61fcea0001
parent 5 5e2f62d02dcd
child 9 177826044cd9
equal deleted inserted replaced
6:490d5cc509ed 7:cf61fcea0001
     7  */
     7  */
     8 
     8 
     9 /** WordPress Administration Bootstrap */
     9 /** WordPress Administration Bootstrap */
    10 require_once( dirname( __FILE__ ) . '/admin.php' );
    10 require_once( dirname( __FILE__ ) . '/admin.php' );
    11 
    11 
    12 wp_enqueue_style( 'wp-mediaelement' );
    12 wp_enqueue_script( 'underscore' );
    13 wp_enqueue_script( 'wp-mediaelement' );
    13 
    14 wp_localize_script( 'mediaelement', '_wpmejsSettings', array(
    14 /* translators: Page title of the About WordPress page in the admin. */
    15 	'pluginPath' => includes_url( 'js/mediaelement/', 'relative' ),
    15 $title = _x( 'About', 'page title' );
    16 	'pauseOtherPlayers' => ''
    16 
    17 ) );
    17 list( $display_version ) = explode( '-', get_bloginfo( 'version' ) );
    18 
       
    19 $title = __( 'About' );
       
    20 
       
    21 list( $display_version ) = explode( '-', $wp_version );
       
    22 
    18 
    23 include( ABSPATH . 'wp-admin/admin-header.php' );
    19 include( ABSPATH . 'wp-admin/admin-header.php' );
    24 ?>
    20 ?>
    25 <div class="wrap about-wrap">
    21 	<div class="wrap about-wrap full-width-layout">
    26 
    22 		<h1><?php printf( __( 'Welcome to WordPress&nbsp;%s' ), $display_version ); ?></h1>
    27 <h1><?php printf( __( 'Welcome to WordPress&nbsp;%s' ), $display_version ); ?></h1>
    23 
    28 
    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>
    29 <div class="about-text"><?php printf( __( 'Thank you for updating! WordPress %s helps you communicate and share, globally.' ), $display_version ); ?></div>
    25 		<div class="wp-badge"><?php printf( __( 'Version %s' ), $display_version ); ?></div>
    30 
    26 
    31 <div class="wp-badge"><?php printf( __( 'Version %s' ), $display_version ); ?></div>
    27 		<h2 class="nav-tab-wrapper wp-clearfix">
    32 
    28 			<a href="about.php" class="nav-tab nav-tab-active"><?php _e( 'What&#8217;s New' ); ?></a>
    33 <h2 class="nav-tab-wrapper">
    29 			<a href="credits.php" class="nav-tab"><?php _e( 'Credits' ); ?></a>
    34 	<a href="about.php" class="nav-tab nav-tab-active">
    30 			<a href="freedoms.php" class="nav-tab"><?php _e( 'Freedoms' ); ?></a>
    35 		<?php _e( 'What&#8217;s New' ); ?>
    31 			<a href="freedoms.php?privacy-notice" class="nav-tab"><?php _e( 'Privacy' ); ?></a>
    36 	</a><a href="credits.php" class="nav-tab">
    32 		</h2>
    37 		<?php _e( 'Credits' ); ?>
    33 
    38 	</a><a href="freedoms.php" class="nav-tab">
    34 		<div class="changelog point-releases">
    39 		<?php _e( 'Freedoms' ); ?>
    35 			<h3><?php _e( 'Maintenance and Security Releases' ); ?></h3>
    40 	</a>
    36 			<p>
    41 </h2>
    37 				<?php
    42 
    38 				printf(
    43 <div class="changelog point-releases">
    39 					/* translators: 1: WordPress version number, 2: plural number of bugs. */
    44 	<h3><?php echo _n( 'Maintenance and Security Release', 'Maintenance and Security Releases', 2 ); ?></h3>
    40 					_n(
    45 	<p><?php printf( _n( '<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.',
    41 						'<strong>Version %1$s</strong> addressed %2$s bug.',
    46          '<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.', 13 ), '4.2.2', number_format_i18n( 13 ) ); ?>
    42 						'<strong>Version %1$s</strong> addressed %2$s bugs.',
    47 		<?php printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'http://codex.wordpress.org/Version_4.2.2' ); ?>
    43 						46
    48 	</p>
    44 					),
    49 	<p><?php printf( _n( '<strong>Version %1$s</strong> addressed a security issue.',
    45 					'4.9.8',
    50          '<strong>Version %1$s</strong> addressed some security issues.', 1 ), '4.2.1' ); ?>
    46 					number_format_i18n( 46 )
    51 		<?php printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'http://codex.wordpress.org/Version_4.2.1' ); ?>
    47 				);
    52  	</p>
    48 
    53 </div>
    49 				printf(
    54 
    50 					/* translators: %s: Codex URL */
    55 <div class="headline-feature feature-video">
    51 					__( 'For more information, see <a href="%s">the release notes</a>.' ),
    56 	<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>
    52 					'https://codex.wordpress.org/Version_4.9.8'
    57 </div>
    53 				);
    58 
    54 				?>
    59 <hr />
    55 			</p>
    60 
    56 			<p>
    61 <div class="feature-section two-col">
    57 				<?php
    62 	<div class="col">
    58 				printf(
    63 		<h3><?php _e( 'An easier way to share content' ); ?></h3>
    59 					/* translators: 1: WordPress version number, 2: plural number of bugs. */
    64 		<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>
    60 					_n(
    65 		<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>
    61 						'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.',
    66 
    62 						'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.',
    67 		<p class="pressthis-bookmarklet-demo">
    63 						17
    68 			<a class="pressthis-bookmarklet" onclick="return false;" href="<?php echo htmlspecialchars( get_shortcut_link() ); ?>"><span><?php _e( 'Press This' ); ?></span></a>
    64 					),
    69 		</p>
    65 					'4.9.7',
       
    66 					number_format_i18n( 17 )
       
    67 				);
       
    68 				?>
       
    69 				<?php
       
    70 				/* translators: %s: Codex URL */
       
    71 				printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'https://codex.wordpress.org/Version_4.9.7' );
       
    72 				?>
       
    73 			</p>
       
    74 			<p>
       
    75 				<?php
       
    76 				printf(
       
    77 					/* translators: 1: WordPress version number, 2: plural number of bugs. */
       
    78 					_n(
       
    79 						'<strong>Version %1$s</strong> addressed %2$s bug.',
       
    80 						'<strong>Version %1$s</strong> addressed %2$s bugs.',
       
    81 						18
       
    82 					),
       
    83 					'4.9.6',
       
    84 					number_format_i18n( 18 )
       
    85 				);
       
    86 				?>
       
    87 				<?php
       
    88 				/* translators: %s: Codex URL */
       
    89 				printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'https://codex.wordpress.org/Version_4.9.6' );
       
    90 				?>
       
    91 			</p>
       
    92 			<p>
       
    93 				<?php
       
    94 				printf(
       
    95 					/* translators: 1: WordPress version number, 2: plural number of bugs. */
       
    96 					_n(
       
    97 						'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.',
       
    98 						'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.',
       
    99 						28
       
   100 					),
       
   101 					'4.9.5',
       
   102 					number_format_i18n( 28 )
       
   103 				);
       
   104 				?>
       
   105 				<?php
       
   106 				/* translators: %s: Codex URL */
       
   107 				printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'https://codex.wordpress.org/Version_4.9.5' );
       
   108 				?>
       
   109 			</p>
       
   110 			<p>
       
   111 				<?php
       
   112 				printf(
       
   113 					/* translators: 1: WordPress version number, 2: plural number of bugs. */
       
   114 					_n(
       
   115 						'<strong>Version %1$s</strong> addressed %2$s bug.',
       
   116 						'<strong>Version %1$s</strong> addressed %2$s bugs.',
       
   117 						1
       
   118 					),
       
   119 					'4.9.4',
       
   120 					number_format_i18n( 1 )
       
   121 				);
       
   122 				?>
       
   123 				<?php
       
   124 				/* translators: %s: Codex URL */
       
   125 				printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'https://codex.wordpress.org/Version_4.9.4' );
       
   126 				?>
       
   127 			</p>
       
   128 			<p>
       
   129 				<?php
       
   130 				printf(
       
   131 					/* translators: 1: WordPress version number, 2: plural number of bugs. */
       
   132 					_n(
       
   133 						'<strong>Version %1$s</strong> addressed %2$s bug.',
       
   134 						'<strong>Version %1$s</strong> addressed %2$s bugs.',
       
   135 						34
       
   136 					),
       
   137 					'4.9.3',
       
   138 					number_format_i18n( 34 )
       
   139 				);
       
   140 				?>
       
   141 				<?php
       
   142 				/* translators: %s: Codex URL */
       
   143 				printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'https://codex.wordpress.org/Version_4.9.3' );
       
   144 				?>
       
   145 			</p>
       
   146 			<p>
       
   147 				<?php
       
   148 				printf(
       
   149 					/* translators: 1: WordPress version number, 2: plural number of bugs. */
       
   150 					_n(
       
   151 						'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.',
       
   152 						'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.',
       
   153 						22
       
   154 					),
       
   155 					'4.9.2',
       
   156 					number_format_i18n( 22 )
       
   157 				);
       
   158 				?>
       
   159 				<?php
       
   160 				/* translators: %s: Codex URL */
       
   161 				printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'https://codex.wordpress.org/Version_4.9.2' );
       
   162 				?>
       
   163 			</p>
       
   164 			<p>
       
   165 				<?php
       
   166 				printf(
       
   167 					/* translators: 1: WordPress version number, 2: plural number of bugs. */
       
   168 					_n(
       
   169 						'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.',
       
   170 						'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.',
       
   171 						11
       
   172 					),
       
   173 					'4.9.1',
       
   174 					number_format_i18n( 11 )
       
   175 				);
       
   176 				?>
       
   177 				<?php
       
   178 				/* translators: %s: Codex URL */
       
   179 				printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'https://codex.wordpress.org/Version_4.9.1' );
       
   180 				?>
       
   181 			</p>
       
   182 		</div>
       
   183 
       
   184 		<div class="feature-section one-col">
       
   185 			<div class="col">
       
   186 				<h2>
       
   187 					<?php
       
   188 						printf(
       
   189 							/* translators: %s: party popper emoji */
       
   190 							__( 'Major Customizer Improvements, Code Error Checking, and More! %s' ),
       
   191 							'&#x1F389'
       
   192 						);
       
   193 					?>
       
   194 				</h2>
       
   195 				<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>
       
   196 			</div>
       
   197 		</div>
       
   198 
       
   199 		<div class="inline-svg full-width">
       
   200 			<picture>
       
   201 				<source media="(max-width: 500px)" srcset="<?php echo 'https://s.w.org/images/core/4.9/banner-mobile.svg'; ?>">
       
   202 				<img src="https://s.w.org/images/core/4.9/banner.svg" alt="">
       
   203 			</picture>
       
   204 		</div>
       
   205 
       
   206 		<div class="floating-header-section">
       
   207 			<div class="section-header">
       
   208 				<h2><?php _e( 'Customizer Workflow Improved' ); ?></h2>
       
   209 			</div>
       
   210 
       
   211 			<div class="section-content">
       
   212 				<div class="section-item">
       
   213 					<div class="inline-svg">
       
   214 						<img src="https://s.w.org/images/core/4.9/draft-and-schedule.svg" alt="">
       
   215 					</div>
       
   216 					<h3><?php _e( 'Draft and Schedule Site Design Customizations' ); ?></h3>
       
   217 					<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>
       
   218 				</div>
       
   219 				<div class="section-item">
       
   220 					<div class="inline-svg">
       
   221 						<img src="https://s.w.org/images/core/4.9/design-preview-links.svg" alt="">
       
   222 					</div>
       
   223 					<h3><?php _e( 'Collaborate with Design Preview Links' ); ?></h3>
       
   224 					<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>
       
   225 				</div>
       
   226 				<div class="section-item">
       
   227 					<div class="inline-svg">
       
   228 						<img src="https://s.w.org/images/core/4.9/locking.svg" alt="">
       
   229 					</div>
       
   230 					<h3><?php _e( 'Design Locking To Guard Your Changes' ); ?></h3>
       
   231 					<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>
       
   232 				</div>
       
   233 				<div class="section-item">
       
   234 					<div class="inline-svg">
       
   235 						<img src="https://s.w.org/images/core/4.9/prompt.svg" alt="">
       
   236 					</div>
       
   237 					<h3><?php _e( 'A Prompt to Protect Your Work' ); ?></h3>
       
   238 					<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>
       
   239 				</div>
       
   240 			</div>
       
   241 		</div>
       
   242 
       
   243 		<div class="floating-header-section">
       
   244 			<div class="section-header">
       
   245 				<h2><?php _e( 'Coding Enhancements' ); ?></h2>
       
   246 			</div>
       
   247 
       
   248 			<div class="section-content">
       
   249 				<div class="section-item">
       
   250 					<div class="inline-svg">
       
   251 						<img src="https://s.w.org/images/core/4.9/syntax-highlighting.svg" alt="">
       
   252 					</div>
       
   253 					<h3><?php _e( 'Syntax Highlighting and Error Checking? Yes, Please!' ); ?></h3>
       
   254 					<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>
       
   255 				</div>
       
   256 				<div class="section-item">
       
   257 					<div class="inline-svg">
       
   258 						<img src="https://s.w.org/images/core/4.9/sandbox.svg" alt="">
       
   259 					</div>
       
   260 					<h3><?php _e( 'Sandbox for Safety' ); ?></h3>
       
   261 					<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>
       
   262 				</div>
       
   263 				<div class="section-item">
       
   264 					<div class="inline-svg">
       
   265 						<img src="https://s.w.org/images/core/4.9/warning.svg" alt="">
       
   266 					</div>
       
   267 					<h3><?php _e( 'Warning: Potential Danger Ahead!' ); ?></h3>
       
   268 					<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>
       
   269 				</div>
       
   270 			</div>
       
   271 		</div>
       
   272 
       
   273 		<div class="floating-header-section">
       
   274 			<div class="section-header">
       
   275 				<h2><?php _e( 'Even More Widget Updates' ); ?></h2>
       
   276 			</div>
       
   277 
       
   278 			<div class="section-content">
       
   279 				<div class="section-item">
       
   280 					<div class="inline-svg">
       
   281 						<img src="https://s.w.org/images/core/4.9/gallery-widget.svg" alt="">
       
   282 					</div>
       
   283 					<h3><?php _e( 'The New Gallery Widget' ); ?></h3>
       
   284 					<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>
       
   285 				</div>
       
   286 				<div class="section-item">
       
   287 					<div class="inline-svg">
       
   288 						<img src="https://s.w.org/images/core/4.9/media-button.svg" alt="">
       
   289 					</div>
       
   290 					<h3><?php _e( 'Press a Button, Add Media' ); ?></h3>
       
   291 					<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>
       
   292 				</div>
       
   293 			</div>
       
   294 		</div>
       
   295 
       
   296 		<div class="floating-header-section">
       
   297 			<div class="section-header">
       
   298 				<h2><?php _e( 'Site Building Improvements' ); ?></h2>
       
   299 			</div>
       
   300 
       
   301 			<div class="section-content">
       
   302 				<div class="section-item">
       
   303 					<div class="inline-svg">
       
   304 						<img src="https://s.w.org/images/core/4.9/theme-switching.svg" alt="">
       
   305 					</div>
       
   306 					<h3><?php _e( 'More Reliable Theme Switching' ); ?></h3>
       
   307 					<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>
       
   308 				</div>
       
   309 				<div class="section-item">
       
   310 					<div class="inline-svg">
       
   311 						<img src="https://s.w.org/images/core/4.9/menu-flow.svg" alt="">
       
   312 					</div>
       
   313 					<h3><?php _e( 'Better Menu Instructions = Less Confusion' ); ?></h3>
       
   314 					<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>
       
   315 				</div>
       
   316 			</div>
       
   317 		</div>
       
   318 
       
   319 		<div class="inline-svg">
       
   320 			<picture>
       
   321 				<source media="(max-width: 500px)" srcset="<?php echo 'https://s.w.org/images/core/4.9/gutenberg-mobile.svg'; ?>">
       
   322 				<img src="https://s.w.org/images/core/4.9/gutenberg.svg" alt="">
       
   323 			</picture>
       
   324 		</div>
       
   325 
       
   326 		<div class="feature-section">
       
   327 			<h2>
       
   328 				<?php
       
   329 					printf(
       
   330 						/* translators: %s: handshake emoji */
       
   331 						__( 'Lend a Hand with Gutenberg %s' ),
       
   332 						'&#x1F91D'
       
   333 					);
       
   334 				?>
       
   335 			</h2>
       
   336 			<p><?php printf(
       
   337 				__( '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>.' ),
       
   338 				__( 'https://wordpress.org/plugins/gutenberg/' ),
       
   339 				'https://github.com/WordPress/gutenberg' ); ?></p>
       
   340 		</div>
       
   341 
       
   342 		<hr />
       
   343 
       
   344 		<div class="changelog">
       
   345 			<h2><?php
       
   346 				printf(
       
   347 					/* translators: %s: smiling face with smiling eyes emoji */
       
   348 					__( 'Developer Happiness %s' ),
       
   349 					'&#x1F60A'
       
   350 				);
       
   351 			?></h2>
       
   352 
       
   353 			<div class="under-the-hood two-col">
       
   354 				<div class="col">
       
   355 					<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>
       
   356 					<p><?php
       
   357 						printf(
       
   358 							/* translators: %s: https://make.wordpress.org/core/2017/11/01/improvements-to-the-customize-js-api-in-4-9/  */
       
   359 							__( '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>' ),
       
   360 							'https://make.wordpress.org/core/2017/11/01/improvements-to-the-customize-js-api-in-4-9/'
       
   361 						);
       
   362 					?></p>
       
   363 				</div>
       
   364 				<div class="col">
       
   365 					<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>
       
   366 					<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>
       
   367 				</div>
       
   368 				<div class="col">
       
   369 					<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>
       
   370 					<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>
       
   371 				</div>
       
   372 				<div class="col">
       
   373 					<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>
       
   374 					<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>
       
   375 				</div>
       
   376 			</div>
       
   377 		</div>
       
   378 
       
   379 		<hr />
       
   380 
       
   381 		<div class="return-to-dashboard">
       
   382 			<?php if ( current_user_can( 'update_core' ) && isset( $_GET['updated'] ) ) : ?>
       
   383 				<a href="<?php echo esc_url( self_admin_url( 'update-core.php' ) ); ?>">
       
   384 					<?php is_multisite() ? _e( 'Return to Updates' ) : _e( 'Return to Dashboard &rarr; Updates' ); ?>
       
   385 				</a> |
       
   386 			<?php endif; ?>
       
   387 			<a href="<?php echo esc_url( self_admin_url() ); ?>"><?php is_blog_admin() ? _e( 'Go to Dashboard &rarr; Home' ) : _e( 'Go to Dashboard' ); ?></a>
       
   388 		</div>
    70 	</div>
   389 	</div>
    71 
   390 
    72 	<div class="col">
   391 	<script>
    73 		<img src="//s.w.org/images/core/4.2/press-this.jpg" />
   392 		(function( $ ) {
    74 	</div>
   393 			$( function() {
    75 </div>
   394 				var $window = $( window );
    76 
   395 				var $adminbar = $( '#wpadminbar' );
    77 <div class="feature-section two-col">
   396 				var $sections = $( '.floating-header-section' );
    78 	<div class="col">
   397 				var offset = 0;
    79 		<img src="//s.w.org/images/core/4.2/unicode.png" />
   398 
    80 	</div>
   399 				// Account for Admin bar.
    81 	<div class="col">
   400 				if ( $adminbar.length ) {
    82 		<h3><?php _e( 'Extended character support' ); ?></h3>
   401 					offset += $adminbar.height();
    83 		<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>
   402 				}
    84 		<p><?php
   403 
    85 			/* translators: 1: heart emoji, 2: frog face emoji, 3, monkey emoji, 4: pizza emoji, 5: Emoji Codex link */
   404 				function setup() {
    86 			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' ) );
   405 					$sections.each( function( i, section ) {
    87 		?></p>
   406 						var $section = $( section );
    88 	</div>
   407 						// If the title is long, switch the layout
    89 </div>
   408 						var $title = $section.find( 'h2' );
    90 
   409 						if ( $title.innerWidth() > 300 ) {
    91 <div class="changelog feature-section three-col">
   410 							$section.addClass( 'has-long-title' );
    92 	<div>
   411 						}
    93 		<img src="//s.w.org/images/core/4.2/theme-switcher.png" />
   412 					} );
    94 		<h3><?php _e( 'Switch themes in the Customizer' ); ?></h3>
   413 				}
    95 		<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>
   414 
    96 	</div>
   415 				var adjustScrollPosition = _.throttle( function adjustScrollPosition() {
    97 	<div>
   416 					$sections.each( function( i, section ) {
    98 		<img src="//s.w.org/images/core/4.2/embeds.png" />
   417 						var $section = $( section );
    99 		<h3><?php _e( 'Even more embeds' ); ?></h3>
   418 						var $header = $section.find( 'h2' );
   100 		<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>
   419 						var width = $header.innerWidth();
   101 	</div>
   420 						var height = $header.innerHeight();
   102 	<div class="last-feature">
   421 
   103 		<img src="//s.w.org/images/core/4.2/plugins.png" />
   422 						if ( $section.hasClass( 'has-long-title' ) ) {
   104 		<h3><?php _e( 'Streamlined plugin updates' ); ?></h3>
   423 							return;
   105 		<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>
   424 						}
   106 	</div>
   425 
   107 </div>
   426 						var sectionStart = $section.offset().top - offset;
   108 
   427 						var sectionEnd = sectionStart + $section.innerHeight();
   109 <div class="changelog under-the-hood feature-list">
   428 						var scrollPos = $window.scrollTop();
   110 	<h3><?php _e( 'Under the Hood' ); ?></h3>
   429 
   111 
   430 						// If we're scrolled into a section, stick the header
   112 	<div class="feature-section col two-col">
   431 						if ( scrollPos >= sectionStart && scrollPos < sectionEnd - height ) {
   113 		<div>
   432 							$header.css( {
   114 			<h4><?php _e( 'utf8mb4 support' ); ?></h4>
   433 								position: 'fixed',
   115 			<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>
   434 								top: offset + 'px',
   116 
   435 								bottom: 'auto',
   117 			<h4><?php _e( 'JavaScript accessibility' ); ?></h4>
   436 								width: width + 'px'
   118 			<p><?php
   437 							} );
   119 				/* translators: %s wp.a11y.speak() */
   438 						// If we're at the end of the section, stick the header to the bottom
   120 				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>' );
   439 						} else if ( scrollPos >= sectionEnd - height && scrollPos < sectionEnd ) {
   121 			?></p>
   440 							$header.css( {
   122 		</div>
   441 								position: 'absolute',
   123 		<div class="last-feature">
   442 								top: 'auto',
   124 			<h4><?php _e( 'Shared term splitting' ); ?></h4>
   443 								bottom: 0,
   125 			<p><?php
   444 								width: width + 'px'
   126 				/* translators: 1: Term splitting guide link */
   445 							} );
   127 				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/' );
   446 						// Unstick the header
   128 			?></p>
   447 						} else {
   129 
   448 							$header.css( {
   130 			<h4><?php _e( 'Complex query ordering' ); ?></h4>
   449 								position: 'static',
   131 			<p><?php
   450 								top: 'auto',
   132 				/* translators: 1: WP_Query, 2: WP_Comment_Query, 3: WP_User_Query */
   451 								bottom: 'auto',
   133 				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>' );
   452 								width: 'auto'
   134 			?></p>
   453 							} );
   135 		</div>
   454 						}
   136 
   455 					} );
   137 	<hr />
   456 				}, 100 );
   138 
   457 
   139 	<div class="return-to-dashboard">
   458 				function enableFixedHeaders() {
   140 		<?php if ( current_user_can( 'update_core' ) && isset( $_GET['updated'] ) ) : ?>
   459 					if ( $window.width() > 782 ) {
   141 		<a href="<?php echo esc_url( self_admin_url( 'update-core.php' ) ); ?>"><?php
   460 						setup();
   142 			is_multisite() ? _e( 'Return to Updates' ) : _e( 'Return to Dashboard &rarr; Updates' );
   461 						adjustScrollPosition();
   143 		?></a> |
   462 						$window.on( 'scroll', adjustScrollPosition );
   144 		<?php endif; ?>
   463 					} else {
   145 		<a href="<?php echo esc_url( self_admin_url() ); ?>"><?php
   464 						$window.off( 'scroll', adjustScrollPosition );
   146 			is_blog_admin() ? _e( 'Go to Dashboard &rarr; Home' ) : _e( 'Go to Dashboard' ); ?></a>
   465 						$sections.find( '.section-header' )
   147 	</div>
   466 							.css( {
   148 </div>
   467 								width: 'auto'
   149 
   468 							} );
   150 </div>
   469 						$sections.find( 'h2' )
       
   470 							.css( {
       
   471 								position: 'static',
       
   472 								top: 'auto',
       
   473 								bottom: 'auto',
       
   474 								width: 'auto'
       
   475 							} );
       
   476 					}
       
   477 				}
       
   478 				$( window ).resize( enableFixedHeaders );
       
   479 				enableFixedHeaders();
       
   480 			} );
       
   481 		})( jQuery );
       
   482 	</script>
       
   483 
   151 <?php
   484 <?php
   152 
   485 
   153 include( ABSPATH . 'wp-admin/admin-footer.php' );
   486 include( ABSPATH . 'wp-admin/admin-footer.php' );
   154 
   487 
   155 // These are strings we may use to describe maintenance/security releases, where we aim for no new strings.
   488 // These are strings we may use to describe maintenance/security releases, where we aim for no new strings.
   156 return;
   489 return;
   157 
   490 
   158 _n_noop( 'Maintenance Release', 'Maintenance Releases' );
   491 __( 'Maintenance Release' );
   159 _n_noop( 'Security Release', 'Security Releases' );
   492 __( 'Maintenance Releases' );
   160 _n_noop( 'Maintenance and Security Release', 'Maintenance and Security Releases' );
   493 
   161 
   494 __( 'Security Release' );
   162 /* translators: 1: WordPress version number. */
   495 __( 'Security Releases' );
   163 _n_noop( '<strong>Version %1$s</strong> addressed a security issue.',
   496 
   164          '<strong>Version %1$s</strong> addressed some security issues.' );
   497 __( 'Maintenance and Security Release' );
       
   498 __( 'Maintenance and Security Releases' );
       
   499 
       
   500 /* translators: %s: WordPress version number */
       
   501 __( '<strong>Version %s</strong> addressed one security issue.' );
       
   502 /* translators: %s: WordPress version number */
       
   503 __( '<strong>Version %s</strong> addressed some security issues.' );
   165 
   504 
   166 /* translators: 1: WordPress version number, 2: plural number of bugs. */
   505 /* translators: 1: WordPress version number, 2: plural number of bugs. */
   167 _n_noop( '<strong>Version %1$s</strong> addressed %2$s bug.',
   506 _n_noop( '<strong>Version %1$s</strong> addressed %2$s bug.',
   168          '<strong>Version %1$s</strong> addressed %2$s bugs.' );
   507          '<strong>Version %1$s</strong> addressed %2$s bugs.' );
   169 
   508 
   173 
   512 
   174 /* translators: 1: WordPress version number, 2: plural number of bugs. More than one security issue. */
   513 /* translators: 1: WordPress version number, 2: plural number of bugs. More than one security issue. */
   175 _n_noop( '<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.',
   514 _n_noop( '<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.',
   176          '<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.' );
   515          '<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.' );
   177 
   516 
       
   517 /* translators: %s: Codex URL */
   178 __( 'For more information, see <a href="%s">the release notes</a>.' );
   518 __( 'For more information, see <a href="%s">the release notes</a>.' );