Skip to content

Releases: Yoast/wordpress-seo

27.1

03 Mar 09:23

Choose a tag to compare

= 27.1 =

Release date: 2026-03-03

New: Introducing the Schema Aggregation feature. Futureproof your website for an agentic future. Read the full release post here.

Enhancements

  • Introduces the Schema aggregation feature. Thanks to Syde for helping us with testing it!
  • Introduces a more robust HTML processing and highlighting approach for the transition words assessment.

Bugfixes

  • Fixes a bug where sentences containing transition words failed to be highlighted in transition words assessment when they contained elements excluded from the analysis such as <code>.
  • Fixes a bug where Slovak two-part transition words weren't recognized when running the readability analysis.

27.2-RC1

03 Mar 13:19

Choose a tag to compare

27.2-RC1 Pre-release
Pre-release

Changes compared to: 27.1

Enhancements:

  • Enhances the task list with tasks about the SEO and readability of recent posts. #22972
  • Replaces the Toast with a ModalNotification dialog in the task list opt-in notification for improved accessibility, focus trapping, and keyboard navigation. #22960

Bugfixes:

  • Fixes a bug where Schema aggregator endpoints were returning a fatal error when trying to access response pages other than the first one by using slash syntax. #23042
  • Fixes a bug where ImageObject id related to Person Schema was not a fully-qualified, absolute URL. #23028
  • Fixes a bug where structured data broke when script tag was used in the step description of the HowTo block. #23035
  • Fixes a bug where the "Additional CSS class(es)" field was missing from the link popover when Yoast SEO was active. Props to somecodeiwrote. #23014
  • Adds sanitization to duration text for the HowTo block. #23035

Other:

  • Adds more loading tasks to the tasks list on the general page. #22767

Non user facing:

  • Hides tasks about content's SEO if indexables or the SEO analysis feature are disabled. #22940
  • Unifies the whys and hows of a task into a single about section. #22935
  • Adds support for child tasks for the task modal. #22934
  • Adds opacity to the priority and duration component when task is completed. #22934
  • Change the progress bar width to the width of the text above. #22934
  • Changes Task status icon when completed, not completed and loading. #22934
  • Implements the task progress badge in the task row and modal. #22934
  • Adds user locale support for task list est. duration. #22927
  • Creates the endpoints needed for the Improve your content's SEO task. #22891
  • Creates the endpoints needed for the Improve your content's SEO task. #22891
  • Relocates task list logic to the task list store. #22781
  • Adds GitHub Actions workflow to build plugin zip on demand. #23024
  • Adds missing escaping for the Url_List_Presenter. #23016
  • Fixes an edge case unreleased bug where having a post have a readability equal to 0 breaks the task list. #23023
  • Fixes an edge case unreleased bug where having a post have a readability equal to 0 breaks the task list. #23023
  • Fixes a bug where a error could occur when saving a taxonomy under circumstances that haven't been discovered. #22991
  • Remved extra space in task modal. #23022
  • Remved extra space in task modal. #23022
  • Adds a scrollbar to the task modal when a child tasks overflows. #23008
  • Fixes an unreleased bug where progress badge was disabled in the task row and produced a console error. #23008
  • Makes the CTA of tasks with "link" or "add" buttons opened in a new tab when clicked. #23005
  • Fixes an unreleased bug where HTML entities would be shown encoded in the child task titles. #23001
  • Finalizes copies for the task list. #22993
  • Fixes the progressbar and progress badge designs. #22990
  • Adds a message for the parent task with no child task. #22990
  • Adjusts the mobile design for task list and child tasks list. #22990
  • Fixes an unreleased bug where the Completed icon was not immediately rendered when the currently open task was completed. #22967
  • Complete @TODOs in the task-list feature branch. #22966
  • Fixes an unreleased bug where the Call-to-action button was not immediately disabled when the currently open task was completed. #22967
  • Updates the main progress bar in the task list to include only parent tasks. #22964
  • Adds the task anaylzer to the task modal int he tasks list. #22963
  • Updated dev dependencies #23013
  • Adds a special analyzer for SEO and Readability child tasks. #22959
  • Improve titles of parent tasks by referencing the post type they are about. #22958
  • Dynamically calculates the duration of parent tasks. #22950
  • Adds tasks about readability score tasks. #22947

