Yoast SEO
verified 28.5 (free)Post meta — but the page is rendered from Yoast's own indexables table. The fields live in wp_.
- SEO title
_yoast_ wpseo_ title - Meta description
_yoast_ wpseo_ metadesc - Open Graph title
_yoast_ wpseo_ opengraph- title - Open Graph description
_yoast_ wpseo_ opengraph- description - X (Twitter) card title
_yoast_ wpseo_ twitter- title - X (Twitter) card description
_yoast_ wpseo_ twitter- description
The indexables trap
Yoast renders the page from wp_yoast_indexable, not from post meta. Update _yoast_wpseo_metadesc directly and the value is stored correctly while the page keeps serving the old one, until the post's indexable is rebuilt. After writing, SnippetGrove deletes that post's indexable through Yoast's own classes, and Yoast rebuilds it from post meta on the next request. It does not re-save the post, because that would change post_modified on every post a bulk run touches.
Verified on Yoast SEO 28.1, .
An empty field is not an empty page
With _yoast_wpseo_metadesc empty, Yoast still renders a description built from its template fallback. The rendered tag tells you what the page serves. The stored field tells you whether anyone actually wrote a description, and that is what an audit needs to know.
Verified on Yoast SEO 28.1, .