Skip to content
  1. Extras
  2. Sendex
  3. System settings

System settings

Component settings use namespace sendex and key prefix sendex_.

Where to change: Manage → System settings — filter by namespace sendex.

On package upgrade existing values are not overwritten (transport creates keys only on first install).

Settings from the package

KeyTypeDefaultDescription
sendex_export_fieldstextfieldemailCSV export columns, comma-separated: id, user_id, email, username, fullname, phone, mobilephone
sendex_hide_export_buttoncombo-booleanNoHide the export button in the manager
sendex_confirm_emailcombo-booleanYesGuests must confirm subscription by email
sendex_confirm_rate_limittextfield0Minimum interval (seconds) between confirmation emails per address; 0 = off
sendex_csrf_protectcombo-booleanNoCSRF token for POST subscribe/unsubscribe forms on the site

Email confirmation

With sendex_confirm_email = Yes the guest receives an activation email (chunk tpl.Sendex.activate). The link expires in 30 minutes (hardcoded in the snippet).

With sendex_confirm_email = No the email is saved immediately without confirmation. Typos and spam signups are harder to catch — enable only as a deliberate tradeoff.

CSRF

With sendex_csrf_protect = Yes forms get a hidden sendex_csrf field with a session token. Checked only for POST subscribe and unsubscribe.

Settings not in transport

The code reads these via getOption, but the package does not create them. Add manually if needed.

KeyCode defaultDescription
sendex_queue_limit100Max emails per cron run (core/components/sendex/cron/send.php)
sendex_core_path{core_path}components/sendex/Path to component core
sendex_assets_url{assets_url}components/sendex/Component assets URL

Sendex falls back to MODX system settings for mail headers:

  • emailsender — From when the newsletter has no email_from
  • site_name — sender name when email_from_name is empty

Snippet parameters vs system settings

Some snippet parameters override system settings per call:

Snippet parameterSystem setting
&confirmEmailsendex_confirm_email
&confirmRateLimitsendex_confirm_rate_limit
&csrfProtectsendex_csrf_protect

Override CSRF for a single form:

fenom
{'!Sendex' | snippet : ['id' => 1, 'csrfProtect' => 1]}
modx
[[!Sendex? &id=`1` &csrfProtect=`1`]]

See Sendex snippet.