Custom direct-mail subscription plugin
Installs: 3 076
- directmailteam/direct-mail: ^6.0.1 || ^7.0.0
- friendsoftypo3/tt-address: ^5.1.2
- typo3/cms-core: ^9.5 || ^10.4
- typo3-ter/mmc-directmail-subscription: 2.2.2
What does it do?
This is a simple replacement for the direct_mail_subscription extension. It's buit on extbase, so translations and templating is much easier. You have the choice to use Google reCAPTCHA V3, V2 (invisible or checkbox) or Friendly Captcha (https://friendlycaptcha.com/).
It allows FE-users to
- Subscript to the newsletter (user receives a mail to confirm his email-address)
- Cancel newsletter subscription (user receives a mail to confirm his email-address)
Supported tt_address fields are
- name (will be set to 'firstName lastName' by default)
- moduleSysDmailHtml (by default set to 1 by a hidden field in the registration form)
By default, on subscription all existing records with identical email-adresses will be removed. This option can be disabled by TS-constant.
Include the static template of the extension in your site template
keepEmailAddressUnique (default: true)
Remove tt_address records with the same email-address on subscription.
includeJQuery (default: true)
Include jQuery library: disable if jQuery is already available.
removeAddress (default: true)
Remove email-address on cancel subscription: remove tt_address records on cancle subscription. disable to just hide them.
Email sender address for address-verification-emails. If not set, no mails will be sent!
Email sender name for address-verification-emails
CAPTCHA implementation to use (none / Google reCAPTCHA V2 checkbox / Google reCAPTCHA V2 invisible / Google reCAPTCHA V3, Friendly Captcha).
nameFieldsMaxChars Maximum allowed characters in the fields firstName / lastName (default: 25)
nameFieldsAllowedCharsRegEx Regular expression to validate allowed characters for fields firstName / lastName (default: /[^.:\/\@]+/).
captchaSiteKey Key that identifies your site / application. This key is provided by the CAPTCHA-service (application key or site key).
captchaSecret Secret key provided by your CAPTCHA-service (API key or secret key).
grc3ScoreTreshold Treshold for the score returned by Google CAPTCHA V3 in %. 50 is equivalent to a score treshold of 0.5 (default).
grc3ActionName Action name passed to the Google V3 engine (default: 'directmail_subscription')
Path to Scripts (default: typo3conf/ext/mmc_directmail_subscription/Resources/Public/Scripts/)
Storage for tt_address
- 'Default storage PID' of the extension
- 'Record Storage Page' of the FE-Plugin
Bugfix in README
Removed honeypot, added Google CAPTCHA and Friendly Captcha implementations and name fields restrictions.
- Move JS to footer
- change file ending .ts to .typoscript
Bugfixes (thanks to Loek Hilgersom):
- SubscribeController->getStandaloneView overrides original controller-context in TYPO3 10
- TypoScript condition in old style
update dependencies to enable direct_mail 7.0.0^
update this changelog :-)
fix extension dependencies
upgraded jquery core to 3.5.1
include js via typoscript-setup, use includeJSLibs for jQuery inclusion
TYPO3 9/10 compatibility; drop TYPO3 8 support
- Add composer support
- Move documentation to this file
- Change filenames constants.txt / setup.txt to *.ts
- Drop TYPO3 6/7 support
- TYPO3 8 compatibility
- language labels it: "Grazie Mille" instead of "Molte Grazie"
updated changelog :-)
multiple view-paths (for TYPO3 7) in typoscript-setup
Fixed minimal version for direct_mail to 4.1.0
Compatibility to TYPO3 7.6
- Modified es.locallang.xlf
- Changed state form "beta" to "stable"
- [FEATURE] Contribution by Benjamin Einert [b.einert(at)abija.de]: Option to hide address on unsubscript
- [BUGFIX] Error when record is already deleted when following email confirmation link
- Updated Documentation
Contributions by Loek Hilgersom [loek(at)netcoop.nl]: - [BUGFIX] Set actions register and cancel as non-cacheable actions to make them work in production context - Generate cleaner back links directly to current page without parameters because register is default action - [SECURITY] Set no-cache headers as soon as any personal data is passed to the view to avoid caching of personal data
- added FE-language labels for Dutch (nl). Thanks to Stefan Rosbak (firstname.lastname@example.org)
- simplified honeypot implementation If you copied and customized the template, you have to consider change for the hidden honeypot fields!
email repeat check in forms