Hello,
Thank you for contacting Rank Math and bringing your concern to our attention. I’m sorry for any inconvenience this issue may have caused you.
This is the order we follow to generate meta descriptions for WooCommerce products or product categories for that matter:
1. Content from SEO Description field
If that is missing, then:
2. WooCommerce Excerpt or Product Short Description
If that is missing, then:
3. Template From General Settings in WordPress Dashboard > Rank Math > Titles & Meta > Products
If that is missing, then:
4. Auto-generated Content from the product page.
However, if you wanted to force the use of the description you have set in Global product settings (Rank math > Titles & meta > Products > Single Product Description), please add the following filter to your active theme’s functions.php file:
/**
* Use the Description from Global Setting, if the description is missing in the Post metabox
*/
add_action( 'rank_math/frontend/description', function( $description ) {
global $post;
$desc = RankMath\Post::get_meta( 'description', $post->ID );
if ( is_product()) {
$desc = RankMath\Helper::get_settings( "titles.pt_{$post->post_type}_description" );
if ( $desc ) {
return RankMath\Helper::replace_vars( $desc, $post );
}
}
return $description;
});
Please note that the filter may not be visible while editing the products as it only works when your products load in a browser. Once done, clear your website’s cache and check the published product meta description via the page’s source code.
I hope that helps.
Thank you.
Thing is , i have a product short description that’s written in the content.
This that mean that would override global setting ?
Hello,
The filter code my colleague shared will forcibly use the settings you set in the global meta and override the settings you configured on the individual product page.
If you do wish to use the filter code, you can check the final output of the meta description here: https://rankmath.com/tools/meta-tag-analyzer/
Hope that helps.
Thank you.
Hello,
Since we did not hear back from you for 15 days, we are assuming that you found the solution. We are closing this support ticket.
If you still need assistance or any other help, please feel free to open a new support ticket, and we will be more than happy to assist.
Thank you.