27.1-RC6

26 Feb 09:36

Choose a tag to compare

27.1-RC6 Pre-release
Pre-release

Changes compared to: 27.1-RC5

Non user facing:

  • Fixes an unreleased bug where passing an invalid value to the page URL parameter caused a fatal error on PHP version 8.*. #23027

27.1-RC5

24 Feb 15:39

Choose a tag to compare

27.1-RC5 Pre-release
Pre-release

Changes compared to: 27.1-RC4

Non user facing:

  • Updates ob_flush behavior in the get-schema endpoint to only run when absolutely needed. #23025

27.1-RC4

24 Feb 09:40

Choose a tag to compare

27.1-RC4 Pre-release
Pre-release

Changes compared to: 27.1-RC3

Non user facing:

  • Removes no longer needed is_debug flag. #23017

27.1-RC3

20 Feb 13:35

Choose a tag to compare

27.1-RC3 Pre-release
Pre-release

Changes compared to: 27.1-RC2

Non user facing:

  • Fixes a bug where categories were not added to the Article keywords when the keywords array was not empty. #23006

27.1-RC2

18 Feb 12:17

Choose a tag to compare

27.1-RC2 Pre-release
Pre-release

Changes compared to: 27.1-RC1

Non user facing:

  • Updates the icon and shortlink to be up to date. #23004

27.0

17 Feb 09:23

Choose a tag to compare

= 27.0 =

Release date: 2026-02-17

Yoast SEO 27.0 brings more enhancements and bugfixes. Find more information about our software releases and updates here.

Enhancements

  • Adds html-react-parser dependency for improved HTML string handling in React components.
  • Adds images array to FAQ and How-to blocks attributes for explicit image handling.
  • Migrates FAQ block's question/answer fields from array-based formats to HTML strings for better compatibility with WordPress components.
  • Migrates How-to block's step name/text fields from array-based formats to HTML strings for better compatibility with WordPress components.
  • Updates the design for the search appearance mode switcher.

Bugfixes

  • Fixes a bug where inline link icon was missing when editing a sync pattern in the block editor with WordPress 6.9.
  • Fixes a bug where the AI Optimize buttons remained active even when another button had been pressed.
  • Fixes a bug where the subheading distribution assessment threw an error when there was some text with no subheadings plus a block containing a subheading (like the Yoast Table of contents block).

Other

  • Changes the AI Generator Generate 5 more button design and preview background.
  • Modernizes how translations of the plugin work by removing the unneeded load_plugin_textdomain() calls.
  • Restores the suggestions title and Generate 5 more button when the suggestions are loading.
  • Updates the name of the Yoast SEO AI+ card on the plans page.

27.1-RC1

17 Feb 12:18

Choose a tag to compare

27.1-RC1 Pre-release
Pre-release

Changes compared to: 27.0

Enhancements:

  • Introduces the Schema aggregation feature. #22973
  • Introduces a more robust HTML processing and highlighting approach for the transition words assessment. #22279

Bugfixes:

  • Fixes a bug where Slovak two-part transition words wasn't recognized when running the readability analysis. #22279
  • Fixes a bug where sentences containing transition words failed to be highlighted in transition words assessment when they contained elements excluded from the analysis such as <code>. #22279

