Fieldstone gives you 24 field types, custom post types and taxonomies — stored in fast, indexed tables instead of wp_postmeta. Already on ACF? Import your field groups in one click.
With Advanced Custom Fields active, Fieldstone shows an import banner. One click recreates each ACF field group. Anything that can’t map one-to-one is reported as a plain-English warning — and your ACF groups and data are left untouched, so both can run side by side while you check.
Install Fieldstone alongside ACF. An import banner appears on the Field Groups screen, listing every ACF group it can bring across.
Pick the groups and import. Fieldstone recreates each one and builds its storage table. The mapping is deterministic — no AI involved.
Anything without a one-to-one equivalent is flagged in plain English — nothing is dropped silently. Your ACF data stays exactly as it was.
Repeater and Flexible Content fields import with Fieldstone Pro.
Most custom-field plugins scatter two rows per field across wp_postmeta. Fieldstone stores values in dedicated, indexed tables — one row per post — for speed and sanity.
One indexed row per post. Opt any field into a real database index. Faster queries, no postmeta bloat, content you can actually query by field value.
On by default. A plain copy of every value stays where the rest of the ecosystem expects it — exports, backups, SEO plugins, and search plugins keep working untouched.
Every definition (field groups, post types, taxonomies) syncs to files for version control and deployments. Perfect for teams and CI workflows.
Deleting the plugin does not remove your data by default. An explicit opt-in setting handles full cleanup when you want it.
ACF keeps every field value in wp_postmeta, which has no index on the value, so filtering by a field means reading every row for that field. Fieldstone keeps one row per post with a real column per field, and you choose which columns to index.
Milliseconds, median of 20 runs; lower is better. 10,000 posts × 10 fields on a development laptop (Intel Core i5-9300H @ 2.40GHz, 8 GB RAM, SSD), MariaDB 10.4.28. Bars are scaled within each test. Saving is slower by default because Fieldstone also writes a plain postmeta copy of each value, which keeps SEO, export and search plugins working; with that switched off the same save takes 6.33 ms.
See every test, the method, the SQL and the code →
The same 10,000 posts and 100,000 field values were written into ACF 6.8.5 and Fieldstone 1.3.1 through each plugin’s own functions, each tested with the other plugin unloaded. The ACF query is the SQL that WP_Query generates for a meta_query; the Fieldstone query is SQL against its own table, with an index on the filtered field. Both returned identical posts. No persistent object cache; measured from the command line, one request at a time. The full write-up lists what this does not show and has the code so you can run it yourself.
Visual editor, conditional logic, location rules, custom post types, REST API, WP-CLI, and a clean developer API — all in one focused plugin.
24 field types: text, textarea, number, range, email, URL, password, select, checkbox, radio, button group, true/false, image, file, WYSIWYG, oEmbed, date, colour, link, icon picker, post link, plus the layout types tab, accordion and message.
Target field groups by post type, page template, specific post/page, page type, or post status — with and/or logic.
Show or hide fields based on other fields’ values. Rules are enforced server-side for reliability.
Register them from the same editor. Labels are generated for you so you can move fast.
Opt field groups into the REST API. Values appear on post responses and are writable with proper permissions.
wp fstn json status|sync, mirror rebuild, table status — built for automation and deployments.
Describe a field group in plain language and get the whole group drafted. Optional, bring-your-own Anthropic API key. Completely off until you add one.
fstn_form() renders a field group on the front of your site and accepts the submission — with validation, a honeypot and rate limiting. The target is stored server-side, never in the page.
Bring your existing Advanced Custom Fields groups across in one click, with a plain-English warning for anything that can’t map one-to-one. Deterministic mapping, no AI — and your ACF data is left untouched.
Store fields on posts, site options, users, or taxonomy terms with the same simple API.
Branded header, segmented tabs, colored field-type badges, refined cards and inputs — a polished experience out of the box.
Read and write fields with a clean PHP API. Escaping by default where it matters. Works with posts, options, users, and terms.
// Echo escaped plain text fstn_the_field( 'headline' ); // Get a formatted value (you escape) $price = fstn_get_field( 'price' ); $img = fstn_get_field( 'headshot' ); // array: id, url, alt // All fields at once $f = fstn_get_fields(); // Options, users, terms fstn_get_field( 'company_tagline', 'option' ); fstn_get_field( 'twitter', 'user_' . get_the_author_meta( 'ID' ) );
Go to Fieldstone → New Field Group, add your fields, and set a location rule (e.g. Post Type is Page).
Edit a matching post — your fields appear in a clean metabox. Fill them in and update.
Use fstn_the_field() or fstn_get_field() in your templates.
The free plugin is fully functional on its own. Pro adds the repeatable and relational field types — on the same fast storage.
| Feature | Free | Pro |
|---|---|---|
| Field types | ||
| 24 core field types (text → message) | ✓ | ✓ |
| Repeater, Flexible Content, Group | — | ✓ |
| Post Object, Relationship, User, Taxonomy (two-way) | — | ✓ |
| Gallery, Page Link, Clone | — | ✓ |
| Date/Time, Time, Google Map | — | ✓ |
| Storage | ||
| Custom-table storage (one indexed row per post) | ✓ | ✓ |
| Postmeta mirror for full compatibility | ✓ | ✓ |
| Developer tools | ||
| Template API, shortcode, REST, WP-CLI, Local JSON | ✓ | ✓ |
| One-click import from ACF | ✓ | ✓ |
| Options pages | — | ✓ |
| Block bindings (WordPress 6.5+) | — | ✓ |
| Forms & output | ||
Front-end forms (fstn_form()) | ✓ | ✓ |
| Conditional logic & validation | ✓ | ✓ |
| Support & updates | ||
| Updates | WordPress.org | Automatic |
| Support | Community forum | Priority |
Even more power for agencies and advanced sites — the repeatable and relational field types, options pages and block bindings. Same fast custom-table storage as the free plugin — now for repeaters and relationships too. One year of updates and priority support.
Unlimited repeatable rows, mix-and-match layout blocks, and grouped — and nested — fields.
Post Object, Relationship, User and Taxonomy fields, with two-way links kept in sync automatically.
Ordered image galleries, plus internal and external page-link fields.
Precise date-time and time pickers, and a Google Map location field.
Site-wide settings screens, and bind core blocks to your Fieldstone fields (WordPress 6.5+).
Reuse field sets with the Clone field, plus automatic updates and priority support.
Simple yearly pricing · 30-day refund · staging & dev sites always free.
Free, open source, and built for developers who care about performance and data integrity.
A one-page checklist for switching an existing site to Fieldstone, plus occasional release notes. No spam, unsubscribe any time.