The WordPress coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. development team builds WordPress! Follow this site for general updates, status reports, and the occasional code debate. There’s lots of ways to contribute:
Found a bugbugA bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority.?Create a ticket in the bug tracker.
This guide shares more of the in-depth changes that you will find in 6.2 and is published with Release Candidaterelease candidateOne of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). 1 to help inform WordPress developers, extenders and others.
In TracTracAn open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress., there are almost 300 tickets: 110 of which are enhancements and feature requests, 166 bug fixes, and 20 other blessed tasks. This time there are 28 tickets with a focus on performance, 15 for accessibility, and 18 for modernizing code and applying coding standards. GutenbergGutenbergThe Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/’s GitHubGitHubGitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ repo brings 1645 pull requests: 292 enhancements, 354 bugbugA bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. fixes and 30 accessibilityAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility) improvements.
Changes in 6.2 is spread across 44 coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. components. Below is the breakdown of the most important ones.
BlockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. Editor
Twenty Twelve to Twenty Seventeen now includes font files in the theme folder instead of loading fonts from a remote source (Google Fonts). This update ensures that the themes follow current recommendations for fonts from a privacy perspective.
In WordPress 6.2, the I18ni18nInternationalization, or the act of writing and preparing code to be fully translatable into other languages. Also see localization. Often written with a lowercase i so it is not confused with a lowercase L or the numeral 1. Often an acquired skill. component gets a new wrapper function and it will, also, be easier to switch to a user’s localeLocaleA locale is a combination of language and regional dialect. Usually locales correspond to countries, as is the case with Portuguese (Portugal) and Portuguese (Brazil). Other examples of locales include Canadian English and U.S. English., to name just a couple of improvements. Find the rest in the dedicated dev notedev noteEach important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase..
Filesystem APIAPIAn API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
If you’ve been using the copy_dir() function for moving directories, you will be happy to find a new, move_dir(), function that comes with WordPress 6.2.
wp_opcache_invalidate() invalidates the OPcache for individual PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher files after overwriting. In #57375wp_opcache_invalidate_directory() was added to recursively invalidate the OPcache for PHP files after overwriting. The function accepts a single argument, (string) $dir, pointing to the directory containing PHP files for which OPcache is to be invalidated.
Changes in WP_Filesystem_Direct::move() function
In #57375WP_Filesystem_Direct::move() had directory support added to make it consistent with ::move() methods in WP_Filesystem_FTPext, WP_Filesystem_ftpsockets and WP_Filesystem_SSH2.
To make sure you get the proper results when searching for a page, or any other post type, by the title, WordPress 6.2 is deprecating the get_page_by_title() function in favour of WP_Query.
WordPress 6.2 brings some major performance wins to WordPress core, visible in the benchmarks for both Web Vitals and Server Timing metrics. Performance is further improved for block themes performance with ~20% faster TTFB and ~14% faster LCP. On pages with hero images, the LCP improvements are even greater at ~19%.
The new filterFilterFilters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output.pre_wp_load_alloptions allows short-circuiting the loading of WordPress’s autoloaded options with custom logic. View ticketticketCreated for both bug reports and feature development on the bug tracker.#56045.
The results of the get_adjacent_post() function are now being cached. View ticket #41131.
Cache keys for WP_Term_Query are now based on SQL without placeholders so that they can actually result in cache hits. View ticket #57298.
WP_Query is now no longer priming post caches twice. View ticket #57373.
Lazy-loading term metadata from the cache is now faster due to using wp_cache_get_multiple(). View ticket #57150.
The results of wp_get_global_settings() are now cached within a single request, resulting in a faster response time of ~8% for WordPress core. View ticket #57502.
Themes
The Themes component brings some new options for theme authors, performance improvements as well as feature removals.
The “Style Variations” tagtagA directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.) is added to the list of WordPress theme features. View ticket #56869.
theme.json supports additional link-related pseudo classes, such as :link and :any-link. View ticket #57053.
Account for a numeric theme directory in WP_Theme::__construct() to allow a numeric theme name. View ticket #54645.
Improve performance of _add_block_template_part_area_info and _add_block_template_info functions which result in hitting an existing cache and in much fewer calls to get_option. View ticket #57077.
Caching is added to WP_Theme::is_block_theme(). View ticket #57114.
External libraries
Significant and long-time-awaited changes come in the Requests library: namespaces, minimum PHP version, PHP 8.x compatibility, stricter input validation and others.
More hooksHooksIn WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same., new and renamed, and other notable changes can be found in miscellaneous dev note.
Allow HTTPHTTPHTTP is an acronym for Hyper Text Transfer Protocol. HTTP is the underlying protocol used by the World Wide Web and this protocol defines how messages are formatted and transmitted, and what actions Web servers and browsers should take in response to various commands. URLs for application password responses when using a local environment type. View ticket #52617.
Bootstrap/Load
Check that either mysqli_connect() or mysql_connect() is available. This resolves a fatal error and displays an actionable message if the mysqli PHP extension is missing. View ticket #51988.
Comments
Allow passing $comment_ID parameter to get_comment_time() and comment_time(). This brings consistency with get_comment_date() and comment_date(). View ticket #52322.
External libraries
The following libraries were updated to the latest versions:
By optimizing the low-level function wp_kses_bad_protocol() for the by far most common scenarios, the performance of esc_url() is improved. View ticket #22951.
General
If you’ve been following the progress of improvements to allow for named parameters, massive work has been done on that field in 6.2. View ticket #56788.
Mail
Allow custom attachment filenames in wp_mail() by passing an associative $attachments array, where the key strings will be used as filenames instead. View ticket #28407.
Media
It is now possible to explicitly provide a decoding value of e.g. boolean false in the $attr parameter of the wp_get_attachment_image() function, to ensure the attribute decoding is omitted. View ticket #57086.
Enhance logic to determine LCP image in block themes and avoid lazy-loading it. Additionally, this changeset uses the benefits of block template parts to avoid lazy-loading images in the header block template part, making the lazy-loading heuristics even more accurate for sites using a block theme. A test with a block theme page with an image shows a notable ~19% LCP improvement in 6.2. View tickets #56930 and #57490.
REST APIREST APIThe REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/.
Support non-Latin characters in template route regex. Non-Latin characters are URLURLA specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org-encoded (e.g. %cf%84%ce%b5%cf%83%cf%84). Matching % in the route ensures templates with non-Latin titles can be properly saved. View ticket #57329.
Users
Add the new wp_set_password action hook, triggered after a password is set for a given user. As several plugins are calling wp_set_password() directly, adding an action to the end of the function will help pluginPluginA plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party authors to catch all instances of password setting. View ticket #57436.
Thanks to @flixos90, @poena, @costdev, @bph for collaborating on this field guideField guideThe field guide is a type of blogpost published on Make/Core during the release candidate phase of the WordPress release cycle. The field guide generally lists all the dev notes published during the beta cycle. This guide is linked in the about page of the corresponding version of WordPress, in the release post and in the HelpHub version page. and @webcommsat, @audrasjb, @annezazu, @mukesh27, and @sabernhardt for peer review.
WordPress 6.1 Release Candidaterelease candidateOne of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). 1 is out and it’s time to take a look at what changes we can expect. Release squad and many contributors worked hard on both TracTracAn open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. and GitHubGitHubGitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/; with more than 120 enhancements and feature requests, 241 bug fixes, 42 other blessed tasks, which makes it over 400 tickets in Trac; and 50 Trac pull requests bringing GutenbergGutenbergThe Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ changes into coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress.. In Gutenberg repo there were 1684 pull requests of which 425 new features and enhancements and 428 bugbugA bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. fixes, while the rest is tooling, testings, documentation, and code quality.
New release comes with massive performance improvements, accessibilityAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility) enhancements, first default blockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. based themes marked as accessibility ready, new hooksHooksIn WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same. and functions, private functions being open for public use and many more.
Performance
With 45 Trac tickets for 6.1, 19 components got various performance improvements. The most significant improvements arrived in WP_Query and REST APIREST APIThe REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/., which will impact a large portion of your next page load.
If there is one thing you take from performance updates, let it be caching queries in WP_Query. It’s been a long dream for many developers and, once you test it, it will be all that you hoped for. REST API is richer for several priming caches and lighter for prepare_links (if you want it). Site Health will check your Persistent Object Cache and Page Cache, while several private Cache APIAPIAn API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. functions are now public. You’ll also be able to flush cache by group, declare supported cache features, validate cache keys and more.
Besides Query, REST API, Site Health, and Cache API, performance improvements can be found in MultisitemultisiteUsed to describe a WordPress installation with a network of multiple blogs, grouped by sites. This installation type has shared users tables, and creates separate database tables for each blog (wp_posts becomes wp_0_posts). See also network, blog, site, Bootstrap, Media, Post (Post Types), Editor, Database and many other components. There are too many changes to mention them all here, but you are invited to read the Field guideField guideThe field guide is a type of blogpost published on Make/Core during the release candidate phase of the WordPress release cycle. The field guide generally lists all the dev notes published during the beta cycle. This guide is linked in the about page of the corresponding version of WordPress, in the release post and in the HelpHub version page. on performance improvements in WordPress 6.1.
Posts, Post Types – Post title should not be translatable in get_user_data_from_wp_global_styles method. #55392
Quick/Bulk Edit – Check the show_in_quick_edittaxonomyTaxonomyA taxonomy is a way to group things together. In WordPress, some common taxonomies are category, link, tag, or post format. https://codex.wordpress.org/Taxonomies#Default_Taxonomies. property when processing the data for bulk edited posts. #42474
RevisionsRevisionsThe WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision. – Use latest_id as the array key for the latest revision ID. #55857
Accessibility
Similar to performance, accessibility improvements arrive in 28 Trac tickets, spread over 13 components. We have first block-based bundled themes marked with accessibility readytagtagA directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.), Twenty Twenty-Three and Twenty Twenty-Two. Forms, site/template and block editors, administration screens and many more accessibility improvements are coming in with 6.1 release.
Among many changes in these 10 releases of the pluginPluginA plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party, a lot of effort was made in making blocks and other Gutenberg features more available in classic themes, which will ensure easier transition to hybrid and block-based themes.
New ways to extend various parts of block editor tools which were very much needed in everyday development, such as scaffolding block variants with create-block tool, content locking updates, filtering theme.json data, extending Query block, Style Engine, new ReactReactReact is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/. hooks for easier data access, and many more.
Themes are getting more control over styling elements, layout, and navigation while classic themes also get control over block-based template parts and theme.json. Read all about these in dev notesdev noteEach important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. below.
Updated Settings and Styles in Theme.jsonJSONJSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML.
New server-side filters in WordPress 6.1 will allow hooking into theme.json data (see 56467 and 54251 for more info).
REST API gets nice improvements for /search endpoint as well as pretty-printing JSON responses, which can be added as query parameter but also controlled via rest_json_encode_optionsfilterFilterFilters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output..
Changes in #54788 allow for the muted property to be used in video elements, which solves for content that wishes to autoPlay when a page is viewed.
Database
A file containing the wpdb class is renamed from wp-includes/wp-db.php to wp-includes/class-wpdb.php to conform to the coding standards. If you’ve been including this file directly, do not worry – a new wp-db.php file is created and it’s loading the old, now renamed file. Read more in #56268.
MariaDB 10.2 has reached EOL (end of life). The minimum version of MariaDB supported is now 10.3 (see #55791).
Other developer updates
As mentioned above, WordPress 6.1 comes with a serious number of new hooks and functions, which will make Miscellaneous dev notedev noteEach important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. very useful for theme and plugin developers.
Normalize to Unicode NFC encoding before converting accent characters in remove_accents(). #35951
Cron API
Modify _get_cron_array() to always return an array. #53940
Editor
Universalize functions for checking block editor status. #51819
Clarify that get_page_template() doesn’t work on block themes. #56394
Block Patterns: Add new Footers categoryCategoryThe 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging.#56416
Spacer block: color control (only text color) #43660 (background in next version)
Several external libraries have been updated to their latest versions. These include PHPMailer, GetID3, Moment, Sodium Compat, jQuery, jQuery UIUIUser interface, MediaElement.js, Clipboard.js, and Underscore
Add support for WebP images in the Thickbox library. #55786
Normalize to Unicode NFC encoding before converting accent characters in remove_accents()#24661
Replace all esc_url_raw() calls in core with sanitize_url(). #55852
Allow min(), max(), minmax(), and clamp() values to be used in inline CSSCSSCascading Style Sheets.. #55966
KSES: Allow more layout-related CSS properties. #56122
KSES: Allow assigning values to CSS variables. #56353
General
Formatting: Add support for Enums in is_serialized(). #53299
Replace phpversion() function calls with PHP_VERSION constant. #55680
Blocks: Remove duplicate use of realpath() in register_block_style_handle(). #56636
Block Editor: Remove repetitive calls to file_get_contents() in block editor settings. #56637
General: Remove file_exists() checks after calling realpath(). #56654
Blocks: Remove extra get_theme_file_path() calls in register_block_style_handle(). #56666
General: Ensure wp_rand() returns 0 when $min and $max values are equal to 0. #55194
I18Ni18nInternationalization, or the act of writing and preparing code to be fully translatable into other languages. Also see localization. Often written with a lowercase i so it is not confused with a lowercase L or the numeral 1. Often an acquired skill.
I18N: Introduce WP_Textdomain_Registry to store text domains and their language directory paths. #39210
Login and Registration
Required fields in networknetwork(versus site, blog) registration. #54344
Explicitly associate errors with input fields. #54483
WordPress 6.1 introduces a number of important performance improvements which will have impact in all aspects. The most significant improvements are done in caching WP_Query as well as REST APIREST APIThe REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/..
Improvements to WP_Query
Database queries in WP_Query being cached is a long wanted feature for many developers and finally a dream come true in WordPress 6.1. A couple of new functions will ensure that users cache and linked objects for menu items are now primed while get_page_by_title function will from now on use WP_Query and take the full advantage of all these improvements.
TracTracAn open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. tickets holding these changes: #22176, #55716, #55620, #36905.
Improvements to REST API
Priming caches in a single query will significantly improve Posts controller with several new helper functions but that’s not all. User and comments controller will benefit in a similar way while taxonomyTaxonomyA taxonomy is a way to group things together. In WordPress, some common taxonomies are category, link, tag, or post format. https://codex.wordpress.org/Taxonomies#Default_Taxonomies. and post type controllers are now going to prepare_links only when needed. This control over prepare_links method will be available for custom controllers as well.
WordPress 6.1 will have two new Site Health checks – Persistent Object Cache and Page Cache, along with a number of new filters. Find out more in dedicated Dev notedev noteEach important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase..
Trac tickets holding these changes: #56040, #56041.
Improvements to multisitemultisiteUsed to describe a WordPress installation with a network of multiple blogs, grouped by sites. This installation type has shared users tables, and creates separate database tables for each blog (wp_posts becomes wp_0_posts). See also network, blog, site
In WordPress 6.1 the networknetwork(versus site, blog) options functions have been updated to be consistent with other metadata types, support for register_meta is added, prime caching network options in a single query, string main site ID in network options and more.
Trac tickets holding these changes: #37181, #55802.
Bootstrap/Load
The order of action hooksHooksIn WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same. is slightly changed in order to gain more control over caching behavior, preloading assets and conditionally executing redirects.
Trac ticketticketCreated for both bug reports and feature development on the bug tracker. holding these changes: #56068.
Improvements to Cache APIAPIAn API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
Cache API improvements bring validating cache keys in WP_Object_Cache methods, deleting cache by group and making a number of private cache priming functions public, and thus, available for usage in plugins and themes.
A valid cache key must be either an integer number or a non-empty string. This will prevent silent failing in wp_cache_*() functions, done by a quick type check and adding a _doing_it_wrong() message if the string is empty, false, or null. Also, a check in update_user_caches() and clean_user_cache() will make sure that the email is not empty before being cached or removed from cache. Read more in #56198.
Several private cache priming functions for various object types are now public and pluginPluginA plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party and theme authors are encouraged to use these functions to improve the performance of their code by reducing the number of database queries. These functions are:
If you wanted to delete cached item with wp_cache_delete you had to specify the item’s ID, or you had to flush the entire cache with wp_cache_flush. WordPress 6.1 introduces a new plugable function called wp_cache_flush_group which removes all cache items in a group, if the object cache implementation supports it.
Introducing wp_cache_supports() function
Developers can now detect if their current implementation of an object cache supports flushing by group, by calling wp_cache_supports( $feature ) which returns true if the feature is supported. Third-party object cache plugins can declare a wp_cache_supports() function and correctly list their supported features:
add_multiple
set_multiple
get_multiple
delete_multiple
flush_runtime
flush_group
Note: The wp_cache_supports() function replaces and supersedes the wp_cache_supports_group_flush() function added in #4476.
WordPress 6.1 will add decoding="async" to image attributes, along with new wp_img_tag_add_decoding_attr() function and wp_img_tag_add_decoding_attrfilterFilterFilters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output.. Read more in #53232.
Query-attachments AJAX endpoint now caches the parent post objects. Read more in #56037.
WP_Media_List_Table class will call update_post_parent_caches function in order to prime parent caches in a single database request. Read more in #56036.
Added caching to wp_count_attachments() for better consistency with wp_count_posts(). Read more in #55227.
Avoid duplicated query when retrieving empty posts collections. Read more in #55677.
Post, Post Types improvements
In WordPress 6.1 WP_Posts_List_Table class will call update_post_author_caches function in order to prime post author caches in a single database request. Read more in #56100.
A new filter post_class_taxonomies will allow developers to reduce the number of taxonomies for which classes term classes are generated. Read more in #37114.
Sites running persistent object caching will have result of database queries in _find_post_by_old_slug and _find_post_by_old_date functions, cached. Read more in #36723.
Editor
Additional build task copy:block-json will convert and store all block.json files in a single blocks-json.php which will prevent all of this from happening for every blockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. on each page load.
Identifiers (such as Table and Field names) are escaped with the %i placeholder which will prevent SQL Injection Vulnerabilities and provide a small performance improvement.
Performance of WP_List_Table::get_column_info() is improved by adding the primary column to the cached headerHeaderThe header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes. values (#34564).
Cron API
In 6.1 wp-cron will be non-blocking for LiteSpeed LSAPI (#54668).
Taxonomy
Retain default term option when unregistering taxonomies and adjustments to handling default terms for custom taxonomies (#54472).
Themes
Two new actions are wrapping the process of loading a template file (load_template) – wp_before_load_template and wp_after_load_template (#54541).
Script loader
New filter wp_preload_resources enables resource preloading with rel='preload' (#42438).
Users
Prime user metaMetaMeta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress. in WP_User_Query (#55594).
Update on 5 May 2022: Updates to the @wordpress/create-block templating system and Block Locking Settings in WordPress 6.0dev notesdev noteEach important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. were added to the BlockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. Editor section.
With the Release Candidaterelease candidateOne of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). 1 officially shipped, it’s time to explore the next major releasemajor releaseA release, identified by the first two numbers (3.6), which is the focus of a full release cycle and feature development. WordPress uses decimaling count for major release versions, so 2.8, 2.9, 3.0, and 3.1 are sequential and comparable in scope., WordPress 6.0. This release introduces Style variations, the Block Locking UIUIUser interface, various writing improvements, more design tools, new hooksHooksIn WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same., updated external libraries, and more! At a high level, there are 97 enhancements and feature requests, 131 bug fixes and 13 Gutenberg bug fixes, 23 other blessed tasks, which brings us to 251 Trac tickets in total.
The new performance team has been working hard to improve various parts of WordPress. A lot of queries have been optimized and some removed, cache improved, multiple translations of the same strings removed, just to mention a few.
Let’s take a deeper look at what to expect in 6.0.
Note: Note: some of the changes will require pluginPluginA plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-partyPluginA plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party and theme authors to adapt or change their code. Please, read these Dev notesdev notedev noteEach important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase.Each important change in WordPress CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blogblog(versus network, site) during the betaBetaA pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field GuideField guideThe field guide is a type of blogpost published on Make/Core during the release candidate phase of the WordPress release cycle. The field guide generally lists all the dev notes published during the beta cycle. This guide is linked in the about page of the corresponding version of WordPress, in the release post and in the HelpHub version page. at the beginning of the release candidate phase. carefully to make sure your code is ready for WordPress 6.0 on May 24, 2022.
Accessibility
Along with performance, lots of work has focused on improving accessibility in various parts of the WordPress software.
The Block Editor updates bring new functionality, fixes, and more:
The ability to bundle multiple Style variations for block themes.
The option to create page content patterns that users can choose from to create their pages.
New ancestor property in block.json letting one restrict where users can place their blocks.
A new block locking UI with a lock attribute for every block.
Registration of blocks from within themes.
Improved support for preserving unrecognized content in the editor.
More robust block theme export feature in the Site Editor.
Block markup updates for image, quote, list, and group blocks.
New set of Post Comments blocks, No Results block, and more.
& more!
Of note, if you currently have the Gutenberg plugin active on your website and are upgrading to WordPress 6.0, please make sure Gutenberg is updated to its latest version. This helps ensure the best experience possible.
In WordPress 6.0 wp_cache_*_multiple API becomes a full CRUD. Also, option to flush the runtime cache without flushing the entire persistent cache is being enabled.
Taxonomies received a lot of performance improvements, from term query caching and adding limits to taxonomy queries, through navigation menu items to changing term_exists to use get_terms().
This new release offers a streamlined way for theme authors to work with patterns, support for multiple theme.json files AKA style variations, better export themes with Site Editor, and a few more goodies.
Allow block themes to be activated without index.php
This change removes the requirement for block themes to have an unused index.php template just for activation, as they use a templates/index.html file instead. (#54272)
Correct the logic for displaying a _doing_it_wrong() notice for add_theme_support( ‘html5’ )
Calling add_theme_support( 'html5' ) without passing an array of supported types should throw a _doing_it_wrong() notice: “You need to pass an array of types”.
If the second parameter is not specified, it should fall back to an array of comment-list, comment-form, and search-form for backward compatibility.
If the second parameter is not an array, the function should return false.
With 6.0 WordPress installs with more than 10,000 users, so called “large sites”, will receive performance improvements for querying and counting users.
Administration: Add a media_date_column_time filter to the media list table date column. Similar to the existing post_date_column_time filter in the posts list table, this change adds a new hook to filter the “Date” column output in the media list view. (#42942)
Build: Update webpack to v5.x. This aligns closer with how the Gutenberg plugin handles WordPress packages. Enable React Fast Refresh support to WordPress core for block development with @wordpress/scripts. Bring caniuse-lite to the latest version which ensures that build tools target the most recent version of browsers supported by WordPress. (#51750, see #55505)
Build/Test Tools:
A .git-blame-ignore-revs file has been added to the repository with a curated list of “pinking shear” commits (ones only applying stylistic changes), making the blame feature on GitHub much more useful (#55422)
Webpack and all related build processes/scripts have been updated to version 5 (#51750).
The npm install command has been fixed for contributors using an Apple M series silicone by updating the grunt-contrib-qunit dev dependency (#52690).
Bundled Theme: If you’ve been having problems with order of elements in comment form in Twenty Nineteen theme, there’s a good news for you in #46600. It’s fixed!
Canonical: Function redirect_guess_404_permalink() includes all public statuses, rather than just publish, in 404 redirects in its search. (#47911)
Comments: Speeding up Dashboard and Comment moderation SQL load – (#19901)
Emoji: Update the Twemoji to version 14.0.2. This version introduces support for the latest Emoji added in Emoji 14. (#55395)
Update jQuery Color to 2.2.0. Removes bundled version (still existed within core), in favor of expanding the Grunt build steps to include the package from NPM instead. (#55016)
Upgrade PHPMailer to version 6.5.4. The latest release includes some minor PHP cross-version improvements and a safeguard against hosters disabling security functions. Note to hosting providers: don’t disable escapeshellarg() and escapeshellcmd(); it’s not safe! Release notes: https://github.com/PHPMailer/PHPMailer/releases/tag/v6.5.4 (#55187)
Update sodium_compat to v1.17.1. The latest version of sodium_compat includes further improvements for PHP 8.1 compatibility. (#55453)
Update backbone from 1.4.0 to 1.4.1., underscore from 1.13.1 to 1.13.2, and clipboard from 2.0.8 to 2.0.10. (#55547)
Formatting:
Add support for formatting sizes as PB, EB, ZB, and YB. (#40875)
KSES: Add support for <ruby> and related elements. This is especially commonly used in Japanese content, but it can also been seen in content of other languages like Chinese. The set of elements to enable such functionality consists of <ruby>, <rt>, and <rp> in the HTML Standard, while some browsers (like Firefox) additionally support <rb> and <rtc> for more advanced formatting. (#54698)
KSES: Allow lang, xml:lang, dir attributes globally. Globally permit the lang, xml:lang, and dir attributes on all elements rather than a subset in accordance with the HTML specification. (#54699)
Function get_the_author_link() is going to be pluggable in WordPress 6.0. A new filter, get_the_author_link, is added for altering author link output. (#51859)
I18n:
List item separator should be a WP_Locale property (#39733)
Allow languages path in register_block_type (#54797)
Media:
Remove attachment_fields_to_save filter and deprecate image_attachment_fields_to_save(). This filter prevented removing attachment titles. This changeset removes the filter and deprecates the related function since it is no longer used. (#39108)
Enable edits to custom image sizes. With a new filter edit_custom_thumbnail_sizes users will be able to apply media edits to individual custom image sizes. (#28277)
Network/Sites: Improve cache key generation in WP_Site_Query (#55462)
Plugins:
Introduce the plugin_install_description filter. This allows for modification of the plugin card description on the Add Plugins screen. (#55480)
Convert apply_filters() into a proper variadic function. (#53218)
Posts, Post Types: Pass the $update parameter to wp_insert_post_data and wp_insert_attachment_data filters. This makes it easier to determine in a callback function whether this is an existing post being updated or not. (#46228)
Posts, Post Types; Taxonomy: Translate default labels once. Improve the translation of post type and taxonomy labels by caching the translations during runtime. (#26746)
Please, test your code. You can use the Beta Tester plugin on a test site to validate how your plugin or theme functions with WordPress 6.0 RC1. Fixing issues that your code has with WordPress core helps you and millions of WordPress sites.
WordPress 5.9 unlocks the ability to build with blocks across all parts of your site, bringing advanced design tools to build your templates, themes, and style your sites in new and exciting ways.
Let’s take a look at what to expect in WordPress 5.9.
BlockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. Editor
WordPress 5.9 might be the largest release of GutenbergGutenbergThe Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ features since the initial Gutenberg launch in WordPress 5.0. The latest version includes a full suite of site editing tools bringing the block editor to the full screen. This includes a new way to build themes, new ways to create templates, and style your site. Plus a dozen new theme blocks to load dynamic content.
All of this is shown off in the beautiful new Twenty Twenty-Two default theme.
Review the block theme dev notedev noteEach important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. for more information around block themes and how to get started building your own.
Here are the dev notesdev noteEach important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. related to block editor updates:
CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress.APIAPIAn API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
Themes & CustomizerCustomizerTool built into WordPress core that hooks into most modern themes. You can use it to preview and modify many of your site’s appearance settings.
UPDATE on 12 July 2021: The Miscellaneous block editor API additions in WordPress 5.8dev notedev noteEach important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. was added to the BlockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. Editor section.
Whether you are a WordPress website user, builder, or developer, WordPress 5.8 brings exciting changes and a hint of even more goodies coming in WordPress 5.9. But we’re getting ahead of ourselves; let us take a look at what to expect in when 5.8 is released.
In this Field GuideField guideThe field guide is a type of blogpost published on Make/Core during the release candidate phase of the WordPress release cycle. The field guide generally lists all the dev notes published during the beta cycle. This guide is linked in the about page of the corresponding version of WordPress, in the release post and in the HelpHub version page., you will notice what is relevant to you and your users among the many improvements coming in 5.8.
Block Editor
The block editor moves onward with regular releases. GutenbergGutenbergThe Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ version 10.7 is bundled with WordPress 5.8; that totals eight Gutenberg releases (versions 10.0, 10.1, 10.2, 10.3, 10.4, 10.5, 10.6, and 10.7) all merged into this WordPress release (as the related Gutenberg handbook page makes clear)! Bug fixes and performance improvements from Gutenberg versions 10.8 and 10.9 are also part of 5.8.
As well, those recommendations integrate with the Pattern Directory on WordPress.orgWordPress.orgThe community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/, template editor, theme.json, and blocks in widgetWidgetA WordPress Widget is a small block that performs a specific function. You can add these widgets in sidebars also known as widget-ready areas on your web page. WordPress widgets were originally created to provide a simple and easy-to-use way of giving design and structure control of the WordPress theme to the user. areas among other changes.
In the block editor-related dev notesdev noteEach important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. below are important details on how theme.json delivers editor style control and associated Global Settings and Global Styles, plus:
Blocks in widget areas
block.json as canonical way to register block styles
deprecation of filters and introduction of context-aware replacements
Removal of previously deprecated EditorGlobalKeyboardShortcuts component, hasUploadPermissions selector, and hidden Subheading block
The iframed template editor portion of Full Site Editing
Amongst all Media changes, the highlight is support for the WebP image format. Accompanied by new image_editor_output_formatfilterFilterFilters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. (see #52867), it will set foundation for a real performance boost. You will also notice some UIUIUser interface improvements, such as replacing infinite scroll with AJAX response (#50105 and #40330) and copy-link button on media upload screen (#51754).
Changes in the Plugins component aim to make pluginPluginA plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party developers lives easier. From better docs search (#50734) and standardizing hooksHooksIn WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same. terminology (#50531) to ability to mark plugins as unmanaged (#32101) and avoid overwriting plugin files caused by update conflicts.
REST APIREST APIThe REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/.
REST API changes are mainly focused on Widgets and sidebars but there is also a new operator for taxonomyTaxonomyA taxonomy is a way to group things together. In WordPress, some common taxonomies are category, link, tag, or post format. https://codex.wordpress.org/Taxonomies#Default_Taxonomies. queries within post collections, support for the eagerly awaited AND comparison, which allows posts meeting all passed criteria are matched (#41287).
Amongst the UI fixes, Site Health changes bring new actions for extending the navigation in the Site Health screen (#47225). You will also find new info provided by Site Health via a list of the supported file types for the active image editor (#53022).
Across the Themes changes you will find two new action hooks, delete_theme and deleted_theme (#16401), a few UI improvements such as clearly showing if a theme is a child themeChild themeA Child Theme is a customized theme based upon a Parent Theme. It’s considered best practice to create a child theme if you want to modify the CSS of your theme. https://developer.wordpress.org/themes/advanced-topics/child-themes/. (#30240), update counter in adminadmin(and super admin) menu item (#43697), and removal of “Featured” tab in Add Themes screen (#49487).
Also, older bundled themes are refreshed with some really nice block patterns for your pleasure and inspiration.
There are even more goodies in 5.8! Read through the dev notes below to see details on how Internet Explorer 11 support is being dropped as well as assorted changes to the Bootstrap/Load, Build/Test Tools, Formatting, General, Media, Posts/Post Types, RevisionsRevisionsThe WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision., Themes, and Users components.
Alongside the dev notes below, also worth noting is that work has continued during the 5.8 release cycle to increase the compatibility with PHP8 and its new features. Please continue to test your code against PHP8 as we all work towards raising the entire WordPress ecosystem compatibility with PHP8, thank you!
Build/Test Tools: Remove @babel/polyfill in favor of core-js/stable, requires explicit addition of regenerator-runtime as script dependency if IE11 support is still required (#52941).
Comments: comments_pagination_base missing in get_comment_reply_link() function (#51189).
Comments: Comments list’s link should point to an actual article (#52353).
Embeds: Process embeds for block widgets (#51566).
Emoji: Bump Twemoji from 13.0.1 to 13.1.0 (#52852).
External Libraries: Bump jQuery from 3.5.1 to 3.6.0 (#52707).
External Libraries: Bump Moment.js from 2.27.0 to 2.29.1 (#52853).
External Libraries: Bump Requests from 1.7.0 to 1.8.1 (#53101 and #53334).
External Libraries: Bump Underscore from 1.8.3 to 1.13.1 (#45785).
Media: Remove infinite scrolling behavior from the Media grid (#50105).
Media: Add a copy-link button at the media upload page (#51754).
Menus: Add ability to delete multiple menu items (#21603).
Revisions: a new dynamic filter to specify post type for number of revisions to save, wp_{$post->post_type}_revisions_to_keep (#51550).
Role/Capability: user_can() changed for exist capability for anonymous users (#52076).
Upgrade/Install: Remove parsing of readme.txt files from validate_plugin_requirements() (#48520).
Upgrade/Install: Fatal error during update to 5.8 of a site with an active Gutenberg plugin (version less than 10.7) (#53432).
Widgets: Make sure WP_Widget constructor creates a correct classname value for a namespaced widget class (#44098).
And much, much more!
Please, test your code. Fixing issues that your code has with WordPress coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. helps you and millions of WordPress sites.
WordPress 5.7 brings you the best features and enhancements to help start 2021 on a positive note! A small and experienced release squad lead the development of new features and resolved defects that benefit users and developers alike.
As a user, you’ll see a refined blockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. editor UIUIUser interface, lazy-loading iframes, streamlined migrationMigrationMoving the code, database and media files for a website site from one server to another. Most typically done when changing hosting companies. from HTTPHTTPHTTP is an acronym for Hyper Text Transfer Protocol. HTTP is the underlying protocol used by the World Wide Web and this protocol defines how messages are formatted and transmitted, and what actions Web servers and browsers should take in response to various commands. to HTTPSHTTPSHTTPS is an acronym for Hyper Text Transfer Protocol Secure. HTTPS is the secure version of HTTP, the protocol over which data is sent between your browser and the website that you are connected to. The 'S' at the end of HTTPS stands for 'Secure'. It means all communications between your browser and the website are encrypted. This is especially helpful for protecting sensitive data like banking information., standardized colors in WP Adminadmin(and super admin) to a single palette, and a new Robots APIAPIAn API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. and media search engine visibility setting. As a developer, you’ll see 66 enhancements and feature requests, 127 bug fixes, and more! Of particular interest for developers will be the ongoing cleanup after the update to jQuery 3.5.1 as step 3 on our upgrade process of eventually removing jQuery Migrate.
In this Field GuideField guideThe field guide is a type of blogpost published on Make/Core during the release candidate phase of the WordPress release cycle. The field guide generally lists all the dev notes published during the beta cycle. This guide is linked in the about page of the corresponding version of WordPress, in the release post and in the HelpHub version page., you’ll notice what’s relevant to you and your users among the many improvements coming in 5.7.
The block editor continues its rapid iteration. GutenbergGutenbergThe Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ version 9.9 is bundled with WordPress 5.7; that’s seven Gutenberg releases (versions 9.3, 9.4, 9.5, 9.6, 9.7, 9.8, and 9.9) all bundled into this release (and as noted in the related Gutenberg handbook page)! Bug fixes and performance improvements from Gutenberg versions 10.0 and 10.1 are also part of 5.7.
The WordPress 5.7 Beta 1 post highlights many new features and improvements to the block editor. There is drag and drop from the inserter into the post canvas, full height alignment for blocks to fill the entire viewport, block variations shown in the block inspector, enhancements to the usability and stability of reusable blocks, vertical alignments and width percentages for buttons block, ability to change size of icons in the Social Icons block, and ability to change the font size in the List and Code blocks.
Included below are details on the new dynamic hook (render_block_{$this->name}) to filterFilterFilters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. the content of a single block,
REST APIREST APIThe REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/.
There are even more goodies in 5.7! Read through the dev notesdev noteEach important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. below to see details on additional changes coming in 5.7 within Login and Registration, and Post Types.
5.7 offers so much more! Over 127 bugs, 66 enhancements and feature requests, and 29 blessed tasks have been marked as fixed in WordPress 5.7. Here are a few that haven’t been highlighted in the dev notes above:
Editor: Support filtering arguments in block type registration from metadata (#52138).
Menus: Add sticky footer to avoid duplicate save buttons (#51631).
Upgrade/Install: Display version number in update-core.php Re-install Now button (#51774).
Upgrade/Install: Add development as accepted value for WP_AUTO_UPDATE_CORE (#51978).
Please, test your code. Fixing issues that your code has with WordPress coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. helps you and millions of WordPress sites.
Update on November 24, 2020: Added the newly published “Core major versions auto-updates UI changes in WordPress 5.6 – Correction” dev notedev noteEach important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. the the Auto-updates (Security) section as an embed. – @audrasjb
Update on November 23, 2020: Added the newly published “WordPress & PHP 8” dev note to the PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher 8 section as an embed. – @desrosj
WordPress 5.6 brings you the best features and enhancements to help end 2020 on a positive note! An all-women and non-binary release squad lead the development of new features and resolved defects that benefit users and developers alike. 👩🏻💻👩🏼💻👩💻👩🏽💻👩🏾💻👩🏿💻
As a user, you’ll see automatic updates for major coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. releases (opt-in), external authentication to the REST APIREST APIThe REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/. via newly introduced Application Passwords, PHP 8 support, the latest and greatest features in the blockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. editor, and a new AAA-ready default theme. As a developer, you’ll see 85 enhancements and feature requests, 201 bug fixes, and more! Of course, all those improvements mean code changes, which could in turn require you to make updates to your site, pluginPluginA plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party, or theme.
Note that as of the publishing of this Field GuideField guideThe field guide is a type of blogpost published on Make/Core during the release candidate phase of the WordPress release cycle. The field guide generally lists all the dev notes published during the beta cycle. This guide is linked in the about page of the corresponding version of WordPress, in the release post and in the HelpHub version page. there are still two pending Dev Notesdev noteEach important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. that will be published in the coming week. We will update this Field Guide with that content once it becomes available and will place a clear UPDATE note announcing the new content at the top of this Field Guide.
In this Field Guide, you’ll notice what’s relevant to you and your users among the many improvements coming in 5.6.
Application Passwords
Of the eight updates to the Login and Registration component, take notice of WordPress APIAPIAn API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. improvements in the detailed integration guide. You can now make authenticated requests to various WordPress APIs via the newly-introduced, user-specific, application passwords.
The integration guide includes the application password format, the application password data store, how to generate credentials manually or programmatically through the REST API, and how to use those credentials with the REST API or XML-RPC API. Additionally, you’ll notice highlights on future developments for the REST API.
The #core-auto-updates team introduces a new UIUIUser interface allowing website administrators to opt-in to major version automatic updates. Read on to learn more about the new user interface to opt-in to automatic updates for major versions looks, how the user interface works, and how you can extend the core major versions auto-updates feature.
The block editor continues its rapid iteration. GutenbergGutenbergThe Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ version 9.2 is bundled with WordPress 5.6; that’s seven Gutenberg releases (versions 8.6, 8.7, 8.8, 8.9, 9.0, 9.1, and 9.2) all bundled into this release (and as noted in the related Gutenberg handbook page)! Bug fixes and performance improvements from Gutenberg versions 9.3 and 9.4 are also part of 5.6.
The WordPress 5.6 Beta 1 post highlights many new features and improvements. There is improved support for video positioning in cover blocks, enhancements to Block Patterns including translatable strings, character counts in the information panel, improved keyboard navigation, and improved UI for drag and drop functionality.
Included below are details on a new Block API version that enables blocks to render their own block wrapper element, and a new createBlocksFromInnerBlocksTemplate Block API to create blocks from the InnerBlocks template. You’ll notice new block supports and abilities for dynamic blocks to use the new block supports, accessibilityAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility) and small screen user experience enhancements to editor styling, extraction of reusable blocks from @wordpress/editor to @wordpress/reusable-blocks so they are available in other editors, and changes to Toolbar components.
WordPress 5.6 includes part 2 of the 3-step plan for upgrading the version of jQuery bundled with core. The 3-step plan updates the bundled jQuery version to 3.5.1 and jQuery Migrate to 3.3.1. The dev note below includes details on part 2 of the plan, and more. Part 3 of the plan removes jQuery Migrate. That’s because jQuery Migrate is tentatively planned to be removed in WordPress 5.7 or later depending on testing. As 5.6 includes a major upgrade to the jQuery library, please ensure you test your plugins and themes as thoroughly as possible before the release of WordPress 5.6 to avoid any preventable breakage.
The next major version release of PHP, 8.0.0, is scheduled a few days prior to WordPress 5.6. The WordPress project has a long history of being compatible with new versions of PHP as soon as possible, and this release is no different. Because PHP 8 is a major version release, changes that break backward compatibility or compatibility for various APIs are allowed. While all of the detectable issues in WordPress can be fixed, you will need to verify that all of your plugins and themes are also compatible with PHP 8 prior to upgrading. Read on for more detailed information about what to look for.
Of the 28 REST API updates, pay attention to the new framework for making a series of REST API calls in one request to the server and the new wp_after_insert_post action that allows theme and plugin developers to run custom code after a post, its terms, metaMetaMeta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress. data has been updated. Read the respective dev notes below to learn more about these two new additions to the WordPress REST API.
There are 11 Site Health updates in 5.6. You’ll want to particularly notice enhancements to the way the Site Health component handles and validates health checks. The dev note below includes details on changes to the Site Health component.
This release continues a tradition of including a new default theme, this year with the AAA-ready Twenty Twenty-One theme. The post below includes background on Twenty Twenty-One and the design decisions made in its planning. You’ll also notice the benefit in consulting our community of a11yAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility) experts from the beginning, the joy in testing the AAA-ready default theme, and the pleasure of activating and using the new theme.
There are even more goodies in 5.6! Read through the dev note below to see details on additional changes coming in 5.6 within the Administration, Build/Test Tools, Database, Media, Networks an