philippoehrlein / kirby-email-manager
A Kirby plugin for managing email templates
Installs: 4
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 1
Type:kirby-plugin
pkg:composer/philippoehrlein/kirby-email-manager
Requires
- php: >=8.1.0
- getkirby/cli: ^1.0
- getkirby/composer-installer: ^1.2
- symfony/console: ^7.2
Requires (Dev)
- getkirby/cms: ^4.0
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^9.5
This package is auto-updated.
Last update: 2026-01-27 19:25:18 UTC
README
The Email Manager is a powerful plugin for Kirby CMS that simplifies email form creation and management. Designed for developers, it ensures a seamless experience while giving CMS users the flexibility to adapt content dynamically.
Complete documentation is available in the Email Manager Documentation.
Features
- Quick Setup: Forms ready in minutes.
- Customizable: Adapt snippets and keep layouts flexible.
- Your Styles: Use your own CSS classes for full design control.
- Extensible: Add custom CAPTCHA solutions and webhooks.
- Secure: CSRF protection, validation, optional rate limiting.
- Spam Protection: Filters block bots and unwanted submissions.
- Easy to Use: Use as blocks or tabs via blueprints; manage in the Panel.
- Stay Compliant: Maintain texts and policies directly in the Panel.
- Multi Email: Route to different recipients based on user input.
Installation
Composer Installation (recommended)
Run the following command in your site's root folder:
composer require philippoehrlein/kirby-email-manager
Manual Installation
- Download and extract the plugin
- Copy the
kirby-email-managerfolder to/site/plugins/
Quick Start
1. Configure Kirby for Email Sending
In your Kirby configuration file (site/config/config.php), set up the email transport settings. It's recommended to use a noreply email address for sending emails:
return [ 'email' => [ 'noreply' => 'no-reply@yourdomain.com', 'transport' => [ 'type' => 'smtp', 'host' => 'smtp.server.com', 'port' => 465, 'security' => true, 'auth' => true, 'username' => 'SMTP_USERNAME', 'password' => 'SMTP_PASSWORD' ] ] ];
⚠️ Don't store credentials directly in the production configuration. Consider using the Kirby ENV Plugin to manage sensitive credentials.
2. Create the Email Template
Blueprint
Create the file site/blueprints/emails/contact-form.yml:
type: managed-template name: Contact Form emails: mail: subject: Contact Form Submission sender: Contact Form fields: name: label: Name placeholder: Enter your name type: text required: true validate: alpha username: true email: label: Email placeholder: Enter your email type: email required: true replyto: true message: label: Message placeholder: Enter your message type: textarea resizable: vertical rows: 6 required: true minlength: 10
Email Template File
Create site/templates/emails/contact-form/mail.txt.php:
From: <?= $form->email() ?> Name: <?= $form->name() ?> Message: <?= $form->message() ?>
3. Add the Form to a Page
Blueprint
Create site/blueprints/pages/contact.yml:
title: Contact Page tabs: email-manager: email-manager
Page Template
Create site/templates/contact.php:
<?php snippet('email-manager/form-wrapper'); ?>
4. Create Contact Page
- In the Kirby panel, create a new page using the Contact Page blueprint
- Select the Contact Form template
- Enter the recipient email address
- Set up success title and message for form submissions
Your contact form is now ready to use!
License
- The plugin is distributed under a proprietary license.
- Production use requires a valid license per publicly accessible domain.
- Local/Staging usage is free without a license.
- Source code may be publicly viewable, but no redistribution or derivative works are permitted without written consent.
- Updates: All future updates are included.
Please read the full license terms in LICENSE.md. For questions, use the contact form on the website.
Support
- Documentation: https://email-manager.philippoehrlein.de
- Issues: https://github.com/philippoehrlein/kirby-email-manager/issues
- Contact: github@philippoehrlein.de
