Blank descriptions are killing your traffic and your conversions
Posts without a meta description let Google write your own snippet. It picks the first crawlable text it finds: navigation breadcrumbs, a category label, or the first 160 characters of body copy that starts mid-sentence. Your click-through rate drops against competitors whose snippets actually sell the page.
Products without body copy are worse. A product page with a name, a price, and no description gives the visitor nothing to hold onto. Your image and price do all the work. Many stores ship products with placeholder copy that was never meant to be permanent, and it stays there for years.
What most people do instead
A better way: the right command for the right content type
The split is clean: generate post description writes a meta description for posts and pages, hard-capped at 160 characters because Google truncates anything longer. generate product description writes the on-page body copy for WooCommerce products, returned as structured JSON so you control the formatting.
Both run from the TrueCommander navigator. Both go through the server-side AI proxy, no API key, no external account. You pass a single ID. The result appears in the navigator in seconds.
160 characters is not a suggestion. Google truncates meta descriptions above that limit in search results. The generate post description command instructs AI to stay under the limit and prohibits trailing ellipsis. What you receive is ready to paste.
What each command does
Two commands, two distinct jobs. Pick the one that matches what you are writing.
| Command | What it does |
|---|---|
generate post description | Writes a meta description for a post or page. Reads the title, any existing excerpt, and up to 2000 characters of body text. Returns a description of 160 characters or fewer, with a primary keyword included naturally and no trailing ellipsis. Also returns the keyword it targeted. For WooCommerce products, the command redirects you to use generate seo description instead, which can factor in pricing and categories. |
generate product description | Writes full on-page body copy for a WooCommerce product. Reads the product name, price, currency, categories, short description, and any existing long description. Returns structured JSON: a headline, a 2 to 3 sentence benefit-led intro, 3 to 6 features framed as buyer benefits, and one call-to-action line. No HTML in the output, so your store formats it however you like. |
How it works
For posts: the command fetches the post via get_post($post_id), checks it is a public non-product post type, reads the title, the excerpt if present, and strips the post content down to 2000 characters of plain text. The prompt instructs AI to produce a description under 160 characters, include the primary keyword naturally, and avoid ellipsis. For products: the command calls wc_get_product($product_id), reads name, price, formatted currency, categories, short description, and existing long description, then asks AI for structured benefit-led copy. Both commands go through TrueCommander's server-side AI proxy.
generate post description. WooCommerce product ID for generate product description. The commands validate the type and return a helpful error if you pass the wrong one.| Detail | Value |
|---|---|
-post_id (required for post description) | Numeric ID of a public post or page. Not a WooCommerce product. |
-product_id (required for product description) | Numeric WooCommerce product ID |
| Post content limit | Up to 2000 characters of plain body text sent to AI |
| Meta description length | 160 characters or fewer, prompt-enforced, no trailing ellipsis |
| Product description format | Structured JSON: headline, intro (2 to 3 sentences), features (3 to 6 items), cta. No HTML. |
| Requires (product command) | WooCommerce. Returns error when plugin is deactivated. |
| AI provider | TrueCommander's server-side proxy, no API key required |
| Can be used in |
Real example
You launched a WooCommerce store with 30 products. Every product has a name, a price, and a short description that was pasted from the supplier sheet. None of them have body copy. Your blog has 18 posts with no meta description, written over two years before you cared about SEO.
You build two macros. The first uses tp filter products -status=publish with Repeat to loop through each product ID and run tp generate product description -product_id={{item.id}}. You review the structured output per product and paste the intro and features into the product editor. The second macro does the same for posts using filter posts and generate post description, then writes the result back with update post meta directly to Yoast's meta field. Two afternoons of reviewing AI output instead of two months of writing from scratch.
Goes further with TrueCommander
filter products or filter posts into a Repeat step to call generate product description or generate post description for each item in the result set. Bulk-generate the whole backlog in one macro run.update post meta with the Yoast or Rank Math meta key. Fully automated, no copy-paste required.generate post description as the last step of your post-publishing macro. Every new post gets a meta description the moment it goes live, automatically.