Version 4.2

You are here:

On April 23, 2015, WordPress Version 4.2, named for jazz musician Bud Powell, will be released to the public. For more information on this enhancement and bug-fix release, read the WordPress Blog, and see the Changelog for 4.2.

For Version 4.2, the database version (db_version in wp_options) changed to 31532, and the Trac revision was 32282.

  • View Closed Tickets

Highlights 

  • The Finer Points
    • Press This has been completely revamped. Clip it, edit it, publish it. Get familiar with the new and improved Press This. From the Tools 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.
    • Now you can browse and switch installed themes in the Customizer. Browse and preview your installed themes from the Customizer. Make sure the theme looks great with your content, before it debuts on your site.
    • More intuitive plugin update and install from the Plugins Screen. Goodbye boring loading screen, hello smooth and simple plugin updates. Click Update Now and watch the magic happen.
    • 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. Don’t use any of those characters? You can still have fun — emoji are now available in WordPress! Get creative and decorate your content with 💙🐸🐒🍕, and all the many other emoji.
  • For Developers
    • The new wp.a11y.speak() API is available. When a change on the page happens, you can make sure that screen reader users are notified with this helper.
    • The default admin color scheme has been tweaked. Minor, but if you use the WordPress colors directly in your code, you should update the code.
    • When possible, WordPress now will use utf8mb4 as the database character set.
    • Terms shared across multiple taxonomies will now be split into separate terms when one of them is updated.
    • The experimental TinyMCE views API has continued to evolve. As this is an experimental API, use in production is not recommended unless you closely follow the development as breaking changes are possible.
    • Two UI components used by core, spinners and admin notices, have been improved. The change to spinners is a change to how they are added and the change to admin notices is the ability to optionally make them dismissible.
    • Complex queries – Support specific meta_query clauses to be used with orderby, added to WP_Query, WP_Comment_Query, and WP_User_Query

Top ↑

What’s New 

General 

Posts 

Top ↑

Media 

Top ↑

Comments 

Top ↑

Appearance 

Top ↑

Users 

Top ↑

Install Process 

  • Shiny Plugin Updates

Top ↑

Multisite 

Top ↑

Accessibility

  • wp_a11y_speak

Top ↑

Under The Hood 

  • Unit test info here
  • Update readme recommendations.
  • Change WP_Filesystem_FTPext::exists() and WP_Filesystem_ftpsockets::exists() to return true for empty directories.

General 

  • Replace generic “Dear user” greeting in email notifications with a more personalized one.
  • Improved usability on mobile devices
  • Improved behavior when switching between admin color schemes.
  • Update the default admin color scheme for more unity and refinement.
  • RTL improvements
  • Gravatars: Enable HiDPI versions for browsers that support srcset.
  • Improve cache behavior with multisite and plugins

Top ↑

Administration 

  • Themes: Hide admin toolbar on smaller screens, reduce page ‘jump’
  • Star ratings: Color scheme improvements
  • Nav menus: Better JS performance on initial load of edit screen.
  • Settings API: Allow passing a class to add_settings_field() via the $args array.
  • Introduce a logout_redirect filter so the redirect destination can be changed when a user logs out.
  • Dashboard: Add a filter for the query arguments used for the Recent Posts widget.
  • Screen Options: Improve items per page option label. Add a default label “Number of items per page:” to WP_Screen->render_per_page_options() and remove all the existing one-word labels.
  • Remove single-use URL parameters and create canonical link based on new URL.
  • Admin notices: Make (most) core notices dismissible. These no longer return upon refreshing the page when JS is on and working, so users should be able to dismiss them.

Top ↑

Comments 

  • Comments: Show more identifying information for moderation and editing.
  • Move HTML tags for screen reader text into translatable strings.
  • Improve method consistency in WP_Comment_Query. These changes bring WP_Comment_Query syntax closer to that of WP_Query.
  • Improved behavior with screen readers

Top ↑

Customizer 

  • Theme Switcher improvements for handling widgets and functioning on mobile
  • Improved parity of design with other admin pages (such as hiding front page option if there are no pages)
  • Add loading indicators for the Customizer preview.
  • Add audio/video previews for upload controls.
  • Added unit tests

Top ↑

Database 

  • If a site is using the utf8 charset, and their version of MySQL supports utf8mb4, auto-upgrade them to utf8mb4.
  • Improve HHVM compatibility.

Top ↑

Editor 

  • Always refresh the view after updating a gallery.
  • Ensure the image toolbar stays visible when the image is much wider than the editor.

Top ↑

Embeds 

  • Improved safe degredation of oEmbed discovery failures
  • Remove oEmbed support for Revision3.
  • Allow https URLs for Instagram embeds, and switch to https for its oEmbed API endpoint.
  • Add oEmbed support for Kickstarter.
  • Add oEmbed support for Tumblr.

Top ↑

