[benecaster_follower_signup]
Renders an email signup form that lets listeners follow your show for free. Followers are distinct from both paying subscribers and free-tier membership-plugin members: they require no membership plugin, no paid tier setup, and no Benecaster license — this shortcode works with the free WordPress.org version of the plugin.
Use it to start building a direct listener list before you’ve set up any subscription infrastructure, or alongside a paid tier as a low-friction “stay in touch” option that doesn’t require listeners to create a full membership account.
A follower gets their own tokenized feed URL, and that feed carries your public feed’s episodes. The token is what makes the feed theirs — per-follower download numbers, and the ability to revoke one person — not a key to extra content. Followers cannot see paid-tier episodes, and there is no per-episode follower setting to configure.
If you already have a membership plugin configured with a free tier, that tier serves the same audience — follower signup is most useful when you have no subscription plugin or want to bypass its registration flow entirely.
Collecting followers is entirely optional. Nothing captures a listener’s email address unless you place this form yourself, and there is no setting to switch on elsewhere that starts collecting them quietly. If you would rather not run a list, leave the shortcode off your site and the feature does not exist as far as your listeners are concerned. Passing those addresses on to a mail platform is a further, separate choice — it happens only if you install the Email Marketing Integrations add-on and connect a list to it, or if you build your own integration against the follower signup hooks. Nothing leaves your site until you set one of those up.
Each follower occupies one slot in your plan’s total token pool (the same pool shared with paying subscribers and free-tier members). They do not count toward your paying subscriber limit, but they do count toward your plan’s total token cap.
Wall name field: When the show has Supporter Wall enabled, an optional “What name would you like on our supporter wall?” field appears below the email input. Submitting with a value sets the subscriber’s wall display name immediately. Leaving it blank is valid — the subscriber can set it later from their account page. Pre-filled with first name + last name if the visitor is already logged in with those fields set; otherwise blank.
Marketing consent checkbox: When an installed add-on asks for marketing consent on the show (through benecaster_marketing_consent_label), an unticked checkbox with that add-on’s wording appears on the form, and the answer is saved when the signup succeeds. No attribute controls it, and without such an add-on there is no checkbox.
No password field. This form is email-first: it collects a name, an email, and — when the Supporter Wall is on — a wall name. Nothing else. A password POSTed to it anyway is dropped before it reaches the signup handler.
The follower is provisioned with a password nobody knows, and the welcome email carries a single-use signed link that signs them in and lands them on their account page. They can set a password there whenever they like; they never need one to listen.
This differs from [benecaster_subscribe], which does collect a password. The two forms do not follow one rule, so do not justify either by pointing at the other.
Three states, not two.
-
A logged-out visitor sees the form. On submission Benecaster creates a WordPress user for the address if one does not exist, issues a follower token, and sends the welcome mail. An address that already follows the show gets the already following mail instead — no second token, no repeat welcome. The screen is the same either way, and the same again when the abuse limits refuse a submission, so the form can’t be used to find out which addresses are registered. Only the address’s owner, in their mailbox, sees the difference.
-
A signed-in visitor sees no email input and no name input. The form reads “Follow as {their email}” and one click provisions the token. No email is sent on this path. If you test your own form while logged in, this is why no welcome email arrives. Instead, the full feed URL is printed on the success screen, and it stays on their account page afterwards. The
success_messageattribute does not apply to this state. -
A signed-in visitor who already follows sees “You’re already following this show — nothing has changed.” plus a link to their account. No token, no mail.
Email marketing integration: When the Email Marketing Integrations add-on is active, new followers are automatically synced to your connected list (Mailchimp, Kit, ActiveCampaign, etc.) using the same benecaster_token_generated hook as paying subscribers. The add-on can be configured to tag followers separately from paying subscribers.
Output filterable via benecaster_follower_signup_output — the filter receives the rendered HTML, show ID, resolved attributes, and render state (form, success, or error).
The show must be published. For a draft, scheduled, private or trashed show the shortcode renders nothing; someone who can edit that show sees This form will appear here once the show is published. Only people who can edit the show see this note. instead. A submission for an unpublished show is refused by the server either way.
Parameters
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
show_id |
int |
— | No | ID of the show to sign the follower up for. Optional: with no show_id, a show page uses that show, an episode page uses its show, and anywhere else a single-show site uses its only show. On a multi-show site, on a page that is neither, it renders an inline error comment and short-circuits. **Where to find it:** every show shows a click-to-copy `#{id}` chip in its admin header (on every sub-tab) and on its card in Benecaster → Shows, including archived shows. |
button_text |
string |
Follow
|
No | Label for the submit button. |
name_field |
bool |
true
|
No | Whether to show the name input field alongside the email field. |
success_message |
string |
Thanks! Check %s — we have sent you an email with everything you need.
|
No | Text displayed on the success screen after a logged-out visitor signs up. `%s` is replaced with the submitted email address. **The default is deliberately silent about WHICH email is coming** — a new address gets the welcome mail and an address already following gets the *already following* mail, and naming either would re-open the enumeration oracle the identical-response rule closes. **Does not apply to the signed-in state**, which prints the feed URL instead. |
Example
<!-- Basic follower signup form -->
[benecaster_follower_signup show_id="3"]
<!-- Email-only form with custom button label -->
[benecaster_follower_signup show_id="3" name_field="false" button_text="Get updates"]
<!-- Custom success message -->
[benecaster_follower_signup show_id="3" success_message="You're in! Check your inbox for your welcome email."]