WordPress plugin
The Data Maker Forms plugin hosts forms on a WordPress site. Upload a
signed .dmf, place a shortcode or block, and submissions are sealed in the
browser and forwarded to the DataMaker API — the WP server never sees plaintext.
Requires WordPress ≥ 6.4 and PHP ≥ 8.1.
Use it
-
Install + activate the plugin.
-
Go to Data Maker Forms → Upload .dmf and upload a
.dmfbundle. The plugin verifies the signature, stores the form, and lists it by id. -
Place the form on a page:
Shortcode
[datamaker_form id="contact_form"]The optional
themeattribute (on/off) overrides theming per placement:[datamaker_form id="contact_form" theme="off"]renders structure-only so the active WP theme styles it.Block — add the Data Maker Form block (
datamaker/form) and pick a form.
That’s it — the form renders with full cascade (VisibleWhen / Calculated / validation run in the browser from the bundle’s compiled expressions), and submissions seal against the form’s recipient public key.
How submission works
The plugin ships the same JS renderer as the web embed.
Values are sealed in the browser (libsodium) and posted to the DataMaker API at
https://datamaker-api.fobo-tools.com/ (overridable via the
DM_RENDERER_SYNC_API_URL constant). A built-in submit proxy + upload-slot flow
handles file fields. An optional localStorage edit token lets submitters return
and amend a prior submission.
Theming
Choose per form: use the form’s own DataMaker palette, or inherit the active WordPress theme (structure-only render).
Permissions
Admin screens are gated by the manage_datamaker_forms capability or
manage_options — so site admins always have access. Grant the custom
capability to give non-admin roles access:
get_role('editor')->add_cap('manage_datamaker_forms');Scope (v1)
Supported: text, number, scale, date, choice, multi-choice, checkbox, list, geo, attachment, image, signature, initials, divider, spacer, group, rich-text, heading, button — and multi-step (wizard) forms.
Not yet: relation fields (placeholder only), charts, nested record entry.