Custom direct-mail subscription plugin

3.0.1 2024-01-04 03:14 UTC

This package is auto-updated.

Last update: 2024-04-04 03:50:03 UTC


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 (

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

  • gender
  • firstName
  • lastName
  • 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.

Configuration Reference

Include the static template of the extension in your site template

Typoscript Constants:

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

useCaptcha CAPTCHA implementation to use (none / Google reCAPTCHA V2 checkbox / Google reCAPTCHA V2 invisible / Google reCAPTCHA V3, Friendly Captcha).

invokeGrcV3JsGlobally If set to 1 and Google reCAPTCHA V3 is activated (useCaptcha), the reCAPTCHA javascript-library will be included globally in the head-section. This allows the algorithm to serve better guesses if the user is human or not. If set to 0, the script will be included in the plugin form (default: 0)

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



Fix indentation in PHP files


TYPO3 11 compatibility


Bugfix in README


Removed honeypot, added Google CAPTCHA and Friendly Captcha implementations and name fields restrictions.


Fix composer.json


  • 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


Trigger packagist


  • 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"


es.locallang.xlf formating


  • [FEATURE] Contribution by Benjamin Einert [b.einert(at)]: 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)]: - [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 (
  • 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