Official product manual

Build, publish, and operate forms with confidence.

Installation, form building, email, private uploads, licensing, updates, developer extension points, and honest troubleshooting—documented for the features that ship today.

01 · Installation guide

Install Free first. Add Pro beside it.

  1. Step 1

    In WordPress, open Plugins → Add New → Upload Plugin.

  2. Step 2

    Upload drecha-forms.zip, install it, and activate Drecha Forms.

  3. Step 3

    Confirm the new Drecha Forms menu appears and open Dashboard.

  4. Step 4

    For Pro, upload drecha-forms-pro.zip and activate it while Free remains active.

Safe dependency: Pro extends Free; it does not replace Free or own the form tables. If Pro is unavailable, Free forms and entries keep working and premium configuration stays stored.

02 · Quick start

Publish a working form in six moves.

  1. 1

    Open Drecha Forms → Templates and choose a starter, or create a blank form from Forms.

  2. 2

    Add fields by clicking or dragging. Set labels, requirements, validation, layout, and accessibility attributes.

  3. 3

    Configure confirmation behavior and at least one administrator notification.

  4. 4

    Use Preview widths to review desktop, tablet, and mobile layouts; save a draft or publish.

  5. 5

    Add the Drecha Forms Gutenberg block, or paste [drecha_form id="FORM_ID"] into content.

  6. 6

    Submit a test response, verify it under Entries, and send a test email before sharing the page.

03 · Form builder

A versioned editor with reversible work.

Compose

Drag, click to add, duplicate, reorder by keyboard, arrange desktop widths plus optional tablet and mobile widths, create pages, and preview responsive layouts. Automatic columns respond to the form container, including narrow sidebars inside wide pages. On small admin screens, Fields, Preview, and Settings become focused workspace tabs while Save stays visible.

Style without code

Choose Clean, High contrast, or Minimal and comfortable or compact spacing in Free. Presets use scoped CSS variables, comfortable touch targets, visible focus states, and do not allow arbitrary scripts or unsafe style declarations.

Publish safely

Drafts do not render publicly. Publishing requires a valid versioned schema. User-configured content is sanitized; field definitions cannot execute arbitrary JavaScript, and calculations use a bounded expression parser rather than eval. Block, shortcode, template, and dynamically inserted forms share one idempotent initializer.

Passwords are accepted only for the current request and are excluded from retained entry values, email placeholders, exports, logs, and prefilling. Use them only where a receiving workflow genuinely requires a transient secret.

04 · Email troubleshooting

Stored first. Queued second. Delivery remains your mail provider’s job.

A successful wp_mail() result means WordPress accepted the message for sending. It does not prove inbox delivery.

  • Run the test: use Dashboard or the builder’s Notifications panel and inspect the exact error shown.
  • Use established SMTP: configure a reputable SMTP plugin; Drecha Forms deliberately does not ship an SMTP server.
  • Check the queue: Entries reports accepted, retrying, and failed messages. Retry only after correcting transport configuration.
  • Fix cron: low-traffic sites should invoke wp-cron.php from a real server scheduler, especially when DISABLE_WP_CRON is enabled.

05 · Conditional logic

Keep dependencies understandable and acyclic.

Rules can show or hide fields, make fields conditionally required, and choose multi-step transitions. Build rules from stable field keys, select whether all or any rules must match, and preview every branch. The publisher rejects circular dependencies; server-side validation evaluates the same conditions again, so hiding a control in the browser cannot bypass validation.

06 · File uploads

Private means permission-checked, not merely hard to guess.

Allowlist

Set only the MIME types and extensions the workflow needs. Executable types are rejected.

Boundaries

Set per-file size and count limits. Server upload and post limits may be lower.

Access

Files are randomized outside the public document root and downloaded through an authorized administrator action.

Retention cleanup removes eligible stored submissions and associated private files. Back up data before changing retention, and test web-server limits with the largest allowed file.

07 · Free versus Pro

