Programmatic SEO on WordPress: bulk pages from one template, done carefully
Vikas Chamarthi, Founder · Updated
XeoRank's programmatic SEO support is bulk page creation on WordPress: an AI agent clones one Elementor template page into up to 25 draft variants in a single request, each with its own find and replace, such as a city or a specialty. It is not a spreadsheet-driven page generator, and every variant is created as a draft so you can make each one worth indexing before it goes live.
That second part matters more than the cloning. Pages that differ only by a swapped place name can match the pattern Google's spam policies describe as doorway abuse.
How bulk page creation works
- Pick a source page built in Elementor that already does its job.
- List the variants. Each one has a title, an optional slug and its own find-and-replace pairs, for example Austin to Denver and Texas to Colorado.
- Ask the agent to clone the source into those variants. XeoRank copies the Elementor data server-side, so nothing is truncated or rebuilt by hand, and applies each variant's replacements to its own copy.
- You get back each variant's page ID, title and the number of replacements made. Every variant is a draft.
- Edit each draft so it has specific content of its own, then publish the ones that earn a place on the site.
The request itself is plain language:
"Clone our /services/austin page into drafts for Denver, Phoenix and Salt Lake City. Replace the city and state names in each, use slugs like /services/denver, and send me preview links."
You run this from Claude, ChatGPT, Codex, Cursor or VS Code with the XeoRank MCP server connected, and the free XeoRank Connector plugin on the WordPress site.
Other bulk tools
- Bulk find and replace on one Elementor page: swap terms across every editable text field in a single request, with options for whole-word and case-insensitive matching, and a dry run that shows the count and sample changes before anything is written.
- Exact page clone: duplicate an Elementor, block editor or classic page as a draft without touching the original.
- Cross-site copy: copy an Elementor page from one WordPress site to another, with its images rehosted in the destination's media library. Elementor Pro widgets need Elementor Pro on the destination to render.
All of them need writes enabled for the site, and every page-content edit keeps a snapshot you can restore. The Elementor integration page covers how pages are written as native Elementor elements.
The risk: doorway pages and scaled content
Google's spam policies define doorway abuse as sites or pages created to rank for specific, similar search queries, and list city- or region-targeted pages that funnel users to one page among the examples. The same policies define scaled content abuse as many pages generated mainly to manipulate search rankings that give users little or no value, however the pages are made.
Find and replace on a city name produces near-identical pages. Published as they come out of the clone, a set of location pages can fit both descriptions. Cloning saves build time; it does not make the pages useful.
What makes a variant worth publishing
Before a draft goes live, it should have something the other variants do not:
- Facts specific to that place or specialty: the address, the people who serve it, local prices or service limits, real photos, and examples of work done there.
- Real search demand. Research keywords for each variant and drop the ones nobody searches for. See keyword clustering.
- A reason to exist as its own page, rather than as a section on one hub page.
- A place in the site's navigation, so visitors can reach it through a browsable structure and not only from a search result.
On Pro and above, the Writing Agent can help with the rewrite. It flags filler and unsourced claims, and it drafts only from material you supply, such as your notes on each location, so the specific facts have to come from you.
Finish each variant before it goes live
The clone copies the source page's layout and text. The rest of each page still needs its own work, and the agent can do most of it on the drafts:
- Write a distinct SEO title and meta description for each variant into Yoast, Rank Math or All in One SEO, so search results do not show the same snippet with one word changed.
- Add schema that fits the page, such as LocalBusiness JSON-LD with that location's real address, generated from what is on the page.
- Link to the variants from a hub page or a menu, so each one is part of the site's structure.
- Send preview links for each draft to whoever checks the local facts.
Check the set after publishing
Crawl the site once the variants are live. The crawler flags duplicate titles, duplicate H1s and duplicate content across pages, canonical collapse, and pages with no internal links on them, and the audit overview counts pages with no inbound links. In Search Console, URL inspections and coverage show which variants Google has indexed, and query-to-page mapping shows which ones get impressions.
Pages that stay unindexed or get no impressions are candidates to improve, merge into a hub page or remove.
What it does not do
- It does not generate pages from a spreadsheet, CSV file or database. Each variant is a clone with literal find-and-replace swaps.
- It does not publish variants live unless you ask for another status. Variants are created as drafts and stay drafts until you publish them.
- It does not write unique content for each variant on its own. The swaps are literal, and the specific content is yours to add.
- It does not guarantee indexing or rankings. Google decides which pages to index.
- Cloning into variants works from an Elementor source page on a WordPress site running the XeoRank Connector plugin. It is not available for Framer or code sites.
Pricing
Starter is $19 a month for one site, with a 14-day free trial and no card to start. Pro is $49 a month and Growth is $109 a month. See pricing for what each plan includes.
Questions
- What is programmatic SEO?
- Programmatic SEO is creating many similar pages from a template, each aimed at a variation of a query such as a city, a specialty or an integration. It is useful when each page carries distinct information, and risky when pages differ only by a swapped keyword, which Google's spam policies describe as doorway abuse or scaled content abuse.
- Can XeoRank generate pages from a spreadsheet?
- No. XeoRank clones one Elementor page into draft variants, each with its own find-and-replace pairs, in a single request. There is no import from a spreadsheet, CSV file or database.
- Are location pages against Google's spam policies?
- Google's spam policies do not ban location pages as such. They target pages created to rank for similar queries that funnel visitors to another page, and pages generated at scale that give users little value. A location page with information specific to that place is a different thing from a city-name swap.
- Do the cloned pages go live straight away?
- No. Every variant is created as a draft unless you ask for another status. You edit and publish each one when it is ready, and every page-content edit keeps a snapshot you can restore.
- Does it work with the block editor?
- Cloning into variants with find and replace works from an Elementor source page. A plain exact clone also works for block editor and classic pages, which you then edit one at a time.
Related
XeoRank lets Claude, ChatGPT or Cursor fix Elementor SEO: titles, headings, schema, sections and widgets as native elements, asking before each change.
Keyword clustering tool: group keywords by intent and build one page per clusterXeoRank's keyword clustering groups keywords by meaning and intent, maps each cluster to a funnel stage (TOFU to BOFU) and a page, then tracks rankings.
An AI SEO agent that works in your own AI assistant and asks before it changes your siteXeoRank is an AI SEO agent for Claude, ChatGPT, Codex or Cursor. It audits your site, tracks rankings and AI answers, and edits pages, asking first.
SEO MCP server for Claude, ChatGPT, Codex and CursorConnect XeoRank's SEO MCP server to Claude, ChatGPT, Codex, Cursor or VS Code for audits, keyword research, AI visibility checks and WordPress fixes.
See where you stand in Google and AI answers
Starter is $19 a month for one site, with a 14-day free trial and no card to start.