New Plugin Fixes ‘hasMerchantReturnPolicy’ Warning for WooCommerce Products

2023/06/07 Update: The WPSSO Merchant Return Policy add-on has been approved on – you can find it here.

A new WPSSO Merchant Return Policy Manager (WPSSO MRP) add-on has been released for WPSSO Core.

This new add-on allows you to manage one or more Merchant Return Policies, assign one as the default for your products, and customize individual products for different return policies.

There is currently a 40+ day backlog for new plugins submitted to, so as of now the WPSSO MRP add-on is only available for download directly from

WPSSO Core Premium customers can also find the new WPSSO MRP add-on under the SSO > Plugin Add-ons settings page.

Continue reading

What’s New in WPSSO Core v15

The common way to create Schema markup for WooCommerce product variations in the past has been to create multiple Schema offers for a product – one offer per variation. Unfortunately, the Google merchant crawler has always been very unreliable when reading offers, sometimes being able to read product offers, and sometimes not. Even now, after Google added merchant validation to their Rich Results Test tool, it does not guarantee that the Google merchant crawler will be able to read Schema markup as predicted by Google’s test tool.

Some structured data plugins have attempted to work around the limitations of Google merchant’s crawler by offering different Schema markup when query arguments for variation attributes are present in the URL. WooCommerce creates a single webpage for a product (like WordPress does for a single Post or Page), and javascript is used to adjust the information displayed based on URL query arguments for variation attributes – but there still is only one singular HTML webpage for a product. Some structured data plugins break this single product webpage by adjusting the Schema markup to include only the variation offer when URL query arguments are present. This has some serious drawbacks as the WooCommerce product webpage can no longer be cached, the canonical URL value is now invalid (ie. points to the main product page, which has different markup), and search engines traditionally ignore query arguments, which means they are seeing different markup for the same URLs. Breaking the WooCommerce product webpage might help fix Google merchant’s limitations, but it does so at the expense of search engine ranking.

So, how do we preserve the single webpage for a WooCommerce product with variations?

Continue reading

Better Schema Markup for WooCommerce

WPSSO + WooCommerce logos.

WooCommerce is a popular e-commerce plugin, with a solid and well designed code base, but WooCommerce is not an SEO plugin – its Schema markup for search engines is minimal and it does not provide any social meta tags for Facebook, Pinterest, Twitter, etc. This guide provides a quick and easy solution to fix your WooCommerce product Schema markup and meta tags.

Warnings for WooCommerce Markup

The Google Rich Results Test Tool, Schema Markup Validator, or the Google Search Console may report one or more of the following errors for the Schema markup provided by the WooCommerce plugin:

Continue reading

SEO Plugin Performance Report for Q2 2022

In June 2021, and then again in September 2021, we compared the performance of the most popular SEO plugins for WordPress. To continue what has become a bit of a tradition, we present the latest SEO performance report for April 2022.

We’ve classified the performance of each SEO plugin into one of three categories (best, average, and worst) and included a baseline chart for WordPress and the 2021 theme. This gives us a good baseline reference for the performance of each SEO plugin – as you will see, the best performing SEO plugins have almost no effect, while the slowest SEO plugin almost doubles the page load time and the number of database queries.

Continue reading

New WPSSO Google Merchant Feed Add-on

Just released, the new WPSSO Google Merchant Feed add-on retrieves product information from WPSSO Core Premium and provides maintenance free XML feeds for each WordPress language (aka locale).

There are no add-on settings to configure — the WPSSO Google Merchant Feed add-on automatically retrieves all product information in the language (aka locale) requested.

A supported e-commerce plugin, like WooCommerce or Easy Digital Downloads, is suggested but not required — the WPSSO Google Merchant Feed add-on can also retrieve custom product information entered in the WordPress editor Document SSO metabox. WooCommerce variations and additional WooCommerce product attributes are fully supported.

Continue reading

SEO Plugin Performance Report for Q4 2021

In June of 2021 an SEO plugin for WordPress boasted they were “one of the fastest SEO plugins” available, so using the Query Monitor plugin, we tested the performance of several SEO plugins to see if their claim was true (spoiler alert, it wasn’t).

In the months since that article, there has been a new version of WordPress and new versions of several SEO plugins, so we were curious to see if the SEO plugin performance results had changed for Q4 2021. The WPSSO Core plugin, for example, has integrated their Schema JSON-LD add-on into their Core plugin, so the features of WPSSO Core have increased significantly – would it also affect its performance?

Continue reading

Shipping Delivery Time for Google Rich Results

WPSSO + WooCommerce logos.

In September 2020, Google announced support for shipping details in Schema Product Offers and how shipping details would be presented in search results. Adding the new shippingDetails property to your Schema Product markup is especially important if you offer free or low-cost shipping, as this will make your products more appealing in search results.

In October, Surnia Ulula announced support for shipping details in the WPSSO Core Premium plugin, to provide both the Google recommended Schema OfferShippingDetails shippingDestination and shippingRate properties for WooCommerce products. Although these two properties are enough to satisfy Google’s recommended shipping details markup, the Google validator now warns that an additional deliveryTime property is recommended.

The deliveryTime property should be a Schema ShippingDeliveryTime type that includes businessDays, cutoffTime, handlingTime, and transitTime properties. The data for these four properties can be managed with a new WPSSO Shipping Delivery Time for WooCommerce add-on.

Continue reading

A Better ‘pre_get_posts’ Search for WooCommerce

WPSSO + WooCommerce logos.

I recently wrote a plugin to provide missing GTIN, GTIN-8, GTIN-12 (UPC), GTIN-13 (EAN), GTIN-14, ISBN, MPN, Depth, and Volume values for WooCommerce Products and Variations. As part of that plugin, I extended the WordPress search feature to search metadata from WooCommerce products (and their variations). The standard way to extend the WordPress search feature is to hook the “pre_get_posts” action and modify the WP_Query to include additional posts / products in search results. There are some serious drawbacks to doing this – with or without WooCommerce – but especially with WooCommerce.

Continue reading