Search by

moca-nz / craft-post-office

MOCA-nz

A contact form builder for Craft CMS. Build forms in the control panel, store submissions as elements, and send notifications from your own Twig templates.

Package info

github.com/MOCA-nz/craft-post-office

Documentation

Type:craft-plugin

pkg:composer/moca-nz/craft-post-office

Statistics

Installs: 1

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v0.0.1 2026-09-10 04:31 UTC

This package is auto-updated.

Last update: 2026-09-10 21:35:12 UTC


README

Stable Version Total Downloads

Post Office, a Plugin for Craft CMS

Contact forms that store submissions as elements and email from your own templates.

Post Office is a free plugin for Craft CMS for building contact forms in the control panel. Submissions are stored as Craft elements, so they get the element index, search, filtering and CSV export for free. Notification emails render from your own Twig templates, and form definitions live in project config, so a form you build locally deploys to production.

{{ craft.postOffice.form('contact') }}

That renders the whole form. If you would rather write the markup yourself, post to the plugin's endpoint and it returns JSON with errors keyed by field handle.

Requirements

This plugin requires Craft CMS 5.5.0 or later, and PHP 8.2 or later.

Installation

To install the plugin, search for "Post Office" in the Craft Plugin Store, or install manually using composer.

composer require moca-nz/craft-post-office
php craft plugin/install post-office

What you get

  • A form builder with 11 field types. Each field has a label, handle, placeholder, a required toggle, a custom validation message, and a switch for whether it appears in email.
  • Submissions as elements, with a source per form, search, sorting, filtering, bulk actions, CSV export and the trash.
  • Notifications as a repeatable list of recipients, each with its own email template, plus a built-in autoresponder that replies to whatever the submitter typed in the form's email field.
  • A record of every email, sent or failed, with the reason it failed.
  • Spam protection: a honeypot with a minimum time-to-submit, reCAPTCHA and Turnstile, each switched on or off per form.
  • Project config, so forms deploy between environments instead of being rebuilt by hand.

Documentation

Guide Covers
Field types Every field type, its settings and its validation
Submissions The index, the detail screen, export, trash, permissions, querying
Form settings From and reply-to, success behaviour, redirect vs no-reload
Notifications Recipients, the autoresponder, email templates and their variables
Spam protection Honeypot, timing, reCAPTCHA and Turnstile
Templating Rendering, hand-written markup, the JSON response, template overrides

License

This plugin is licensed for free under the MIT License.

Created by MOCA.