WordPress.org

Codex

Interested in functions, hooks, classes, or methods? Check out the new WordPress Code Reference!

Version 4.9.3

On 5 February, 2018, WordPress 4.9.3 was released to the public.

See also: other WordPress Versions.

Installation/Update Information

To download WordPress 4.9.3, update automatically from the Dashboard > Updates menu in your site's admin area or visit https://wordpress.org/download/release-archive/.

For step-by-step instructions on installing and updating WordPress:

If you are new to WordPress, we recommend that you begin with the following:

Summary

From the WordPress 4.9.3 release post: This maintenance release fixes 34 bugs in 4.9, including fixes for Customizer changesets, widgets, visual editor, and PHP 7.2 compatibility.

WordPress 4.9.3 contains 34 bug fixes.

Canonical URLs

  • #15397 - Redirect to the correct URL when the post date changes.

Code Editor

  • #42802 - Disable attr-value-double-quotes HTMLHint rule since too strict for user input.
  • #42586 - Add Ctrl/Cmd+F as aliases for persistent search for more intuitive behaviour.
  • #42850 - Replaces JSHint with esprima.

Customize

  • #42497 - Improve accuracy of message displayed when accessing Customizer with a changeset that is already published or trashed.
  • #42674 - Prevent showing SFTP theme installation notification in multisite when user cannot install themes.
  • #42655 - Use changeset-specific "locked" messages when branching is enabled.
  • #42975 - Prevent frontend previewing from causing a customization lock on the changeset.
  • #42686 - Let default status for Customizer be draft if user does not have capability to publish.
  • #42565 - Correct "Add Items" button reference in help text shown after creating a new menu.
  • #42450 - Ensure customize_autosaved requests only use revision of logged-in user.
  • #42991 - Include nav menu item for Home custom link in search results for "Home".
  • #42495 - Ensure media playlists get initialized after selective refresh; expose new wp.playlist.initialize() API.
  • #42658 - Ensure heartbeat keeps changeset locked when in branching mode.

Email

  • #42693 - Don't send notifications for site or network admin email address change to the default 'admin_email' value.

Emoji

  • #42862 - Update Twemoji to 2.4.0.
  • #42862 - Update emoji base URL in _print_emoji_detection_script() and wp_staticize_emoji().

Media

  • #43088 - Restore white background of the content area in media modal.
  • #42643 - Introduce a custom error handler for MediaElement.js to display a download link if a FLV file cannot be rendered for any reason.
  • #42646 - Store and reuse image cropper ratio settings if available, instead of overwriting.
  • #42646 - Fix JSHint error after #42595.
  • #39859 - Avoid page scrolling when opening the media modal.

Plugins

  • #43016 - Update review filter links in Details modal.

REST API

  • #42597 - Add existing term_id to the error data object when attempting to create a duplicate term.

Role/Capability

  • #42697 - Make install_languages capability check less restrictive.

TinyMCE

  • #43090 - On the toolbar drop-downs apply overflow style on the actual element with text.
  • #42908 - When keeping the scroll position treat all shortcodes as preview-able.
  • #42722 - Backport bug fixes to NotificationManager, WindowManager and MultiRange.

Upgrade/Install

  • #43005 - In postMessage events handler, check for message object existence before checking its action property.
  • #43103 - Only trigger Background Update processes from within the core update check when a core autoupdate is on offer.

Widget

  • #43003 - Prevent checkValidity from running on a form when widget is first adding to sidebar.
  • #42740 - Allow relative/partial URLs in Image Widget's link field.
  • #43125 - Ensure media is explicitly enqueued from Text widget in case Media widgets are unregistered.

WPDB

  • #43109 - Use a PCRE syntax which supports PCRE compiled between 2003 and 2006.

List of Files Revised

wp-admin/about.php
wp-admin/css/widgets.css
wp-admin/customize.php
wp-admin/includes/plugin-install.php
wp-admin/js/customize-controls.js
wp-admin/js/editor.js
wp-admin/js/updates.js
wp-admin/js/widgets.js
wp-admin/network/settings.php
wp-admin/network/site-new.php
wp-admin/options-general.php
wp-admin/options.php
wp-includes/capabilities.php
wp-includes/class-wp-customize-manager.php
wp-includes/class-wp-customize-nav-menus.php
wp-includes/class-wp-query.php
wp-includes/css/editor.css
wp-includes/customize/class-wp-customize-nav-menu-control.php
wp-includes/default-filters.php
wp-includes/formatting.php
wp-includes/functions.php
wp-includes/general-template.php
wp-includes/js/codemirror/jshint.js
wp-includes/js/customize-selective-refresh.js
wp-includes/js/media-views.js
wp-includes/js/media/views/cropper.js
wp-includes/js/media/views/modal.js
wp-includes/js/mediaelement/wp-mediaelement.js
wp-includes/js/mediaelement/wp-playlist.js
wp-includes/js/tinymce/tinymce.js
wp-includes/js/tinymce/tinymce.min.js
wp-includes/js/twemoji.js
wp-includes/js/wp-emoji-loader.js
wp-includes/media-template.php
wp-includes/ms-functions.php
wp-includes/post.php
wp-includes/query.php
wp-includes/rest-api/endpoints/class-wp-rest-terms-controller.php
wp-includes/script-loader.php
wp-includes/update.php
wp-includes/version.php
wp-includes/widgets/class-wp-widget-media-image.php
wp-includes/widgets/class-wp-widget-text.php
wp-includes/wp-db.php