onedrop / campaignmonitor
Flow package that integrated CampaignMonitor into your Neos site / Flow applicaiton
Installs: 168
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 3
Forks: 0
Open Issues: 0
Type:neos-package
Requires
- campaignmonitor/createsend-php: ~5.0.2
- neos/flow: ^4.0
This package is auto-updated.
Last update: 2024-10-25 07:26:59 UTC
README
Package that integrates CampaignMonitor® to your Neos site or Flow application.
This package is heavily inspired by the Neos Mailchimp package.
Features
This package comes with two main features:
- A CampaignMonitor® subscription finisher for the Flow Form Framework
- A simple Neos module that allows Neos administrators to manage CampaignMonitor® lists and recipients
Usage
Install this package: composer require onedrop/campaignmonitor
After successful installation make sure to configure the CampaignMonitor® API key and the client ID in the Settings.yaml
of your Site package:
Onedrop: CampaignMonitor: apiKey: '<VALID_CAMPAIGNMONITOR_API_KEY>' clientID: '<VALID_CAMPAIGNMONITOR_CLIENT_ID>'
Note: The API key can be obtained from Account > API Keys
Done. You can now log-in to the Neos backend (as administrator) and manage your newsletter lists and recipients in the new Module administration/campaignmonitor
(Make sure to flush the browser caches if the module should not appear in the menu).
Neos Module
The module is pretty simple and self-explanatory. Currently it allows for:
- Displaying all lists
- Displaying details of single lists including creation date, sender information, number of recipients
- Displaying all members of a selected list
- Removing members from a list
- Subscribing new members to a list
Form Finisher
This package also comes with a simple form finisher that allows for creation of simple Newsletter subscription forms using the Flow Form Framework. It also adds the corresponding FormBuilder configuration so that the finisher can be used directly in the visual editor.
Alternatively you can save the following snippet to Data/Forms/newsletter.yaml
to create a simple newsletter subscription form:
type: 'Neos.Form:Form' identifier: campaignmonitor label: Campaignmonitor renderables: - type: 'Neos.Form:Page' identifier: page1 label: 'Page 1' renderables: - type: 'Neos.Form:SingleLineText' identifier: 'firstName' label: 'First name' validators: - identifier: 'Neos.Flow:NotEmpty' properties: placeholder: 'Your first name' defaultValue: '' - type: 'Neos.Form:SingleLineText' identifier: 'lastName' label: 'Last name' validators: - identifier: 'Neos.Flow:NotEmpty' properties: placeholder: 'Your last name' defaultValue: '' - type: 'Neos.Form:SingleLineText' identifier: 'email' label: 'E-Mail' validators: - identifier: 'Neos.Flow:NotEmpty' - identifier: 'Neos.Flow:EmailAddress' - identifier: 'Onedrop.CampaignMonitor:UniqueSubscription' options: listId: '<CAMPAIGNMONITOR-LIST-ID>' properties: placeholder: 'Your email address' defaultValue: '' finishers: - identifier: 'Onedrop.CampaignMonitor:CampaignMonitorSubscriptionFinisher' options: listId: '<CAMPAIGNMONITOR-LIST-ID>' name: '{firstName} {lastName}' additionalFields: 'salutation': '{salutation}' - identifier: 'Neos.Form:Confirmation' options: message: 'Thank you, your subscription was successful. Please check your email.' renderingOptions: submitButtonLabel: ''
Note: Replace the two "<CAMPAIGNMONITOR-LIST-ID>" with a valid list identifier that can be obtained from Lists & Subscribers > <YOUR-LIST> > change name/type > API Subscriber List ID
. A list ID usually contains letters and numbers such as "cbd1eb6f213f838b5a74e57ec8a19cef".
The Form finisher can of course be used without Neos (i.e. for Newsletter-subscriptions within plain Flow applications).
License
Licensed under GPLv3+, see LICENSE