
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.
WPSSO Core Premium can now retrieve shipping information for WooCommerce products, including shipping zones, methods, rates, and locations (continents, countries, states, and postal / zip codes). If you’re using postal / zip code wildcards or ranges for shipping, WPSSO Core Premium can also create the proper PostalCodeRangeSpecification markup suggested by Google.
When using the WPSSO Schema JSON-LD Markup add-on (Free or Premium) to add Schema markup to your WooCommerce product webpages, an example shippingDetails property value might look like this:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
{ "@id": "/product/a-woocommerce-product/#sso/shipping-class-117-zone-2", "@context": "https://schema.org", "@type": "OfferShippingDetails", "name": "Canada", "shippingDestination": [ { "@context": "https://schema.org", "@type": "DefinedRegion", "addressCountry": "CA", "postalCodeRange": [ { "@context": "https://schema.org", "@type": "PostalCodeRangeSpecification", "postalCodeBegin": "H1A 1A1", "postalCodeEnd": "H9X 9Z9" } ] } ], "shippingRate": [ { "@context": "https://schema.org", "@type": "MonetaryAmount", "name": "Flat rate", "currency": "USD", "value": "10" } ] } |
Note the use of an @id string to optimize the JSON markup and avoid repeating the same OfferShippingDetails markup for multiple product variations. The WPSSO JSON add-on can also uses an AggregateOffer type to combine multiple variation offers by currency, so you may see the shippingDetails property added to individual offers, or to the aggregate offer (if all variations share the same shipping options).
For more information on Google’s recommended product markup, including the new shippingDetails property, you can find Google’s product markup reference here.
Note that several Schema properties and types used in Google’s recommended product markup are still pending approval:
- https://schema.org/shippingDetails
- https://schema.org/shippingDestination
- https://schema.org/OfferShippingDetails
- https://schema.org/DefinedRegion
- https://schema.org/PostalCodeRangeSpecification
At this time, OfferShippingDetails type does not provide a way to include shipping rates with conditions – for example, “free shipping for orders over $100“. Shipping rate conditions may be defined in a ShippingRateSettings type, but a ShippingRateSettings type can only be included in the OfferShippingDetails using a shippingSettingsLink URL, which is not available in the context of a WooCommerce shop (WooCommerce does not offer a general shipping information page).