Skip to content

Latest commit

 

History

History
73 lines (50 loc) · 2.05 KB

File metadata and controls

73 lines (50 loc) · 2.05 KB

Architecture

Intent

Elementor Form Hardening is designed as a targeted validation and normalization layer for selected Elementor forms.

The repository tracks the production custom code used to deploy that behavior through Code Snippets or an equivalent reviewed custom-code loading method.

The architecture should remain explicit, conservative, portable, and reviewable.

Functional layers

1. Form targeting layer

This layer determines whether a given Elementor submission should be handled by this implementation at all.

Recommended model:

  • explicit naming convention
  • strict prefix matching
  • no blanket interception of unrelated forms

2. Validation layer

This layer evaluates whether the submission meets the configured qualification policy.

Examples:

  • email field presence
  • email validity
  • blocked consumer-domain match
  • optional allowlist logic
  • policy precedence rules

3. Normalization layer

This layer normalizes targeted fields before downstream actions run.

Examples:

  • whitespace trimming
  • safe text sanitization
  • normalized email casing where appropriate
  • URL normalization where applicable

4. Messaging layer

This layer returns clear validation errors without leaking unnecessary policy internals.

5. Deployment layer

This layer concerns how the code is loaded into WordPress.

Recommended model:

  • deploy through Code Snippets or an equivalent reviewed custom-code loader
  • keep scope sitewide only when required by the implementation
  • document snippet title, execution mode, and rollback path
  • avoid theme-bound placement where maintainability or reversibility would suffer

Non-goals

  • universal anti-spam replacement
  • global form interception
  • deceptive silent blocking
  • uncontrolled auto-configuration across all forms
  • misrepresenting the code as a standalone plugin when it is not

Design principles

  • explicit over implicit
  • server-side over client-only
  • conservative defaults
  • clear tradeoff documentation
  • compatibility awareness
  • maintainable public governance
  • deployment accuracy in documentation