Emoji 

  • Add emoji support, with Twemoji fallback for displaying slugs in wp-admin, when the browser doesn’t natively support emoji.

Top ↑

Feeds 

  • Enable more flexibility for non-URL GUIDs.

Top ↑

Media 

  • Fix display issues with IE8 and below
  • Allow inline editing of width and height parameters while previewing an embed in the media modal.
  • Allow attachments to be detached from their parent in media grid and list modes.

Top ↑

Multisite 

  • Use get_admin_url() to get the correct My Sites URL without calling switch_to_blog() directly.
  • Create the My Sites URL in the context of a user’s primary site.
  • Improve experience when deleting users from a multisite network.

Top ↑

Plugins[edit]  Plugins[edit]

  • Design tweaks to plugin display banners

Top ↑

Posts, Post Types, & Pages[edit]  Posts, Post Types, & Pages[edit]

  • Reduce processing time, database queries, and memory use on sites with a high number of Pages when listing page views.

Top ↑

Press This[edit]  Press This[edit]

  • Add missing access modifiers to WP_Press_This.
  • Add press-this.css to the list of stylesheets that are minified and to list of RTL styles.[31572]
  • Make sure buttons.css is loaded before press-this.css.
  • Use correct URL for update bookmarklet link.
  • Go back to loading the minified bookmarklet content with file_get_contents(). Add Grunt task to minify bookmarklet.js on precommit and update it in /src.
  • Improve handling of the data, both from the bookmarklet and from server-side parsing.
  • Remove unneeded passing of post formats strings to JS. Set the currently selected post format name with jQuery.
  • Remove obsolete help tab in Settings -> Writing.
  • update _limit_url(), use esc_url_raw().
  • Filter and select the content on the PHP side. Then pass only the needed data to JS.
  • Add preview functionality. Opens the preview in a new window or a tab next to the source tab.

Top ↑

Script Loader[edit]  Script Loader[edit]

  • jQuery UI: Add missing dependencies for puff and scale effects.
  • Separate the tests for IE conditional comments support in WP_Scripts.
  • jQuery UI: Add jquery-ui-core as dependency for jquery-ui-progressbar.
  • Load json2.js only in IE7 and older.

Top ↑

Taxonomy[edit]  Taxonomy[edit]

  • Split shared taxonomy terms on term update.

Top ↑

Themes[edit]  Themes[edit]

  • Improved display of themes in admin with color contrast and Chrome compatibility
  • Add feedback for screen readers when search results are changed.

Bundled Themes[edit] 

  • Update CSS rules for .screen-reader-text to be consistent with current accessibility guidelines.
  • Fill in support for screen-reader-text class.
  • Escaping and minor code style issues.
  • add ARIA attributes where applicable
  • Use SSL for theme and author URIs.
  • Update editor styles to better display images and captions in small screens.
  • Update Translations
  • Twenty Fourteen:
    • Make twentyfourteen_post_thumbnail() pluggable.
  • Twenty Fifteen:
    • move RSS icon style rule lower to prevent it from being overridden by other social icon rules.

Top ↑

TinyMCE 

  • Update TinyMCE to 4.1.9.
  • Add wp.a11y.speak() for audible alerts/updates in screen readers.
  • Prepend ​http:// to pasted URLs.
  • Better docs and structure
  • Improve embed previews

Top ↑

Updates, Upgrades, Installs 

  • Shiny Updates: Allow plugins to update ‘in place’

Top ↑

Users 

  • Update the password strength indicator when creating new users.

Top ↑

Bug Fixes 

A total of 231 bugs reported against previous versions of WordPress were fixed.

Top ↑

Classes 

Top ↑

