WordPress/wp-admin/includes
Drew Jaynes d829ec4cf2 Docs: Provide best practice guidance for achieving parity between $menu_slug values supplied when adding menu and submenu pages, and later trying to compare those initial values against sanitized screen IDs derived from $menu_slug.
At the heart of the matter, the `$menu_slug` parameter in `add_menu_page()` and `add_submenu_page()` is not sanitized with `sanitize_key()`. When the screen object is later built for the admin page, the screen ID is derived from that `$menu_slug` value, though passed through `sanitize_key()`, which can produce unexpected results in comparison check.

Changing the sanitization code to provide actual parity is out of the question at this juncture, so updating the docs to describe how to avoid this edge case is the next best option.

Props GregRoss.
Fixes #35305.

Built from https://develop.svn.wordpress.org/trunk@40967


git-svn-id: http://core.svn.wordpress.org/trunk@40817 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-06-30 04:18:43 +00:00
..
admin-filters.php Plugins: Use install_plugins_upload action to print the upload form. 2016-07-31 18:11:29 +00:00
admin.php Bootstrap: do not go gentle into that good night r38411, r38412, and parts of r38389. 2016-08-31 16:31:29 +00:00
ajax-actions.php Dashboard: Improve the handling of locations determined by geolocating the IP address and by entering a city name. Fix couple of edge cases, and some names. 2017-05-19 05:48:42 +00:00
bookmark.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00
class-automatic-upgrader-skin.php Filesystem API: Change the default value for the $context parameter of get_filesystem_method() and request_filesystem_credentials() to an empty string. 2016-07-22 12:10:27 +00:00
class-bulk-plugin-upgrader-skin.php Docs: Cross-reference parent classes in DocBlocks for upgrader classes moved to their own files in 4.6 2016-07-09 13:45:33 +00:00
class-bulk-theme-upgrader-skin.php Docs: Cross-reference parent classes in DocBlocks for upgrader classes moved to their own files in 4.6 2016-07-09 13:45:33 +00:00
class-bulk-upgrader-skin.php Accessibility: Change the "Show details" links in the update core screen to buttons. 2017-05-11 23:50:41 +00:00
class-core-upgrader.php Docs: Fix typo in a comment in Core_Upgrader::upgrade(). 2016-07-08 13:19:30 +00:00
class-file-upload-upgrader.php Upgrade/Install: Sanitize file name in File_Upload_Upgrader. 2016-09-06 17:26:31 +00:00
class-ftp-pure.php FTP: ensure that there is only one class named ftp, which is what is expected in the loading of this arcane library. This ensures that an autoload generator, something along the lines of Composer, won't hiccup when it gets to these files. 2016-08-26 18:47:29 +00:00
class-ftp-sockets.php FTP: ensure that there is only one class named ftp, which is what is expected in the loading of this arcane library. This ensures that an autoload generator, something along the lines of Composer, won't hiccup when it gets to these files. 2016-08-26 18:47:29 +00:00
class-ftp.php Bootstrap: do not go gentle into that good night r38411, r38412, and parts of r38389. 2016-08-31 16:31:29 +00:00
class-language-pack-upgrader-skin.php Docs: Cross-reference parent classes in DocBlocks for upgrader classes moved to their own files in 4.6 2016-07-09 13:45:33 +00:00
class-language-pack-upgrader.php Upgrade/Install: After [37687], fix the number of params passed to the upgrade hooks. 2016-08-28 10:04:30 +00:00
class-pclzip.php Filesystem API: Ensure memory limit calculations by PclZip are using integers. 2016-07-19 11:55:30 +00:00
class-plugin-installer-skin.php Plugins: style the primary action link in the non-js "Installing Plugin" page. 2016-09-17 16:23:27 +00:00
class-plugin-upgrader-skin.php Docs: Cross-reference parent classes in DocBlocks for upgrader classes moved to their own files in 4.6 2016-07-09 13:45:33 +00:00
class-plugin-upgrader.php Cron API: Add a new wp_doing_cron() helper function. 2017-05-06 14:30:40 +00:00
class-theme-installer-skin.php Docs: Cross-reference parent classes in DocBlocks for upgrader classes moved to their own files in 4.6 2016-07-09 13:45:33 +00:00
class-theme-upgrader-skin.php Docs: Cross-reference parent classes in DocBlocks for upgrader classes moved to their own files in 4.6 2016-07-09 13:45:33 +00:00
class-theme-upgrader.php Updates: Allow background updates to update multiple plugins/themes in the same request. 2016-11-13 09:53:32 +00:00
class-walker-category-checklist.php Taxonomy: Fix typo in $aria_checked variable name in Walker_Category_Checklist::start_el(). 2017-03-29 11:22:47 +00:00
class-walker-nav-menu-checklist.php Docs: Walker_Nav_Menu_Checklist and Walker_Nav_Menu_Edit are part of the Navigation Menu API, but intended for use in the scope of administration. 2015-10-15 17:26:24 +00:00
class-walker-nav-menu-edit.php Accessibility: Improve the UI controls to move the Menu items. 2016-10-10 16:26:12 +00:00
class-wp-ajax-upgrader-skin.php Upgrade/Install: Make some install/update failures more verbose. 2016-08-04 22:18:30 +00:00
class-wp-automatic-updater.php Upgrade/Install: After [40394], rename wp_disallow_file_mods() to wp_is_file_mod_allowed(). 2017-05-11 19:24:41 +00:00
class-wp-comments-list-table.php List Tables: Hide 'Empty Trash' and 'Empty Spam' buttons when view is already empty. 2017-03-17 16:54:42 +00:00
class-wp-community-events.php I18N: Correct translator comment for response error message in WP_Community_Events::get_events(). 2017-06-15 12:07:41 +00:00
class-wp-filesystem-base.php Docs: Use 3-digit, x.x.x-style semantic versioning for _doing_it_wrong(), _deprecated_function(), _deprecated_argument(), and _deprecated_file() throughout core. 2016-07-06 12:40:29 +00:00
class-wp-filesystem-direct.php Add @access docs to class-wp-filesystem-* files. 2015-09-10 01:21:24 +00:00
class-wp-filesystem-ftpext.php Filesystem API: Cleanup temporary file when the temporary file couldn't be opened. 2016-07-18 19:43:30 +00:00
class-wp-filesystem-ftpsockets.php Filesystem: Add return statement to WP_Filesystem_ftpsockets->rmdir 2016-12-28 03:52:42 +00:00
class-wp-filesystem-ssh2.php Docs: Add missing return descriptions for WP_Filesystem_SSH2::chown() and WP_Filesystem_SSH2::run_command(). 2016-04-21 02:38:29 +00:00
class-wp-importer.php Multisite: Replace get_blog_details() in WP_Importer::set_blog() with get_site(). 2016-10-19 05:45:31 +00:00
class-wp-internal-pointers.php Docs: Clarify the file header summary for wp-admin/includes/class-wp-internal-pointers.php, introduced in [34241]. 2015-09-22 14:35:25 +00:00
class-wp-links-list-table.php Administration: Improve the usage of the button CSS classes. 2016-09-28 19:54:28 +00:00
class-wp-list-table-compat.php List Tables: move _WP_List_Table_Compat into its own file. 2016-08-26 22:23:29 +00:00
class-wp-list-table.php Administration: In WP_List_Table::comments_bubble(), replace the mdash with its HTML entity for consistency with the similar code in other list tables. 2017-06-29 00:04:43 +00:00
class-wp-media-list-table.php Administration: Fix some HTML validation errors. 2017-05-23 17:58:43 +00:00
class-wp-ms-sites-list-table.php Administration: Fix some HTML validation errors. 2017-05-23 17:58:43 +00:00
class-wp-ms-themes-list-table.php Upgrade/Install: Refresh update counts after page load. 2016-10-19 10:27:29 +00:00
class-wp-ms-users-list-table.php Administration: In user list tables, display a dash instead of a blank space and add "Unknown" as a screen reader text when the user's first name and last name are blank. 2017-06-27 00:27:39 +00:00
class-wp-plugin-install-list-table.php Plugins: Display 'Less Than 10' active installs of a plugin rather than '0+' active installs. 2016-10-05 03:33:29 +00:00
class-wp-plugins-list-table.php Plugins: Correct the since docs for the various plugin_action_links filters. 2016-10-31 19:38:47 +00:00
class-wp-post-comments-list-table.php Docs: Add missing file headers to the list table classes and adjust class DocBlocks accordingly. 2015-10-17 15:13:25 +00:00
class-wp-posts-list-table.php Docs: Add missing closing quote for 'Restore' in post_row_actions and page_row_actions filters documentation. 2017-06-07 23:11:43 +00:00
class-wp-press-this.php Press This: Verify intent before fetching in-page resources using Press This. 2017-03-06 13:55:41 +00:00
class-wp-screen.php Media: Ensure WP_Screen sets post type on wp-admin/upload.php. 2017-05-19 18:29:42 +00:00
class-wp-site-icon.php Site Icon: There is no good reason for class-wp-site-icon.php to drop a global instance of itself whenever the file is loaded. The lone use of the global instance of WP_Site_Icon is in an AJAX action that provides virtually no way to override - the file is loaded immediately before the global is used. 2016-08-25 19:09:35 +00:00
class-wp-terms-list-table.php Administration: In taxonomy list tables, display a dash instead of a blank space and add "No description" as a screen reader text when the term description is blank. 2017-06-27 00:34:41 +00:00
class-wp-theme-install-list-table.php Docs: Notate the incoming $theme object members for WP_Theme_Install_List_Table::single_row() as a proper hash notation. 2016-11-08 20:16:31 +00:00
class-wp-themes-list-table.php Multisite: use get_current_blog_id() where applicable, in lieu of plucking the $blog_id global from outer space. 2016-08-31 04:55:54 +00:00
class-wp-upgrader-skin.php Filesystem API: Change the default value for the $context parameter of get_filesystem_method() and request_filesystem_credentials() to an empty string. 2016-07-22 12:10:27 +00:00
class-wp-upgrader-skins.php Load: Re-add class-wp-upgrader-skins.php. 2016-12-03 03:40:41 +00:00
class-wp-upgrader.php Docs: Correct a comment and @return entry in WP_Upgrader::create_lock(). 2016-09-18 20:16:29 +00:00
class-wp-users-list-table.php Administration: In user list tables, display a dash instead of a blank space and add "Unknown" as a screen reader text when the user's first name and last name are blank. 2017-06-27 00:27:39 +00:00
comment.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00
continents-cities.php I18N: Update list of continents and cities for the timezone selection. 2016-05-24 23:24:27 +00:00
credits.php I18N: Introduce a user-specific language setting. 2016-10-03 07:04:29 +00:00
dashboard.php Docs: Replace a variety of http links referenced in inline docs with their https counterparts (where possible). 2017-06-25 22:06:41 +00:00
deprecated.php Docs: Standardize and add missing deprecation notations in DocBlocks for the following functions: 2017-06-22 17:48:45 +00:00
edit-tag-messages.php Docs: Standardize hook docs in wp-admin/* to use third-person singular verbs per the inline documentation standards for PHP. 2016-05-22 18:01:30 +00:00
export.php Docs: Add missing backtick character in export_wp() DocBlock. 2017-06-27 00:58:41 +00:00
file.php Add nonce for updating file system credentials. 2017-05-16 14:48:44 +00:00
image-edit.php Docs: Standardize and add missing deprecation notations in DocBlocks for the following functions: 2017-06-22 17:48:45 +00:00
image.php Media: Keep PDF previews from overwriting files. 2017-02-27 15:39:47 +00:00
import.php I18N: Introduce a user-specific language setting. 2016-10-03 07:04:29 +00:00
list-table.php Bootstrap: do not go gentle into that good night r38411, r38412, and parts of r38389. 2016-08-31 16:31:29 +00:00
media.php Media: Optionally return attachment id from media_sideload_image(). 2017-05-09 23:26:42 +00:00
menu.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00
meta-boxes.php Accessibility: Add "(opens in a new window)" screen reader text to the "News-Nearby Events" dashboard widget footer links. 2017-05-11 22:47:41 +00:00
misc.php Docs: Correct a number of typos/spelling mistakes in inline comments. 2016-10-25 00:38:35 +00:00
ms-admin-filters.php Users: Display the new user email notice in user admin too. 2016-02-07 13:54:25 +00:00
ms-deprecated.php Docs: Standardize and add missing deprecation notations in DocBlocks for the following functions: 2017-06-22 17:48:45 +00:00
ms.php Mail: Ensure entities are decoded in email change notifications on Multisite. 2017-05-11 19:15:44 +00:00
nav-menu.php Accessibility: Improve the Menus post type meta boxes pagination links. 2016-10-27 15:23:31 +00:00
network.php I18N: Replace unnecessary context with a translator comment for %s Sites string in network_step1(). 2016-08-23 00:17:27 +00:00
noop.php Docs: Add missing file header to wp-admin/includes/noop.php, introduced in [34037]. 2017-01-25 23:10:43 +00:00
options.php Accessibility: Avoid a keyboard trap on the permalink custom structure setting. 2017-06-12 14:09:43 +00:00
plugin-install.php Plugins: Don't strip line breaks and blockquote elements in the plugin information modal. 2017-05-11 19:16:42 +00:00
plugin.php Docs: Provide best practice guidance for achieving parity between $menu_slug values supplied when adding menu and submenu pages, and later trying to compare those initial values against sanitized screen IDs derived from $menu_slug. 2017-06-30 04:18:43 +00:00
post.php Posts, Post Types: In wp_check_post_lock(), check if the user with lock exists and return false otherwise. 2017-04-13 23:09:43 +00:00
revision.php I18N: Correct various instances of incorrect usage of esc_attr_e(). 2016-08-28 18:06:30 +00:00
schema.php Multisite: Replace unnecessary is_super_admin() check when setting up the initial network. 2017-04-10 22:00:43 +00:00
screen.php Screen API: After [37972], ensure that $box['args'] is an array before trying to access __widget_basename. 2016-07-07 16:39:29 +00:00
taxonomy.php Store only term IDs in object term relationships caches. 2016-05-26 04:50:27 +00:00
template.php Docs: Provide best practice guidance for achieving parity between $menu_slug values supplied when adding menu and submenu pages, and later trying to compare those initial values against sanitized screen IDs derived from $menu_slug. 2017-06-30 04:18:43 +00:00
theme-install.php Administration: Improve the usage of the button CSS classes. 2016-09-28 19:54:28 +00:00
theme.php Customize: Prevent links to customize.php from being generated which have query vars from wp_removable_query_args() present. 2017-03-22 23:04:42 +00:00
translation-install.php Upgrade/Install: After [40394], rename wp_disallow_file_mods() to wp_is_file_mod_allowed(). 2017-05-11 19:24:41 +00:00
update-core.php Upgrade: Add wp-includes/js/tinymce/plugins/wpembed to $_old_files. 2017-06-07 21:32:44 +00:00
update.php Cron API: Add a new wp_doing_cron() helper function. 2017-05-06 14:30:40 +00:00
upgrade.php Multisite: Revert indentation of the sample page content added in [40296]. 2017-06-01 09:16:40 +00:00
user.php Users: Use more appropriate HTTP status codes for errors relating to user management. 2017-06-25 18:46:44 +00:00
widgets.php Accessibility: Make some Widgets buttons real buttons. 2017-04-19 21:14:44 +00:00