Here is a query you can use to query all posts in WordPress not having a Yoast SEO meta description yet. You can run this on your MySQL prompt or in phpMyAdmin.
SELECT p.ID, p.post_title, pm.meta_key, pm.meta_value
FROM wp_posts p
LEFT JOIN wp_postmeta pm ON p.ID = pm.post_id AND pm.meta_key = '_yoast_wpseo_metadesc'
WHERE p.post_type in ('post', 'page')
AND p.post_status='publish'
AND pm.meta_key IS NULL;
The SQL query above lists all posts and pages not having a Yoast SEO meta description, because we look at WHERE ... pm.meta_key IS NULL
. If you want to inspect all meta description, change it to IS NOT NULL
, like this:
SELECT p.ID, p.post_title, pm.meta_key, pm.meta_value
FROM wp_posts p
LEFT JOIN wp_postmeta pm ON p.ID = pm.post_id AND pm.meta_key = '_yoast_wpseo_metadesc'
WHERE p.post_type in ('post', 'page')
AND p.post_status='publish'
AND pm.meta_key IS NOT NULL;
This may come in handy to when you want to bulk review the meta descriptions of all your posts and pages.