{"id":26954,"date":"2013-12-29T22:27:39","date_gmt":"2013-12-29T22:27:39","guid":{"rendered":"https:\/\/wordpress.org\/plugins-wp\/wpsso\/"},"modified":"2026-03-30T15:42:46","modified_gmt":"2026-03-30T15:42:46","slug":"wpsso","status":"publish","type":"plugin","link":"https:\/\/lmo.wordpress.org\/plugins\/wpsso\/","author":9782930,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"21.12.0","stable_tag":"21.12.0","tested":"6.9.4","requires":"6.0","requires_php":"7.4.33","requires_plugins":null,"header_name":"WPSSO Core","header_author":"JS Morisset","header_description":"","assets_banners_color":"a8c160","last_updated":"2026-03-30 15:42:46","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wpsso.com\/extend\/plugins\/wpsso\/","header_author_uri":"https:\/\/wpsso.com\/","rating":4.6,"author_block_rating":0,"active_installs":5000,"downloads":4048140,"num_ratings":306,"support_threads":1,"support_threads_resolved":1,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"21.12.0":{"tag":"21.12.0","author":"jsmoriss","date":"2026-03-30 15:42:46"}},"upgrade_notice":{"21.13.0-dev.2":"<p>(TBD) None.<\/p>","21.12.0":"<p>(2026\/03\/25) Added an additional check to ignore an invalid YouTube video ID or URL.<\/p>","21.11.2":"<p>(2025\/12\/25) Updated the SSO &gt; Advanced Settings &gt; Attributes and Metadata &gt; Custom Fields &gt; Product GTIN Custom Field default option value to &quot;_global_unique_id&quot; for compatibility with WooCommerce.<\/p>","21.11.1":"<p>(2025\/12\/23) Fixed getting the primary category ID for WooCommerce products from Yoast SEO.<\/p>","21.11.0":"<p>(2025\/12\/20) Added Schema StrikethroughPrice and removed SalePrice and ListPrice price types in price specification markup (no longer supported by Google).<\/p>"},"ratings":{"1":19,"2":6,"3":5,"4":13,"5":263},"assets_icons":{"icon-128x128.jpg":{"filename":"icon-128x128.jpg","revision":2480164,"resolution":"128x128","location":"assets","locale":""},"icon-128x128.png":{"filename":"icon-128x128.png","revision":3167695,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.jpg":{"filename":"icon-256x256.jpg","revision":2480164,"resolution":"256x256","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3167695,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.jpg":{"filename":"banner-1544x500.jpg","revision":3312273,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.jpg":{"filename":"banner-772x250.jpg","revision":3312273,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["21.12.0"],"block_files":[],"assets_screenshots":{"screenshot-01.jpg":{"filename":"screenshot-01.jpg","revision":3167695,"resolution":"1","location":"assets","locale":""}},"screenshots":{"1":"The Essential, General, and Advanced settings pages provide all the options you may need, from simple blog sites to advanced e-commerce shops and everything in-between."},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[2988,1452,1117,5013,286],"plugin_category":[55,56,57],"plugin_contributors":[79194],"plugin_business_model":[],"class_list":["post-26954","plugin","type-plugin","status-publish","hentry","plugin_tags-meta-tags","plugin_tags-optimize","plugin_tags-schema","plugin_tags-search-results","plugin_tags-woocommerce","plugin_category-seo-and-marketing","plugin_category-social-and-sharing","plugin_category-taxonomy","plugin_contributors-jsmoriss","plugin_committers-jsmoriss"],"banners":{"banner":"https:\/\/ps.w.org\/wpsso\/assets\/banner-772x250.jpg?rev=3312273","banner_2x":"https:\/\/ps.w.org\/wpsso\/assets\/banner-1544x500.jpg?rev=3312273","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/wpsso\/assets\/icon-128x128.png?rev=3167695","icon_2x":"https:\/\/ps.w.org\/wpsso\/assets\/icon-256x256.png?rev=3167695","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/wpsso\/assets\/screenshot-01.jpg?rev=3167695","caption":"The Essential, General, and Advanced settings pages provide all the options you may need, from simple blog sites to advanced e-commerce shops and everything in-between."}],"raw_content":"<!--section=description-->\n<h3>Complete Schema Markup and Meta Tags for WordPress<\/h3>\n\n<p>Present your content at its best for social sites and search results, no matter how URLs are shared, reshared, messaged, posted, embedded, or crawled.<\/p>\n\n<!-- about -->\n\n<p><strong>The most comprehensive and accurate Schema markup plugin for WooCommerce products.<\/strong><\/p>\n\n<p>Supports over 500 different Schema types and sub-types (including Schema Event, Product Group, and the Service type for WooCommerce products).<\/p>\n\n<p><strong>Provides complete Schema markup and meta tags for:<\/strong><\/p>\n\n<ul>\n    <li>Facebook \/ Open Graph<\/li>\n    <li>Google Knowledge Graph<\/li>\n    <li>Google Merchant Feed XML<\/li>\n    <li>Google Rich Results \/ Rich Snippets<\/li>\n    <li>Image and Video SEO<\/li>\n    <li>Instagram Catalog Feed XMLs<\/li>\n    <li>Meta (Facebook and Instagram) Catalog Feed XMLs<\/li>\n    <li>Mobile Web Browsers<\/li>\n    <li>oEmbed for LinkedIn, Discord, and Drupal<\/li>\n    <li>Pinterest Rich Pins<\/li>\n    <li>Schema JSON-LD Markup<\/li>\n    <li>Slack<\/li>\n    <li>WhatsApp and Messaging Apps<\/li>\n    <li>WordPress REST API<\/li>\n    <li>WordPress Sitemaps XML<\/li>\n    <li>X (Twitter) Cards<\/li>\n<\/ul>\n\n<!-- \/about -->\n\n<p><strong>Fixes all Google Rich Results and Google Merchant errors, including:<\/strong><\/p>\n\n<ul>\n<li><em>A value for the headline field is required<\/em><\/li>\n<li><em>A value for the image field is required<\/em><\/li>\n<li><em>A value for the logo field is required<\/em><\/li>\n<li><em>A value for the publisher field is required<\/em><\/li>\n<li><em>Either \"price\" or \"priceSpecification\" should be specified (in \"offers\")<\/em><\/li>\n<li><em>Invalid value in field \"priceSpecification\"<\/em><\/li>\n<li><em>The aggregateRating field is recommended<\/em><\/li>\n<li><em>The brand field is recommended<\/em><\/li>\n<li><em>The headline field is recommended<\/em><\/li>\n<li><em>The image field is recommended<\/em><\/li>\n<li><em>The review field is recommended<\/em><\/li>\n<li><em>Missing field \"address\"<\/em><\/li>\n<li><em>Missing field \"aggregateRating\"<\/em><\/li>\n<li><em>Missing field \"brand\"<\/em><\/li>\n<li><em>Missing field \"businessDays\"<\/em><\/li>\n<li><em>Missing field \"cutoffTime\"<\/em><\/li>\n<li><em>Missing field \"deliveryTime\"<\/em><\/li>\n<li><em>Missing field \"hasMerchantReturnPolicy\" (in \"offers\")<\/em><\/li>\n<li><em>Missing field \"image\"<\/em><\/li>\n<li><em>Missing field \"priceRange\"<\/em><\/li>\n<li><em>Missing field \"review\"<\/em><\/li>\n<li><em>Missing field \"shippingDetails\" (in \"offers\")<\/em><\/li>\n<li><em>Missing field \"telephone\"<\/em><\/li>\n<li><em>No global identifier provided (e.g. gtin mpn isbn)<\/em><\/li>\n<li><em>Not a known valid target type for the itemReviewed property<\/em><\/li>\n<li><em>Price Mismatched value (page crawl): (price [price])<\/em><\/li>\n<\/ul>\n\n<p><strong>Optimized image sizes for social sites and search engines:<\/strong><\/p>\n\n<ul>\n<li>Commerce Manager Catalog Feed XML (Facebook and Instagram)<\/li>\n<li>Google Merchant Feed XML<\/li>\n<li>Open Graph (Facebook and oEmbed)<\/li>\n<li>Pinterest Pin It<\/li>\n<li>Schema 1:1 (Google Rich Results)<\/li>\n<li>Schema 4:3 (Google Rich Results)<\/li>\n<li>Schema 16:9 (Google Rich Results)<\/li>\n<li>Schema Thumbnail<\/li>\n<li>Video Preview Image<\/li>\n<li>X (Twitter) Summary Card<\/li>\n<li>X (Twitter) Summary Card Large Image<\/li>\n<\/ul>\n\n<p><strong>Reads additional information from active plugins, including:<\/strong><\/p>\n\n<ul>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/co-authors-plus\/\">Co-Authors Plus<\/a><\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/elementor\/\">Elementor Website Builder<\/a><\/li>\n<li>Gravity Forms<\/li>\n<li>Gravity View<\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/jetpack\/\">Jetpack<\/a><\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/jetpack-boost\/\">Jetpack Boost<\/a><\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/judgeme-product-reviews-woocommerce\/\">Judge.me Product Reviews for WooCommerce<\/a><\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/wp-retina-2x\/\">Perfect Images<\/a><\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/perfect-woocommerce-brands\/\">Perfect Brands for WooCommerce<\/a><\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/polylang\/\">Polylang<\/a><\/li>\n<li>Product GTIN (EAN, UPC, ISBN) for WooCommerce<\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/publishpress-authors\">PublishPress Authors<\/a><\/li>\n<li>qTranslate-XT<\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/rate-my-post\/\">Rate my Post<\/a><\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/simple-job-board\/\">Simple Job Board<\/a><\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/the-events-calendar\/\">The Events Calendar<\/a><\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/ultimate-member\/\">Ultimate Member<\/a><\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/woocommerce\/\">WooCommerce<\/a><\/li>\n<li>WooCommerce Brands<\/li>\n<li>WooCommerce Currency Switcher<\/li>\n<li>WooCommerce UPC, EAN, and ISBN<\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/wp-job-manager\/\">WP Job Manager<\/a><\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/wp-postratings\/\">WP-PostRatings<\/a><\/li>\n<li>WP Product Review<\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/wp-recipe-maker\/\">WP Recipe Maker<\/a><\/li>\n<li>WPML<\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/yith-woocommerce-brands-add-on\/\">YITH WooCommerce Brands Add-on<\/a><\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/yotpo-social-reviews-for-woocommerce\/\">Yotpo Social Reviews for WooCommerce<\/a><\/li>\n<\/ul>\n\n<p><strong>Supports additional WooCommerce product attributes:<\/strong><\/p>\n\n<ul>\n<li>Product Adult Type<\/li>\n<li>Product Age Group<\/li>\n<li>Product Availability<\/li>\n<li>Product Brand<\/li>\n<li>Product Google Category ID<\/li>\n<li>Product Color<\/li>\n<li>Product Condition<\/li>\n<li>Product Currency<\/li>\n<li>Product Energy Rating<\/li>\n<li>Product Fluid Volume<\/li>\n<li>Product GTIN-14<\/li>\n<li>Product GTIN-13 (EAN)<\/li>\n<li>Product GTIN-12 (UPC)<\/li>\n<li>Product GTIN-8<\/li>\n<li>Product GTIN<\/li>\n<li>Product Net Height<\/li>\n<li>Product ISBN<\/li>\n<li>Product Net Len. \/ Depth<\/li>\n<li>Product Material<\/li>\n<li>Product MPN<\/li>\n<li>Product Min Advert Price<\/li>\n<li>Product Pattern<\/li>\n<li>Product Price<\/li>\n<li>Product Price Type<\/li>\n<li>Product SKU<\/li>\n<li>Product Shipping Height<\/li>\n<li>Product Shipping Length<\/li>\n<li>Product Shipping Weight<\/li>\n<li>Product Shipping Width<\/li>\n<li>Product Size<\/li>\n<li>Product Size Group<\/li>\n<li>Product Size System<\/li>\n<li>Product Target Gender<\/li>\n<li>Product Net Weight<\/li>\n<li>Product Net Width<\/li>\n<\/ul>\n\n<p><strong>Optionally improves the structured data markup of other SEO plugins:<\/strong><\/p>\n\n<p>WPSSO Core and its add-ons can also run in combination with other SEO plugins to improve their performance and structured data markup.<\/p>\n\n<ul>\n<li>All in One SEO Pack<\/li>\n<li>Rank Math SEO<\/li>\n<li>SEOPress<\/li>\n<li>The SEO Framework<\/li>\n<li>WP Meta SEO<\/li>\n<li>Yoast SEO<\/li>\n<\/ul>\n\n<p><strong>Premium edition can retrieve data from service APIs automatically, including:<\/strong><\/p>\n\n<ul>\n<li>Bitly Short URL<\/li>\n<li>DLMY.App Short URL<\/li>\n<li>Facebook Video Data<\/li>\n<li>Gravatar Image Data<\/li>\n<li>Judge.me Review Data<\/li>\n<li>Ow.ly Short URL<\/li>\n<li>Shopper Approved Review Data<\/li>\n<li>Slideshare Presentation Data<\/li>\n<li>Soundcloud Track Data<\/li>\n<li>Stamped.io Review Data<\/li>\n<li>TinyURL Short URL<\/li>\n<li>Vimeo Video Data<\/li>\n<li>Wistia Video Data<\/li>\n<li>WP Media Library Video Block Data<\/li>\n<li>WP Media Library Video Shortcode Data<\/li>\n<li>Your Own URL Shortener (YOURLS) Short URL<\/li>\n<li>YouTube Video and Playlist Data<\/li>\n<\/ul>\n\n<!--section=installation-->\n<h3>Install and Uninstall<\/h3>\n\n<ul>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/installation\/install-the-plugin\/\">Install the WPSSO Core Plugin<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/installation\/uninstall-the-plugin\/\">Uninstall the WPSSO Core Plugin<\/a><\/li>\n<\/ul>\n\n<h3>Plugin Setup<\/h3>\n\n<ul>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/installation\/setup-guide\/\">Setup Guide<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/installation\/developer-special-buy-one-get-one-free\/\">Developer Special: Buy one, Get one Free<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/installation\/better-schema-for-woocommerce\/\">Better Schema Markup for WooCommerce<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/installation\/troubleshooting-guide\/\">Troubleshooting Guide<\/a><\/li>\n<\/ul>\n\n<!--section=faq-->\n<h3>Frequently Asked Questions<\/h3>\n\n<ul>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/faqs\/does-linkedin-read-the-open-graph-meta-tags\/\">Does LinkedIn read Facebook \/ Open Graph meta tags?<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/faqs\/how-can-i-fix-a-err_too_many_redirects-error\/\">How can I fix a ERR_TOO_MANY_REDIRECTS error?<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/faqs\/how-can-i-fix-a-generic-http-500-error\/\">How can I fix a generic HTTP 500 error?<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/faqs\/how-can-i-fix-a-php-fatal-out-of-memory-error\/\">How can I fix a PHP fatal \"out of memory\" error?<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/faqs\/how-can-i-fix-an-http-error-when-uploading-images\/\">How can I fix an HTTP error when uploading images?<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/faqs\/how-can-i-have-smaller-dimensions-for-the-default-image\/\">How can I have smaller dimensions for the default image?<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/faqs\/how-can-i-see-what-the-facebook-crawler-sees\/\">How can I see what the Facebook crawler sees?<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/faqs\/how-do-i-create-a-schema-faqpage\/\">How do I create a Schema FAQPage?<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/faqs\/how-do-i-enable-wordpress-wp_debug\/\">How do I enable WordPress WP_DEBUG?<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/faqs\/how-do-i-remove-duplicate-meta-tags\/\">How do I remove duplicate meta tags?<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/faqs\/how-does-wpsso-find-detect-select-images\/\">How does WPSSO Core find and select images?<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/faqs\/how-does-wpsso-find-detect-select-videos\/\">How does WPSSO Core find and select videos?<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/faqs\/w3c-says-there-is-no-attribute-property\/\">W3C says \"there is no attribute 'property'\"<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/faqs\/why-are-some-html-elements-missing-misaligned-different\/\">Why are some HTML elements missing or misaligned?<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/faqs\/why-does-facebook-show-the-wrong-image-text\/\">Why does Facebook show the wrong image \/ text?<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/faqs\/why-does-google-structured-data-testing-tool-show-errors\/\">Why does the Schema Markup Validator show errors?<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/faqs\/why-shouldnt-i-upload-small-images-to-the-media-library\/\">Why shouldn't I upload small images to the media library?<\/a><\/li>\n<\/ul>\n\n<h3>Notes and Documentation<\/h3>\n\n<ul>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/notes\/developer\/\">Developer Resources<\/a>\n\n<ul>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/notes\/developer\/the-mod-variable\/\">$mod Variable<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/notes\/developer\/actions\/\">Actions<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/notes\/developer\/constants\/\">Constants<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/notes\/developer\/filters\/\">Filters<\/a><\/li>\n<\/ul><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/notes\/inline-variables\/\">Inline Variables<\/a><\/li>\n<li><a href=\"https:\/\/wpsso.com\/docs\/plugins\/wpsso\/notes\/multisite-network-support\/\">Multisite \/ Network Support<\/a><\/li>\n<\/ul>\n\n<!--section=changelog-->\n<h3>Release Schedule<\/h3>\n\n<p>New versions of the plugin are released approximately every week (more or less). New features are added, tested, and released incrementally, instead of grouping them together in a major version release. When minor bugs fixes and\/or code improvements are applied, new versions are also released. This release schedule keeps the code stable and reliable, at the cost of more frequent updates.<\/p>\n\n<p>See <a href=\"https:\/\/en.wikipedia.org\/wiki\/Release_early,_release_often\">release early, release often (RERO) software development philosophy<\/a> on Wikipedia for more information on the benefits of smaller \/ more frequent releases.<\/p>\n\n<h3>Version Numbering<\/h3>\n\n<p>Version components: <code>{major}.{minor}.{bugfix}[-{stage}.{level}]<\/code><\/p>\n\n<ul>\n<li>{major} = Major structural code changes and\/or incompatible API changes (ie. breaking changes).hanges).<\/li>\n<li>{minor} = New functionality was added or improved in a backwards-compatible manner.<\/li>\n<li>{bugfix} = Backwards-compatible bug fixes or small improvements.<\/li>\n<li>{stage}.{level} = Pre-production release: dev &lt; a (alpha) &lt; b (beta) &lt; rc (release candidate).<\/li>\n<\/ul>\n\n<h3>Standard Edition Repositories<\/h3>\n\n<ul>\n<li><a href=\"https:\/\/surniaulula.github.io\/wpsso\/\">GitHub<\/a><\/li>\n<li><a href=\"https:\/\/plugins.trac.wordpress.org\/browser\/wpsso\/\">WordPress.org<\/a><\/li>\n<\/ul>\n\n<h3>Development Version Updates<\/h3>\n\n<p><strong>WPSSO Core Premium edition customers have access to development, alpha, beta, and release candidate version updates:<\/strong><\/p>\n\n<p>Under the SSO &gt; Update Manager settings page, select the \"Development and Up\" (for example) version filter for the WPSSO Core plugin and\/or its add-ons. When new development versions are available, they will automatically appear under your WordPress Dashboard &gt; Updates page. You can reselect the \"Stable \/ Production\" version filter at any time to reinstall the latest stable version.<\/p>\n\n<p><strong>WPSSO Core Standard edition users (ie. the plugin hosted on WordPress.org) have access to <a href=\"https:\/\/wordpress.org\/plugins\/wpsso\/advanced\/\">the latest development version under the Advanced Options section<\/a>.<\/strong><\/p>\n\n<h3>Changelog \/ Release Notes<\/h3>\n\n<p><strong>Version 21.13.0-dev.2 (TBD)<\/strong><\/p>\n\n<ul>\n<li><strong>New Features<\/strong>\n\n<ul>\n<li>None.<\/li>\n<\/ul><\/li>\n<li><strong>Improvements<\/strong>\n\n<ul>\n<li>None.<\/li>\n<\/ul><\/li>\n<li><strong>Bugfixes<\/strong>\n\n<ul>\n<li>None.<\/li>\n<\/ul><\/li>\n<li><strong>Developer Notes<\/strong>\n\n<ul>\n<li>None.<\/li>\n<\/ul><\/li>\n<li><strong>Requires At Least<\/strong>\n\n<ul>\n<li>PHP v7.4.33.<\/li>\n<li>WordPress v6.0.<\/li>\n<li>WPSSO Update Manager v7.2.0 (for Premium edition).<\/li>\n<\/ul><\/li>\n<\/ul>\n\n<p><strong>Version 21.12.0 (2026\/03\/25)<\/strong><\/p>\n\n<ul>\n<li><strong>New Features<\/strong>\n\n<ul>\n<li>None.<\/li>\n<\/ul><\/li>\n<li><strong>Improvements<\/strong>\n\n<ul>\n<li>Added an additional check to ignore an invalid YouTube video ID or URL.<\/li>\n<\/ul><\/li>\n<li><strong>Bugfixes<\/strong>\n\n<ul>\n<li>None.<\/li>\n<\/ul><\/li>\n<li><strong>Developer Notes<\/strong>\n\n<ul>\n<li>None.<\/li>\n<\/ul><\/li>\n<li><strong>Requires At Least<\/strong>\n\n<ul>\n<li>PHP v7.4.33.<\/li>\n<li>WordPress v6.0.<\/li>\n<li>WPSSO Update Manager v7.2.0 (for Premium edition).<\/li>\n<\/ul><\/li>\n<\/ul>\n\n<p><strong>Version 21.11.2 (2025\/12\/25)<\/strong><\/p>\n\n<ul>\n<li><strong>New Features<\/strong>\n\n<ul>\n<li>None.<\/li>\n<\/ul><\/li>\n<li><strong>Improvements<\/strong>\n\n<ul>\n<li>Updated the SSO &gt; Advanced Settings &gt; Attributes and Metadata &gt; Custom Fields &gt; Product GTIN Custom Field default option value to \"_global_unique_id\" for compatibility with WooCommerce.<\/li>\n<\/ul><\/li>\n<li><strong>Bugfixes<\/strong>\n\n<ul>\n<li>None.<\/li>\n<\/ul><\/li>\n<li><strong>Developer Notes<\/strong>\n\n<ul>\n<li>None.<\/li>\n<\/ul><\/li>\n<li><strong>Requires At Least<\/strong>\n\n<ul>\n<li>PHP v7.4.33.<\/li>\n<li>WordPress v6.0.<\/li>\n<li>WPSSO Update Manager v7.2.0 (for Premium edition).<\/li>\n<\/ul><\/li>\n<\/ul>\n\n<p><strong>Version 21.11.1 (2025\/12\/23)<\/strong><\/p>\n\n<ul>\n<li><strong>New Features<\/strong>\n\n<ul>\n<li>None.<\/li>\n<\/ul><\/li>\n<li><strong>Improvements<\/strong>\n\n<ul>\n<li>None.<\/li>\n<\/ul><\/li>\n<li><strong>Bugfixes<\/strong>\n\n<ul>\n<li>Fixed getting the primary category ID for WooCommerce products from Yoast SEO.<\/li>\n<\/ul><\/li>\n<li><strong>Developer Notes<\/strong>\n\n<ul>\n<li>Added new 'post_primary_tax_slug' and 'post_taxonomies' elements to the <code>$mod<\/code> array.<\/li>\n<li>Added the 'wpsso_primary_term_id' filter to the <code>WpssoPost-&gt;get_default_term_id()<\/code> method.<\/li>\n<li>Added support for inline variables to <code>WpssoIntegDataAbstractSeoMeta-&gt;filter_get_post_options()<\/code>.<\/li>\n<li>Refactored the <code>WpssoIntegSeoWpseo-&gt;filter_primary_term_id()<\/code> method to use the <code>$tax_slug<\/code> value as part of the meta key.<\/li>\n<li>Added a new 'wpsso_primary_term_id_is_custom' filter to the <code>WpssoPost-&gt;get_primary_term_id()<\/code> method.<\/li>\n<li>Removed the 'wpsso_default_term_id' filter.<\/li>\n<\/ul><\/li>\n<li><strong>Requires At Least<\/strong>\n\n<ul>\n<li>PHP v7.4.33.<\/li>\n<li>WordPress v5.9.<\/li>\n<li>WPSSO Update Manager v7.2.0 (for Premium edition).<\/li>\n<\/ul><\/li>\n<\/ul>\n\n<p><strong>Version 21.11.0 (2025\/12\/20)<\/strong><\/p>\n\n<ul>\n<li><strong>New Features<\/strong>\n\n<ul>\n<li>None.<\/li>\n<\/ul><\/li>\n<li><strong>Improvements<\/strong>\n\n<ul>\n<li>Added the Schema StrikethroughPrice price type in price specification markup.<\/li>\n<li>Removed the Schema SalePrice and ListPrice price types in price specification markup (no longer supported by Google).<\/li>\n<li>Removed the \"Default Product Price Type\" option from the SSO &gt; Advanced Settings page.<\/li>\n<li>Updated the add-ons for filter name changes:\n\n<ul>\n<li>WPSSO Schema Breadcrumbs Markup<\/li>\n<li>WPSSO Ratings and Reviews<\/li>\n<\/ul><\/li>\n<\/ul><\/li>\n<li><strong>Bugfixes<\/strong>\n\n<ul>\n<li>None.<\/li>\n<\/ul><\/li>\n<li><strong>Developer Notes<\/strong>\n\n<ul>\n<li>Added a new 'wpsso_add_schema_unit_price_specification' filter.<\/li>\n<li>Renamed the 'wpsso_add_custom_post_type_options' filter to 'wpsso_custom_post_type_options'.<\/li>\n<li>Renamed the 'wpsso_add_custom_post_type_archive_options' filter to 'wpsso_custom_post_type_archive_options'.<\/li>\n<li>Renamed the 'wpsso_add_custom_taxonomy_options' filter to 'wpsso_custom_taxonomy_options'.<\/li>\n<\/ul><\/li>\n<li><strong>Requires At Least<\/strong>\n\n<ul>\n<li>PHP v7.4.33.<\/li>\n<li>WordPress v5.9.<\/li>\n<li>WPSSO Update Manager v7.2.0 (for Premium edition).<\/li>\n<\/ul><\/li>\n<\/ul>","raw_excerpt":"Present your content at its best for social sites and search results, no matter how URLs are shared, reshared, messaged, posted, embedded, or crawled.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/26954","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=26954"}],"author":[{"embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/jsmoriss"}],"wp:attachment":[{"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=26954"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=26954"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=26954"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=26954"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=26954"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=26954"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}