RowSprout – Landing Pages At Scale Wordpress Plugin - Rating, Reviews, Demo & Download
Plugin Description
Many sites need dozens or hundreds of pages that share one layout but differ in the details: a page per service in every city you work in, per product variant, per location, per specialism. Building and maintaining those by hand is slow, and duplicating pages means every later change has to be made again on each copy.
RowSprout turns that into one template and one table.
An example
A plumbing company works in 30 towns. With RowSprout it designs one “Plumber in [town]” page, adds a row for every town (the town’s name, a short introduction, a phone number, a contact email address) and saves. RowSprout creates 30 pages, each with its own title, URL such as /plumber-amsterdam/, text and details. When the company changes the design or the opening hours later, it changes the template once and every page follows.
How it works
- Build a template. Design the page once in the block editor, Elementor or WPBakery Page Builder, like any other page.
- Define its properties. These are the fields every page will have: a title, a URL, a piece of text, a link, an email address and so on. Place them in your design with a widget, a block or a placeholder.
- Add your data. Every row (a “group”) is one page. Type the values in the table right below the editor.
- Save. RowSprout generates the pages in the background. They are real WordPress pages with their own URL, title, content and featured image.
Features
- Real pages, not virtual ones. Every generated page is a normal WordPress post with its own permalink, so search engines, caching plugins and your theme treat it like any other page.
- Your own URL pattern. Build each page’s address from its properties, for example
/plumber-amsterdam/,/plumber-utrecht/and so on, under the site root or a prefix of your choice. RowSprout warns you before two pages would get the same URL. - Every language and alphabet. Accents, Greek, Cyrillic, Arabic, Hebrew, Chinese, Japanese and emoji are fully supported in your rows, titles, content and URLs. Addresses follow WordPress’s own rules: Zürich becomes
/plumber-zurich/, while other alphabets stay as they are (/plumber-αθήνα/). - Pages stay in sync. Change the design or a row, save, and every page of the template is regenerated from it, so no page is ever out of date.
- Status at a glance. The Templates screen shows per template how many of its pages are up to date.
- Background generation. Pages are created in a queue (Action Scheduler), so saving a template with hundreds of rows never slows down your admin.
- Placeholders anywhere. Use a property in the page title, the URL, the content or a link, and it is replaced per page.
- Field types: Title, URL slug, Text, Textarea, URL, Email and Number.
- Grid of pages. Show all pages of a template as a list or as cards on any page, for example an overview of every town you serve.
- Child templates. Give a template a parent template and it reuses the parent’s rows: its pages inherit the title, URL and fields of the matching row, for example a “Roof repair in [town]” page for every town that has a “Roofer in [town]” page. Templates nest one level deep.
- As many templates as you need, managed from the Templates screen.
Works with the editor you already use
- Block editor: bind a Paragraph, Heading, List item, Button or Image block to a property with Block Bindings, insert placeholders from the text toolbar, and use the Grid block.
- Elementor: Heading, Textarea, Button and Grid widgets, an “Insert RowSprout property” button in the Text Editor, and a “RowSprout template” tab to manage properties and rows without leaving Elementor.
- WPBakery Page Builder (including builds bundled with themes): a Grid element and the same insert button in its text editors.
Integrations
- Rank Math: generated pages get the template’s SEO, social and robots settings with each page’s own values; the template itself is kept out of the sitemap and set to noindex.
RowSprout Pro
RowSprout Pro is a separate add-on, sold outside WordPress.org, for sites that grow beyond a single set of pages. It adds:
- Smart Generate: a save only regenerates the pages affected by what you changed, instead of every page of the template.
- Planning: choose per row when its page is published.
- WPML: translate a template once and all of its pages are generated in that language.
- Extra field types: Checkbox, Date, Date and time, Item list, Icon, Thumbnail, Select, Rich text, Color, Phone and File.
- Extra Elementor elements: Date, Item List, Thumbnail and Sibling Links widgets, plus RowSprout Page Field and Page Link dynamic tags.
- Extra block editor element: an Item List block.
- Extra WPBakery element: an Item List element.
- Status overview on the Templates screen: a live-updating status bar per template, a per-row overview of every page, and generating all pages of a template in one click.
- Throttling of batch size and processing hours on busy sites.
- WP-CLI and MCP commands to manage templates and pages from scripts or AI agents.
Privacy
The free plugin does not connect to any external service, does not track you and does not load anything from outside your site.
Development
RowSprout is open source. The code, releases and issue tracker are on GitHub: github.com/RowSprout/RowSprout.
Screenshots
Every group becomes one page. Fill in its values right below the editor.
Properties are the fields every page has, each with its own placeholder token.
Design the template once in the block editor and place the tokens where the values belong.
The Templates list shows how many pages each template has and whether they are up to date.
A generated page: a real WordPress page with its own URL, title and content.
