-
Hi,
I have a couple of questions: First, I noticed that Rankmath is adding a ton of schema where I don’t think all these values are necessary. I even read from Google that overfilling the html with it is not recommended.For example in the product schema there are numerous values like ItemPage, image width and height etc. Why do you add all these?
Secondly, I would like to know how to change the organization to OnlineStore – Google recomends it for online shops: https://developers.google.com/search/blog/2024/06/structured-data-return-policies?hl=enAnd how to add the shippingdetails and returnpolicy at organization level WITHOUT Rankmath Pro? Google recommends this as well in the above mentioned article.
Thank you!
-
Hello,
We apologize for the issues you are facing regarding the schema implementation with Rank Math. Thank you for raising your concerns.
Regarding your first question about the numerous schema values being added, Rank Math aims to provide comprehensive structured data to enhance your website’s visibility in search results. While it may seem excessive, these additional properties can help search engines better understand your content and improve your chances of appearing in rich snippets. However, we understand that not all values may be necessary for every site, and you can customize the schema to fit your needs by using the Schema Builder feature in Rank Math.
For your second question about changing the organization to OnlineStore, you can do this by navigating to the Local SEO settings in Rank Math. Here’s how:
- Go to Rank Math SEO → Dashboard in your WordPress dashboard.
- Enable the Local SEO module.
- Click on the Settings button next to it and select the Organization option.
- Here, you can change the type to OnlineStore as recommended by Google.
To add shipping details and return policy at the organization level without Rank Math Pro, you can manually add this information using custom schema markup. Unfortunately, without the Pro version, you won’t have access to the Schema Templates feature that simplifies this process. You can refer to Google’s documentation for guidance on how to implement this manually:
If you need further assistance or specific instructions, please reply to this ticket, and a human agent from the Rank Math Support team will take over and provide more detailed help.
Thank you for your understanding!
Hi,
thank you.
Regarding my first question: the free version does not include the schema builder. So how would I modify the schema then?
Regarding the OnlineStore: this option is not possible in the Local SEO option dropdown.
Regarding adding the shippingdetails and returnpolicy: please let me know how to add it manually at the organization level.Thank you!
Hello,
Please note that the Advanced Schema builder is available with Rank Math PRO only:
https://rankmath.com/kb/rich-snippets/#advanced-schema-editorAlso, the properties from the Organization schema are automatically added to your site based on the data you save from the Local SEO section.
If there are any issues with the schema, you can validate it using these tools:
https://search.google.com/test/rich-results
https://validator.schema.org/You can also use and customize the filter we mentioned here in case you want to remove the Organization schema that is automatically added:
https://rankmath.com/kb/remove-organization-schema/Regarding the Business Type dropdown in Local SEO, you can choose “Organization” there instead.
Lastly, you can follow our guide here to add the shippingdetails and returnpolicy:
https://rankmath.com/kb/merchant-return-and-shipping-policy/Looking forward to helping you.
Thank you, but all this does not answer any of my questions.
1. I would like to know how to add “OnlineStore” instead of “Organization” as Google recommends this in the article I mentioned above.
2. I don’t want to remove the whole organisation schema, I only want to add shippingdetails and returnpolicy to it (and not to the product schema!) without the schema editor.
Thank you for your help.
Hello,
Please use the following filter to modify the business type and add the shipping & return policy:
add_filter( 'rank_math/json_ld', function( $data, $jsonld ) { $data['publisher']['@type'] = "OnlineStore"; // Return policy $data['publisher']['hasMerchantReturnPolicy']['@type'] = 'MerchantReturnPolicy'; $data['publisher']['hasMerchantReturnPolicy']['applicableCountry'] = 'US'; $data['publisher']['hasMerchantReturnPolicy']['returnPolicyCountry'] = 'US'; $data['publisher']['hasMerchantReturnPolicy']['returnPolicyCategory'] = 'https://schema.org/MerchantReturnFiniteReturnWindow'; $data['publisher']['hasMerchantReturnPolicy']['merchantReturnDays'] = 7; $data['publisher']['hasMerchantReturnPolicy']['returnMethod'] = 'https://schema.org/ReturnByMail'; $data['publisher']['hasMerchantReturnPolicy']['returnFees'] = 'https://schema.org/FreeReturn'; $data['publisher']['hasMerchantReturnPolicy']['refundType'] = 'https://schema.org/FullRefund'; // Shipping details $data['publisher']['shippingDetails']['@type'] = 'OfferShippingDetails'; $data['publisher']['shippingDetails']['shippingRate']['@type'] = 'MonetaryAmount'; $data['publisher']['shippingDetails']['shippingRate']['value'] = 5; $data['publisher']['shippingDetails']['shippingRate']['currency'] = 'USD'; $data['publisher']['shippingDetails']['shippingDestination']['@type'] = 'DefinedRegion'; $data['publisher']['shippingDetails']['shippingDestination']['addressCountry'] = 'US'; $data['publisher']['shippingDetails']['deliveryTime']['@type'] = 'ShippingDeliveryTime'; $data['publisher']['shippingDetails']['deliveryTime']['handlingTime']['@type'] = 'QuantitativeValue'; $data['publisher']['shippingDetails']['deliveryTime']['handlingTime']['minValue'] = 0; $data['publisher']['shippingDetails']['deliveryTime']['handlingTime']['maxValue'] = 1; $data['publisher']['shippingDetails']['deliveryTime']['handlingTime']['unitCode'] = 'DAY'; $data['publisher']['shippingDetails']['deliveryTime']['transitTime']['@type'] = 'QuantitativeValue'; $data['publisher']['shippingDetails']['deliveryTime']['transitTime']['minValue'] = 0; $data['publisher']['shippingDetails']['deliveryTime']['transitTime']['maxValue'] = 3; $data['publisher']['shippingDetails']['deliveryTime']['transitTime']['unitCode'] = 'DAY'; return $data; }, 99, 2);Here is how to add a filter to your site: https://rankmath.com/kb/wordpress-hooks-actions-filters/
Hope that helps and please do not hesitate to let us know if you need our assistance with anything else.
Thank you very much. But what about the Onlineshop?
If your site is an online or local business, we recommend using one of the OnlineStore, or LocalBusiness subtypes of Organization.
EDIT: Oh sorry, I just noticed you changed it in the code above as well! Thank you very, very much!
Hello,
We are super happy that this resolved your issue. If you have any other questions in the future, know that we are here to help you.
If you don’t mind me asking, could you please leave us a review (if you haven’t already) on https://wordpress.org/support/plugin/seo-by-rank-math/reviews/#new-post about your overall experience with Rank Math? We appreciate your time and patience.
If you do have another question in the future, please feel free to create a new forum topic, and it will be our pleasure to assist you again.
Thank you.
The ticket ‘Organization schema’ is closed to new replies.