What’s New 

  • Introduce WP_Meta_Query::get_clauses()
  • Introduce WP_Meta_Query::__construct()
  • Introduce WP_Comment_Query::__construct()
  • Introduce WP_Comment_Query::parse_query()
  • Introduce WP_Comment_Query::get_comments()
  • Introduce WP_Comment_Query::parse_orderby()
  • Introduce WP_Comment_Query::parse_order()
  • Introduce WP_Comment_Query::query()
  • Introduce WP_Customize_Widgets::refresh_nonces()
  • Introduce WP_Customize_Widgets::get_captured_option()
  • Introduce WP_Customize_Widgets::filter_customize_dynamic_setting_args()
  • Introduce WP_Customize_Widgets::get_setting_type()
  • Introduce WP_Customize_Widgets::register_settings()
  • Introduce WP_Customize_Themes_Section
  • Introduce WP_Customize_Setting::is_current_blog_previewed()
  • Introduce WP_Customize_Manager::doing_ajax()
  • Introduce WP_Customize_Manager::refresh_nonces()
  • Introduce WP_Customize_Manager::add_dynamic_settings()
  • Introduce WP_Customize_Manager::register_dynamic_settings()
  • Introduce WP_Customize_Manager::set_post_value()
  • Introduce WP_Customize_Manager::customize_preview_loading_style()
  • Introduce WP_Customize_Media_Control::enqueue()
  • Introduce WP_Customize_Media_Control::to_json()
  • Introduce WP_Customize_Media_Control::render_content()
  • Introduce WP_Customize_Media_Control::content_template()
  • Introduce WP_Customize_Theme_Control
  • Introduce WP_Customize_Media_Control
  • Introduce WP_User_Query::parse_order()
  • Introduce WP_User_Query::parse_orderby()
  • Introduce WP_User_Query::prepare_query()
  • Introduce WP_Press_This
  • Introduce wpdb::strip_invalid_text_for_column()
  • Introduce wpdb::process_fields()
  • Introduce wpdb::get_table_from_query()
  • Introduce wpdb::process_field_formats()
  • Introduce wpdb::process_field_charsets()
  • Introduce wpdb::get_table_charset()
  • Introduce wpdb::get_col_charset()
  • Introduce wpdb::check_ascii()
  • Introduce wpdb::strip_invalid_text()
  • Introduce wpdb::strip_invalid_text_from_query()
  • Introduce WP_Query::parse_query()
  • Introduce WP_Users_List_Table::single_row()
  • Introduce ‘childless’ parameter to get_terms().
  • Introduce show_in_quick_edit parameter + filter for register_taxonomy().
  • Introduce setExpectedDeprecated() and setExpectedIncorrectUsage() methods to WP_UnitTestCase.
  • Introduce delete_site meta capability.
  • Introduce ‘value_field’ parameter to wp_dropdown_pages(). This parameter allows developers to choose the post field that will be used to fill in the ‘option’ attribute of the generated dropdown markup.
  • Introduce $autoload parameter to update_option().

Top ↑

Deprecated 

Top ↑

Functions 

Top ↑

What’s New 

  • Introduce wp_get_split_term()
  • Introduce wp_get_split_terms()
  • Introduce wp_attachment_is()
  • Introduce get_avatar_data()
  • Introduce get_avatar_url()
  • Introduce wp_styles()
  • Introduce wp_delete_file()
  • Introduce wp_scripts()
  • Introduce wp_script_add_data()
  • Introduce wp_encode_emoji()
  • Introduce wp_staticize_emoji()
  • Introduce print_emoji_styles()
  • Introduce has_header_image()
  • Introduce options_discussion_add_js()
  • Introduce maybe_convert_table_to_utf8mb4()
  • Introduce wp_install_maybe_enable_pretty_permalinks()
  • Introduce customize_themes_print_templates()
  • Introduce wp_edit_attachments_query_vars()
  • Introduce wp_admin_canonical_url()
  • Introduce wp_media_attach_action()
  • Introduce wp_print_request_filesystem_credentials_modal()
  • Introduce wp_ajax_press_this_add_category()
  • Introduce wp_ajax_update_plugin()
  • Introduce wp_ajax_press_this_save_post()

Top ↑

Deprecated 

Top ↑

Actions & Filters 

  • Added $expiration parameter to pre_set_transient_transient
  • Added $adjacent parameter to adjacent_post_link

Top ↑

New Actions 

  • Introduce split_shared_term

Top ↑

New Filters 

  • Introduce logout_redirect
  • Introduce get_object_terms
  • Introduce the_guid
  • Introduce pre_get_avatar
  • Introduce attachment_url_to_postid
  • Introduce media_embedded_in_content_allowed_types
  • Introduce pre_get_avatar_data
  • Introduce get_avatar_data
  • Introduce get_avatar_url
  • Introduce emoji_url
  • Introduce emoji_ext
  • Introduce widget_nav_menu_args
  • Introduce comment_form_submit_button
  • Introduce comment_form_submit_field
  • Introduce customize_refresh_nonces
  • Introduce customize_dynamic_setting_args
  • Introduce customize_dynamic_setting_class
  • Introduce customize_save_response
  • Introduce category_css_class
  • Introduce pre_wp_prepare_themes_for_js
  • Introduce removable_query_args
  • Introduce dashboard_recent_posts_query_args
  • Introduce enable_press_this_media_discovery
  • Introduce press_this_data
  • Introduce press_this_suggested_html
  • Introduce press_this_save_redirect
  • Introduce quick_edit_show_taxonomy
  • Introduce press_this_redirect_in_parent
  • Introduce disable_months_dropdown
  • Introduce pre_get_table_charset
  • Introduce pre_get_col_charset
  • Introduce get_avatar
  • Introduce post_playlist
  • Introduce post_gallery
  • Introduce login_url
  • Introduce taxonomy_parent_dropdown_args

Top ↑

Deprecated 

Top ↑

External Libraries 

  • Update jQuery UI to 1.11.4.
  • Update jQuery to 1.11.2.
  • Update hoverIntent to 1.8.1.
  • Upgrade to MediaElement 2.16.4

Top ↑

Miscellaneous 

Was this article helpful?
Dislike 0
Views: 15