Use final image URLs and fix a bug in IE11 where images were being cut off.
Props afercia, SergeyBiryukov, ianbelanger, desrosj, audrasjb.
See #46901.
git-svn-id: https://develop.svn.wordpress.org/trunk@45287 602fd350-edb4-49c9-b593-d223f7449a82
- The About page now uses a CSS grid to layout its design, making the page’s structure more obvious and hopefully easier for contributors in the future.
- Removes some code that is no longer used (such as videos, mejs elements, etc.).
- Update images.
- Unnecessary HTML is removed from a string on the page. This was a regression.
- Only users with the correct capability should be instructed to check their site status.
- Fixes the placement of commas.
Reviewed by melchoyce, afercia, jeremyfelt, and desrosj.
Props ryelle, melchoyce, cathibosco1, man4toman, SergeyBiryukov, afercia, ramiy, kjellr, tellyworth, earnjam, andreamiddleton, marybaum.
See #46901.
git-svn-id: https://develop.svn.wordpress.org/trunk@45278 602fd350-edb4-49c9-b593-d223f7449a82
This change restores About page tab heights and fixes bugs with the tab bottom border caused by [44905] and [45243].
Reviewed by SergeyBiryukov and desrosj.
Props ixkaito, ianbelanger, afercia, SergeyBiryukov.
See #46901.
Fixes#47075.
git-svn-id: https://develop.svn.wordpress.org/trunk@45276 602fd350-edb4-49c9-b593-d223f7449a82
When viewing Site Health for a multisite install, there are a few recommendations that are not appropriate and could have negative implications for other sites on the install if the administrator follows the advice provided.
For example, Site Health recommends that inactive plugins and themes for a site should be removed. On a single site install, this is a great recommendation. However, on a multisite install, inactive plugins and themes for one site should not be removed because they could be active for other sites on the network.
This change also disables the `test_wp_version_check_attached()` test for multisite. This test checks for the presence of the `wp_version_check()` function on the `wp_version_check` hook, which is not present for every site on multisite.
Reviewed by jeremyfelt and desrosj.
Props iandunn, Clorith, azaozz, jeremyfelt.
Fixes#47084.
git-svn-id: https://develop.svn.wordpress.org/trunk@45275 602fd350-edb4-49c9-b593-d223f7449a82
It's important for links to have enough information in them in order to be clearly actionable. Destination and purpose should be clear. For example, `debug` isn't nearly as useful as `learn how to debug issues`.
This was signed off on by chanthaboune and jorbin.
Props afercia.
See: #46901.
git-svn-id: https://develop.svn.wordpress.org/trunk@45274 602fd350-edb4-49c9-b593-d223f7449a82
This changes includes placeholder images for now, they'll be replaced by the final images before final release.
Props chanthaboune, melchoyce, karmatosed, pento, marybaum, birgire, earnjam, andreamiddleton.
See #46901.
git-svn-id: https://develop.svn.wordpress.org/trunk@45271 602fd350-edb4-49c9-b593-d223f7449a82
This fixes several bugs in the signature verification code:
Disables signature checks on certain incompatible PHP versions that cause math errors when opcache is enabled;
Prevents a spurious URL and subsequent error when downloading a zip file with query arguments;
Prevents errors triggered by third-party upgrade scripts as per #46615;
Disables signature tests for Plugins, Themes, and Translations, leaving only core updates.
At the 5.2 release the API servers will only provide signatures for core update packages, which is why messages are suppressed for plugins and other package types. Signatures for those other items will become available later.
Props dd32.
See #39309, #46615
git-svn-id: https://develop.svn.wordpress.org/trunk@45262 602fd350-edb4-49c9-b593-d223f7449a82
* Use `$debug_data` instead of `$field['value']` to retrieve the debug data.
* Rename inner variables to avoid overriding the output variable.
Props Clorith, ocean90.
See #46573.
git-svn-id: https://develop.svn.wordpress.org/trunk@45246 602fd350-edb4-49c9-b593-d223f7449a82
Per the documentation standards, the `@global` tag is meant to list PHP globals used within functions or methods.
The code in question uses the variable in global namespace, but does not explicitly declare it.
Props jayupadhyay01, dswebsme.
Fixes#46602.
git-svn-id: https://develop.svn.wordpress.org/trunk@45233 602fd350-edb4-49c9-b593-d223f7449a82
Currently, there are a number of scenarios where `is_block_editor()` (and `WP_Screen::is_block_editor`) would incorrectly indicate block editor support at different points of the loading process. Most notably, checking `is_block_editor` when hooking into the `current_screen` action will always result in `false`, even when the block editor is being loaded. This is because `is_block_editor` is not set to `true` until `edit-form-blocks.php` is included.
This change adds logic to `WP_Screen` to ensure the accuracy of `is_block_editor` on block editor pages earlier in the load process.
While edit screens will now be accurate 100% of the time from `current_screen` on, there are still a few edge cases where `is_block_editor` could contain an incorrect value when creating a new post.
Because a `WP_Post` object is a required parameter for the `replace_editor` filter and `use_block_editor_for_post()` function, `WP_Screen` will fall back to the value returned by `use_block_editor_for_post_type()` for the post being created. To eliminate these edge cases, the `use_block_editor_for_post_type` filter can be used to return the appropriate boolean value to indicate support.
Props Chouby, desrosj, aduth, johnbillion.
Fixes#46195.
git-svn-id: https://develop.svn.wordpress.org/trunk@45224 602fd350-edb4-49c9-b593-d223f7449a82
- Change `recurse_dirsize()` to accept an array of excluded paths.
- Change so we don't calculate the sizes of dirs in wp-content twice.
- Add the size in bytes to the "debug" into.
- Add a custom DOM event after the dir sizes request is done. Can be used by plugins to "daisy chain" more requests.
- Move "WordPress directory location" and "WordPress directory size" to the top in the "Directories and Sizes" section.
- Move "Theme directory location" to the "Active Theme" section.
- Fix labels capitalization.
Props xkon, afercia, Clorith, azaozz.
Fixes#46707.
git-svn-id: https://develop.svn.wordpress.org/trunk@45220 602fd350-edb4-49c9-b593-d223f7449a82
Address an issue since r44947 where calling `wp_enqueue_media` on the front-end would result in a PHP fatal.
Props david.binda.
Fixes#46795.
git-svn-id: https://develop.svn.wordpress.org/trunk@45219 602fd350-edb4-49c9-b593-d223f7449a82
As static markup, the Privacy Policy editor help notice link no longer needs to be translateable with the revisions included in [45174].
Props garrett-eclipse.
Fixes#46098. See [45174].
git-svn-id: https://develop.svn.wordpress.org/trunk@45180 602fd350-edb4-49c9-b593-d223f7449a82
* Use `wp.i18n` to translate JavaScript strings.
* Use `_n()` for proper plural forms support.
Props TimothyBlynJacobs, ocean90, afercia.
Fixes#46683.
git-svn-id: https://develop.svn.wordpress.org/trunk@45178 602fd350-edb4-49c9-b593-d223f7449a82
This improves accessibility, ensuring users utilizing screen readers are informed that the site is in recovery mode.
Props: afercia, TimothyBlynJacobs.
See #46608.
git-svn-id: https://develop.svn.wordpress.org/trunk@45175 602fd350-edb4-49c9-b593-d223f7449a82
Use the Notices data module when viewing the block editor screen for the assigned Privacy Policy page to display a help notice.
Props garrett-eclipse, joen, xkon.
Fixes#46098.
git-svn-id: https://develop.svn.wordpress.org/trunk@45174 602fd350-edb4-49c9-b593-d223f7449a82
The preceding period (`.`) should always be included when referring to an `.htaccess` file.
Props: ianbelanger, garrett-eclipse, subrataemfluence, burhandodhy.
Fixes#46841.
git-svn-id: https://develop.svn.wordpress.org/trunk@45171 602fd350-edb4-49c9-b593-d223f7449a82
This change adds missing actions for several tests. This ensures that the user is provided with a next step, whenever possible.
Also, change the URL displayed in the WordPress.org communication test description to `api.wordpress.org` for accuracy.
Props: garrett-eclipse, Clorith, vaishalipanchal.
Fixes#46734.
git-svn-id: https://develop.svn.wordpress.org/trunk@45170 602fd350-edb4-49c9-b593-d223f7449a82
Label badges for each Site Health test currently display in either red, orange, or green, regardless of if the test passed or failed. This is confusing, as seeing red labels in the “Passed Test” section could alarm users (when really everything is OK and no action is required), and seeing green labels in the “Failed Tests” section would not appropriately encourage the user to take appropriate action.
This change makes several improvements to the label badges:
- Always right align the badges for consistent display.
- Remove background fill for badges. Instead, use a border.
- Use a consistent styling for all tests (passed and failed).
- The text color no longer uses true black (#000000).
- The `.badge.pink` CSS definition has been switched to `.badge.purple`, and the definitions for blue, gray, and green have also been updated to more closely follow the official WordPress color palette.
Props: pbiron, garrett-eclipse, hedgefield, Clorith, xkon, melchoyce, mdwolinski, alexdenning.
Fixes#46623.
git-svn-id: https://develop.svn.wordpress.org/trunk@45169 602fd350-edb4-49c9-b593-d223f7449a82
Previously, only the site’s locale was displayed in the Site Health debug information. Moving forward, both the site’s default locale and the user’s locale will be specified.
This change also removes the `@param` tag for `WP_Debug_Data::debug_data()`. This parameter was previously removed in [45156].
Props: mukesh27, ianbelanger, Clorith, desrosj.
Fixes#46803.
git-svn-id: https://develop.svn.wordpress.org/trunk@45166 602fd350-edb4-49c9-b593-d223f7449a82
In [44937] and [44939], changes were made to prevent a user from updating any plugin that requires a higher version of PHP than the site is running. This compliments those changes to also prevent plugins from being auto updated when the same requirements are not met.
Props: TimothyBlynJacobs, davidbaumwald.
Fixes#46613.
git-svn-id: https://develop.svn.wordpress.org/trunk@45165 602fd350-edb4-49c9-b593-d223f7449a82
Clarifies that `WP_DEBUG` can cause `WP_DEBUG_DISPLAY` to be enabled,
and uses the constants themselves in related translation contexts.
Props mukesh27, ocean90, clorith, SergeyBiryukov, mikeschroder.
Fixes#46877.
git-svn-id: https://develop.svn.wordpress.org/trunk@45164 602fd350-edb4-49c9-b593-d223f7449a82
Brings parity with the changes for the Media Views introduced in [44900].
- moves the alt text field to the top as first field
- adds an explanatory text with a link pointing to the W3C "alt decision tree" tutorial
- adds `aria-describedby` to target the explanatory text
- adjusts the CSS and indentation
Props chetan200891.
Fixes#46875.
git-svn-id: https://develop.svn.wordpress.org/trunk@45158 602fd350-edb4-49c9-b593-d223f7449a82
The right padding added in [44895] needs to be set only on the input fields in the Reset Password screen and exclude other login screens.
Amends [44895].
Fixes#42853.
git-svn-id: https://develop.svn.wordpress.org/trunk@45157 602fd350-edb4-49c9-b593-d223f7449a82
- More verbose set used to generate the admin page.
- More concise set that is copied when clicking the "Copy the site info" button intended mostly for support and developers.
Props xkon, azaozz.
Fixes#46726.
git-svn-id: https://develop.svn.wordpress.org/trunk@45156 602fd350-edb4-49c9-b593-d223f7449a82
This lack of action could cause an expired nonce to end up in the URL.
Props garrett-eclipse, saimonh, xkon.
Fixes#44047.
git-svn-id: https://develop.svn.wordpress.org/trunk@45149 602fd350-edb4-49c9-b593-d223f7449a82
An admin may download an export to check that it's all correct, but this action shouldn't mark the request as complete.
Props garrett-eclipse, JoshuaWold, birgire.
Fixes#44644.
git-svn-id: https://develop.svn.wordpress.org/trunk@45148 602fd350-edb4-49c9-b593-d223f7449a82
This notification was a little too intrustive, and suffered from being difficult to dismiss.
Props garrett-eclipse, xkon, ianbelanger.
Fixes#46819.
git-svn-id: https://develop.svn.wordpress.org/trunk@45142 602fd350-edb4-49c9-b593-d223f7449a82
This change brings more coherence between the subject lines of the various emails WordPress will send.
Props ramiy, pento.
Fixes#37940.
git-svn-id: https://develop.svn.wordpress.org/trunk@45137 602fd350-edb4-49c9-b593-d223f7449a82
The backticks ensure that the data is formatted accordingly on pasting whenever possible.
Props Clorith.
Fixes#46809.
git-svn-id: https://develop.svn.wordpress.org/trunk@45119 602fd350-edb4-49c9-b593-d223f7449a82
This changeset introduces several changes around usability when recovery mode is active:
* Display a notice in the admin clarifying that the user is in recovery mode.
* Use a highlight color for the admin bar link to exit recovery mode.
* Exit recovery mode automatically when logging out.
* Include a recovery mode indicator in the title tag.
Props aandrewdixon, azaozz, dhanukanuwan, flixos90, henrywright, karmatosed, mapk, melchoyce, spacedmonkey, TimothyBlynJacobs, tinkerbelly.
See #46608.
git-svn-id: https://develop.svn.wordpress.org/trunk@45117 602fd350-edb4-49c9-b593-d223f7449a82
With this change, fatal errors recorded before a plugin was deactivated or a theme was switched away from do not persist. This ensures that re-enabling it re-checks for fatal errors correctly.
Props aandrewdixon, dhanukanuwan, henrywright.
Fixes#46812.
git-svn-id: https://develop.svn.wordpress.org/trunk@45115 602fd350-edb4-49c9-b593-d223f7449a82
Prior to this change, resuming or activating a plugin or theme that is still broken would result in a redirect loop if in recovery mode. If outside recovery mode, it would cause the error template to be displayed.
Furthermore this applies to breaking a plugin or theme when editing from the backend.
Props aandrewdixon, azaozz, dhanukanuwan, henrywright, ocean90, ohiosierra, PandelisZ, xkon.
Fixes#46045, #46751.
git-svn-id: https://develop.svn.wordpress.org/trunk@45114 602fd350-edb4-49c9-b593-d223f7449a82
This includes version numbers and signature counts in error reports, to help diagnose isolated failures that have no apparent cause.
Props dd32.
See #39309.
git-svn-id: https://develop.svn.wordpress.org/trunk@45112 602fd350-edb4-49c9-b593-d223f7449a82
This change switches to using `get_user_locale()` when adding the language to the Site Health debug information to ensure the user’s locale preference is reflected.
Also, `function_exists()` checks for `switch_to_locale()` and `restore_previous_locale()` were required in the plugin to support older versions of WordPress, but they are not required in core/
Props: Clorith, desrosj.
Fixes#46694.
git-svn-id: https://develop.svn.wordpress.org/trunk@45110 602fd350-edb4-49c9-b593-d223f7449a82
- Prevent fatal errors from timeouts on the Tools => Site Health => Info tab.
- Use the `get_dirsize()` and `recurse_dirsize()` functions to calculate directory sizes. The results are cached.
- Introduce "timeout protection" in `recurse_dirsize()`.
Props pento, Clorith, xkon, afercia, jeremyfelt, azaozz.
Fixes#46645.
git-svn-id: https://develop.svn.wordpress.org/trunk@45104 602fd350-edb4-49c9-b593-d223f7449a82
* Split plural strings with multiple sentences to avoid duplicating translations.
* Decouple strings where the singular and plural form are not just the same string with different numbers, but essentially two different strings.
* Use an established pattern for numbered placeholders in translator comments.
* Replace constants in translatable strings with placeholders, mark them as code.
* Make sure sentences are translated as a whole, not as separate string parts.
* Remove unnecessary context and escaping.
Props ocean90, SergeyBiryukov.
See #46683.
git-svn-id: https://develop.svn.wordpress.org/trunk@45099 602fd350-edb4-49c9-b593-d223f7449a82
- removes the definition list and uses the markup from the ARIA Authoring Practices example
- removes incorrect ARIA roles
- avoids ARIA landmark regions proliferation
Props mukesh27 for the initial patch.
Fixes#46714.
git-svn-id: https://develop.svn.wordpress.org/trunk@45087 602fd350-edb4-49c9-b593-d223f7449a82
Rename `$page` and `$id` variables to `$screen_id` and `$box_id` for clarity.
Props sharifkiberu, DrewAPicture.
Fixes#45179.
git-svn-id: https://develop.svn.wordpress.org/trunk@45083 602fd350-edb4-49c9-b593-d223f7449a82
- displays an error notice when JavaScript is off, consistently with other admin screens that depend on JavaScript
- keeps the main `h1` visible
Minor clean-ups:
- makes code indentation consistent in `site-health.php` and `site-health-info.php`
- removes a couple of `<div class="wp-clearfix"></div>` as that's not the intended usage of `wp-clearfix` (those divs didn't do anything anyways)
Fixes#46717.
git-svn-id: https://develop.svn.wordpress.org/trunk@45076 602fd350-edb4-49c9-b593-d223f7449a82
Adds `role="presentation"` to the `<table>` elements used in the Site Health reports.
Ideally, HTML tables should be used for tabular data. When tables are used for layout purposes, it's important to remove any native semantics so that assistive technologies can correctly announce the table content in a linearized fashion.
Props chetan200891.
Fixes#46725.
git-svn-id: https://develop.svn.wordpress.org/trunk@45075 602fd350-edb4-49c9-b593-d223f7449a82
Avoids the Site Health pages header layout to break when the Hello Dolly plugin or other floated content is printed out at the top of the page.
Props xkon.
Fixes#46650.
git-svn-id: https://develop.svn.wordpress.org/trunk@45072 602fd350-edb4-49c9-b593-d223f7449a82
The document `<title>` gives a name to a web document. In the context of the WordPress admin, a unique, meaningful, title is important for various reasons:
- it allows browser's history to store meaningful entries
- when multiple browser's tabs are open, it allows users to better identify the tab content
- it's the first thing screen readers announce when navigating to a web page, thus helping users to identify the nature of the page content
Props chetan200891, mukesh27.
Fixes#46699.
git-svn-id: https://develop.svn.wordpress.org/trunk@45070 602fd350-edb4-49c9-b593-d223f7449a82
In particular, this allows downgrading from WordPress 5.2 to 5.1.1, if sites wish to opt out of the beta.
Props dd32.
See #46615.
git-svn-id: https://develop.svn.wordpress.org/trunk@45046 602fd350-edb4-49c9-b593-d223f7449a82
The previous method for copying the debug report to the clipboard involved having a hidden `<textarea>`, but this shows up in screen readers and can't be reliably hidden.
To work around this, the button now uses the `clipboard.js` library, which automatically handles browser differences in the Clipboard API, and can load the text to copy from a `data-` attribute on the button.
Props pento, hedgefield, afercia.
Fixes#46647.
git-svn-id: https://develop.svn.wordpress.org/trunk@45044 602fd350-edb4-49c9-b593-d223f7449a82
The Site Health score indicator isn't exactly a "progress bar" and shouldn't use ARIA roles and properties related to progress bars. Also, some browser / screen reader combinations don't announce the score properly.
- removes any ARIA
- adds a screen-reader-text "Current health score:"
- adds `role="img" aria-hidden="true" focusable="false"` to the SVG
- reduces CSS specificity simplifying unnecessary overqualified selectors
- fixes the syntax for ::after and ::before (double colon)
Fixes#46621.
git-svn-id: https://develop.svn.wordpress.org/trunk@45041 602fd350-edb4-49c9-b593-d223f7449a82
The Site Health tool serves two purposes:
- Provide site owners with information to improve the performance, reliability, and security of their site.
- Collect comprehensive debug information about the site.
By encouraging site owners to maintain their site and adhere to modern best practices, we ultimately improve the software hygeine of both the WordPress ecosystem, and the open internet as a whole.
Props Clorith, hedgefield, melchoyce, xkon, karmatosed, jordesign, earnjam, ianbelanger, wpscholar, desrosj, pedromendonca, peterbooker, jcastaneda, garyj, soean, pento, timothyblynjacobs, zodiac1978, dgroddick, garrett-eclipse, netweb, tobifjellner, pixolin, afercia, joedolson, birgire.
See #46573.
git-svn-id: https://develop.svn.wordpress.org/trunk@44986 602fd350-edb4-49c9-b593-d223f7449a82
Introduce `validate_plugin_requirements()` for validating a plugin's WordPress and PHP version requirements.
Introduce `wp_is_wp_compatible()` and `wp_is_php_compatible()` for checking compatibility with the current WordPress or PHP version.
Props afragen, joyously, DrewAPicture, TimothyBlynJacobs, desrosj, flixos90, SergeyBiryukov.
See #43992.
git-svn-id: https://develop.svn.wordpress.org/trunk@44978 602fd350-edb4-49c9-b593-d223f7449a82
In the network admin user table on multisite installs (`WP_MS_Users_List_Table`), this filter allows the classes for the `<span>` tag surrounding each site link to be modified.
Props kraftbj, flixos90, johnjamesjacoby.
Fixes#41146.
git-svn-id: https://develop.svn.wordpress.org/trunk@44977 602fd350-edb4-49c9-b593-d223f7449a82
Using the new fatal handler introduced in [44962], an email is sent to the admin when a fatal error occurs. This email includes a secret link to enter recovery mode. When clicked, the link will be validated and on success a cookie will be placed on the client, enabling recovery mode for that user. This functionality is executed early before plugins and themes are loaded, in order to be unaffected by potential fatal errors these might be causing.
When in recovery mode, broken plugins and themes will be paused for that client, so that they are able to access the admin backend despite of these errors. They are notified about the broken extensions and the errors caused, and can then decide whether they would like to temporarily deactivate the extension or fix the problem and resume the extension.
A link in the admin bar allows the client to exit recovery mode.
Props timothyblynjacobs, afragen, flixos90, nerrad, miss_jwo, schlessera, spacedmonkey, swissspidy.
Fixes#46130, #44458.
git-svn-id: https://develop.svn.wordpress.org/trunk@44973 602fd350-edb4-49c9-b593-d223f7449a82