Non user facing:

  • Code quality & consistency #22985
  • Code quality & consistency #22986
  • Modernize codebase #22987
  • Updated dev dependencies #22988
  • Fixes PHPCS. #22999
  • Code quality #22995
  • Avoids exposing endpoints related to post types that are flagged as noindex. #22996
  • Filters out posts that are flagged as robots_noindex. #22996
  • Avoids opening a new page when the user clicks on the Enable Schema aggregation endpoint button in the feature introduction modal. #22996
  • Fixes various code style issues. #22992
  • Adds some miscellaneous unit tests. #22970
  • Adds a notification in the Alert centre when indexables are disabled. #22969
  • Adds some missing unit tests for Schema pieces repositories. #22968
  • Fixes some missing @Covers annotations #22968
  • Adds integration tests for the schema pieces repositories. #22965
  • Fixes a bug where pages were never retrieved in case the user had indexables disabled. #22965
  • Adds some test for the Site_Schema_Response_Header_Integration class. #22962
  • Adds unit tests for the schema xml renderer. #22955
  • Adds unit tests to cover filtering logic. #22900
  • Adds an integration test to make sure the XML route displays the correct value. #22897
  • Makes sure that plugins that integrate with the schema API are properly represented in the schema aggregator. #22879
  • Adds tests for the cache integrations. #22870
  • Adds tests for the Config and Aggregator_Config infrastructure. #22831
  • Adds additional checks to make sure we don't add transients we don't need to #22821
  • Adds a link to the robots.txt to add the XML endpoint when the schema aggregation feature is enabled. #22820
  • Adds tests for the some infrastructure classes. #22814
  • Adds tests for the enhancement config infrastructure. #22805
  • Adds unit tests for the schema xml renderer. #22955
  • Re-instates the Schema pieces de-duplication and properties merging logic. #22949
  • Removes some filtering. #22948
  • Fixes filtering for schema with multiple types. #22942
  • Adds an introduction modal presenting the new Schema aggregator feature. #22929
  • Refactors the elements-context map to be a class. #22916
  • Adds unit and integration tests. #22914
  • Adds a version marker in the response. #22906
  • Adds unit tests to cover filtering logic. #22900
  • Adds a link to the robots.txt to add the XML endpoint when the schema aggregation feature is enabled. #22820
  • Gitignore the Claude folder, to make devs' life easier. #22989
  • Adds tests for the commands + handlers. #22803
  • Changes the output format to JSONL instead of JSON. #22801
  • Adds tests for the schema enhancers. #22800
  • Adds tests for the XML cache manager. #22799
  • Adds a customisable schema pieces filtering logic and a default filtering strategy. #22790
  • Adds tests for the cache manager. #22789
  • Adds tests for the domain folders. #22787
  • Changes the caching behavior to be inline with having a post type based filtering system. #22786
  • Adds ability to differentiate the per page max based on post type. #22771
  • Makes sure the Woo schema is added to the aggregration. #22763
  • Adds a non indexable fallback for the XML schema endpoints. #22748
  • Introduces a query-based fallback approach to be used when the user has deactivated the indexables creation. #22728
  • Adds an xml file to make the schema aggregation endpoints discoverable. #22696
  • Adds meta information to the schema aggregation endpoint. #22716
  • Adds a toggle for the Schema aggregator feature #22711
  • Writes a timestamp the first time the feature is enabled. #22711
  • Changes the repository to be post type based. #22707
  • Adds extra data to some schema pieces. #22685
  • Filters posts to be used to generate the schema. #22678
  • Deduplicates schema pieces on the basis of the @id property value. #22678
  • Unifies properties of instances of the same schema piece. #22678
  • Add a caching layer for the NL web response. #22675
  • Uses the Meta_Tag_Context_Memoizer class to fetch the schema pieces data. #22669
  • Introduces a route and CLI command for the schema aggregation endpoint. #22660
  • Modernize codebase #22981
  • Introduces the Code_Generator class to isolate a WordPress dependency. #22931
  • Fixes an unreleased regression where AI Optimize button width affected the highlight and other buttons in the analysis. #22994
  • Fixes a bug where schema piece enhancers were never applied. #22860
  • Changes the size of the social image preview box. #22911
  • Releases a new version of the JavaScript package yoastseo. #22971
  • Update dev dependencies #22980
  • Fixes WP tests for WP trunk. #22975
  • Code consistency #22982
  • Modernize codebase #22983
  • Modernize codebase #22984

27.0-RC2

04 Feb 14:42

Choose a tag to compare

27.0-RC2 Pre-release
Pre-release

Changes compared to: 27.0-RC1

Other:

  • Unblocks recent improvements in how WooCommerce handles permalinks of products assigned to multiple categories. #22930