Prompt playbook (end-to-end)
Ready-to-use prompts for building (or updating) a WordPress + Elementor page or
blog post with Claude, in order. Each block is a template — replace the <...>
placeholders and paste it as your message. They assume the
Content & layout projects mechanics and
a per-client repo following its CLAUDE.md.
Tip: paste one stage at a time and review before moving on. Claude ships drafts only and will pause for the things only you can do — open the Elementor editor, set a featured image, click Publish, share a Doc.
Which path am I on?
Section titled “Which path am I on?”- New page from an existing layout → stages 1-3, then 4A (clone & customize). Modern Collision city/service pages.
- New page/blog with no reusable layout (esp. many uniform ones) → stages 1-3, then 4B (generate from source). Charlotte Window Tinting blog batch.
- Updating a page that’s already live → start at stage 0, then rejoin at 4A/4B as needed.
0. (Updates only) draft-copy a published page
Section titled “0. (Updates only) draft-copy a published page”Skip this for new pages. You do this part in wp-admin yourself.
The page <live URL> is already published and we need to update it. I'll use YoastDuplicate Post → Rewrite & Republish to make a draft copy, then give you its post_id.Remind me of the exact wp-admin steps, and confirm that republishing later mergesback onto the same URL/post_id (no duplicate page, SEO history kept).1. Kick off from the ClickUp task
Section titled “1. Kick off from the ClickUp task”Here is the ClickUp task: <ClickUp task URL>.Read it and the linked content workbook. Tell me:- which pages / blog posts are in scope this round,- the WordPress site_id and live URL,- the content doc link per page,- whether each item is a NEW page or an update to a published one.Don't build anything yet — just summarize the scope and what you need from me.2. Synthesize the content workbook
Section titled “2. Synthesize the content workbook”Content workbook: <Google Sheet URL>, tab <tab name>, rows <range> (SOP Onsite SEO column).Extract the per-page content doc links (use the xlsx hyperlink method — CSV/HTMLexports strip the links), then pull each doc into content/<slug>.md.List every page you found: topic, slug, target URL, doc ID, and new-vs-update.3. Verify the site, set up the repo
Section titled “3. Verify the site, set up the repo”Verify the site is reachable for this project and record the facts in CLAUDE.md:- list_sites (token can see <site_id>), ping_site / diagnose_site, list_builders_for_site,- the page template every draft must use (e.g. page-templates/fullwidth-content.php or template-elementor.php),- whether RankMath set_seo_meta / set_seo_schema work, or schema must go in an HTML widget.Then scaffold the repo per CLAUDE.md: README.md deliverables table (page → WP id →target URL), content/, scripts/, build/ (gitignored), uat/. Show me CLAUDE.md before continuing.4A. Build — clone & customize (existing layout)
Section titled “4A. Build — clone & customize (existing layout)”Use when a published page already has the layout you want.
Build the <page> draft by cloning the layout of post <source_post_id> (<source URL>):1. elementor-mcp-save-as-template on the source → template_id,2. create the new draft, elementor-mcp-apply-template into it (fresh widget IDs),3. update_page_draft to set template="<page-template>" — the apply step does NOT copy it,4. elementor-mcp-get-page-structure, map old→new widget IDs, then elementor-mcp-batch-update the text fields (title, editor, title_text, description_text, accordion tabs[], html) from content/<slug>.md — chunk to ~10 ops per call.Rewrite every city/route/local reference to the target — don't leak the source city.Show me the old→new ID mapping before you batch-update.4B. Build — generate from source (uniform pages/blogs)
Section titled “4B. Build — generate from source (uniform pages/blogs)”Use when there’s no reusable layout, or you need many pages with the same shape.
Build the <page> draft from source content:1. Author content/source/<slug>.json as block-schema (ordered blocks: h1/h2/h3/p/ul/ol/ table/toc/faq), then run the build script to emit articles/elementor/<slug>.json deterministically (stable IDs) + a readable markdown mirror for review,2. create_draft (title from H1, slug, excerpt from intro) → post_id,3. elementor-mcp-import-template (position -1),4. elementor-mcp-update-page-settings to set template="<page-template>",5. elementor-mcp-get-page-structure to verify the section/widget tree rendered (not fallback).Record the post_id back into the registry. Tell me what to set manually (featured image).5. SEO metadata (on the draft)
Section titled “5. SEO metadata (on the draft)”On the <page> draft (never on a published page) set the SEO meta and schema:- set_seo_meta: title tag, meta description, focus keyword from content/<slug>.md,- set_seo_schema: Article/BlogPosting + FAQPage (or, if the RankMath bridge is off on this site, give me the JSON-LD to drop into an HTML widget instead).Confirm what was set and via which channel.6. UAT pass, then log it
Section titled “6. UAT pass, then log it”Do a UAT pass on the <page> draft against content/<slug>.md and the SOP checklist:render (no Elementor fallback), all sections present, internal links, tables, FAQaccordion, schema, image relevance. Log findings in uat/<file>.md and update ClickUp<UAT task/doc URL>, categorizing each issue by owner:MCP-fixable (text/links/structure) / design-judgment (imagery, spacing, icon grids) /site-level (redirects, theme template). Plain text, no emoji, bare URLs.7. Fix the MCP-fixable issues in place
Section titled “7. Fix the MCP-fixable issues in place”Read uat/<file>.md (and ClickUp <UAT URL>). For each MCP-fixable issue, edit the draftIN PLACE with elementor-mcp-update-element / update-widget — do NOT re-import or re-clone(that flips the post to fallback render and can't be undone via MCP). List the design-judgment and site-level issues back to me. Summarize what you changed.8. Verify the fixes
Section titled “8. Verify the fixes”Re-check the <page> draft: elementor-mcp-get-page-structure to confirm it's still inbuilder mode (not fallback) and every UAT issue from uat/<file>.md is resolved.Flag any regressions. If it fell into fallback, tell me to open it once in theElementor editor to restore builder mode.9. End-to-end pass before go-live
Section titled “9. End-to-end pass before go-live”Final end-to-end check across all <N> pages/posts this round:- content complete vs the docs, tables and FAQ intact, schema + SEO meta set,- page template correct on each draft, no leaked source-city references,- builder mode (not fallback) on every draft.Then draft the handover comment for ClickUp <task URL> (What was done / QA / Needsdesign or editor / Site-level / Notes) and ask me before posting.10. Go-live
Section titled “10. Go-live”Approved to go live on <page(s)>. The MCP can't publish, so:- NEW pages: I'll set the featured image + parent, then click Publish in wp-admin,- UPDATES: I'll click Republish in Yoast Duplicate Post (merges onto the original URL).Give me the exact wp-admin steps per item, then post a short "published" note onClickUp <task URL>.- Replace placeholders every time; never leave a
<...>in a prompt you send. - Claude needs your approval for any live-site change and will wait for you to open the Elementor editor, set a featured image, or click Publish/Republish — that’s expected, not a failure.
- For the underlying mechanics (the two patterns, repo layout, gotchas like the page-template-not-copied and re-import-reverts-to-fallback traps) see Content & layout projects.