Free owns the form system. Pro adds shipped automation.

Free · $0

Unlimited forms and submissions, full builder and fields, conditional logic, multi-step forms, private uploads, templates, calculations, notifications, confirmations, local entries, CSV, JSON transfer, shortcode, Gutenberg block, basic statistics, and privacy workflows.

Pro · $69 once

Conditional notification routing, Google Sheets, Zapier, Make, Slack, Discord, signed/custom HTTPS delivery, delivery logs and retries, and scoped external REST API tokens.

Advanced analytics, PDFs, partial recovery, save and resume, scheduling, limits, user registration, post creation, and payment fields are not part of version 1.0.0 and are not unlocked by a license.

Open the full feature matrix

08 · Licensing

One payment. One production website. Permanent use.

A Pro license costs $69 USD once and has no annual renewal or mandatory subscription. Activate the key under Drecha Forms → License. Local, staging, localhost, private-IP, .test, and .local sites do not consume the production activation. Deactivate the old website before moving to a different production domain.

Temporary API outages preserve last-known-good paid access and never interrupt ordinary Free submissions. An explicit revoked, suspended, refunded, invalid, or expired-trial response blocks new premium operations without deleting their settings.

09 · Updates

Back up, inspect, update Free, then update Pro.

  1. 1.

    Create a database and private-upload backup; review release notes and compatibility values.

  2. 2.

    Update Drecha Forms Free through the normal WordPress plugin updater.

  3. 3.

    Update Drecha Forms Pro. The licensed updater verifies package size and SHA-256 before installation.

  4. 4.

    Open Dashboard, submit a test form, inspect the entry and queued email, then test any Pro integration.

  5. 5.

    If rollback is required, restore the previous plugin ZIPs and database together. Do not delete the Free plugin tables.

10 · Developer hooks and filters

Extend bounded seams without replacing the engine.

HookPurpose
drecha_forms_entitlementsFilter the centralized feature map. Never use this as a substitute for endpoint authorization.
drecha_forms_submission_payloadFilter the normalized submission payload before the entry transaction. Keep callbacks deterministic and fast.
drecha_forms_entry_createdObserve a newly committed entry. Queue slow or external work instead of performing it inline.
drecha_forms_plan_premium_automationsLet an entitled extension add durable post-submission automation jobs.
drecha_forms_handle_extension_jobHandle a claimed extension job and return its result through the shared queue worker.
drecha_forms_spam_resultFilter the bounded spam result after the built-in signals are calculated.

REST administration requires WordPress authentication, capabilities, and nonces. Pro external tokens are shown once, stored hashed, scope-limited, and must never be placed in browser code or source control.

11 · Troubleshooting and FAQ

Start with the boundary that actually failed.

The form does not appear

Confirm it is published, the block or shortcode points to the correct numeric form ID, and page caching was purged.

A submission is rejected

Review the field-level response, conditional branch, upload limits, token age, spam result, and server request-size limit. Never disable server validation to work around an invalid schema.

The entry exists but email is missing

That is intentional reliability behavior: persistence does not depend on mail. Inspect the email log, test transport, SMTP plugin, DNS records, spam folder, and cron runner.

An upload cannot be opened

The current user needs the Drecha Forms management capability and the file must still belong to the requested entry. Check retention and private-path permissions.

Pro looks inactive

Keep Free active, verify the key under License, confirm the site URL, and inspect the last error. Temporary outages retain a previously valid paid state.

Can I use multisite?

Not for version 1.0.0. Network activation, per-site provisioning, storage isolation, and uninstall behavior are not claimed or supported.

Build better WordPress forms. Pay once.

More features for free. Pro for just $69.

No subscriptions. No submission limits imposed by Drecha. No required SaaS account. Free handles ordinary form processing on your website; Pro adds the implemented professional integrations.

Free download status Pro checkout opens after release verification

Functional cookies only

Saaso only uses functional cookies for sign-in, security, and core product flows. By continuing to use the site, you agree to that use.