Recipes
Recipes are complete, working code examples organized by task. Each recipe combines one or more hooks or filters to solve a specific integration or customization problem. Browse by area below, or use the search box to find recipes by keyword.
Recipes marked advanced assume you are building a custom bridge, add-on, or deeply custom integration. Some recipes require an add-on to be installed — the add-on requirement is noted on each recipe’s page.
Feeds
- Route all enclosure URLs through Podtrac
- Redirect feed URLs to pretty permalink format
- Post-process a multi-tier assembled feed as a whole
- Suppress or override the feed redirect tag without changing stored settings
- Add a custom field to the RSS feed
- Measure and log feed render time
- Add Podlove chapter markers to RSS
- Inject chapter markers from an external source
- Inject Podlove Simple Chapters inline into the feed
- Add transcript metadata from a transcription service (Transcription add-on)
- Detect and log invalid feed token attempts
- Ping a Slack channel when a cancelled subscriber’s app polls a revoked token
- Trigger a feed cache clear from external code
- Swap the audio enclosure URL per subscriber tier at feed compile time
- Register a fully custom XML namespace handler from an add-on (advanced)
- React when a show’s redirect tag is automatically removed
- Inject additional Podcasting 2.0 channel tags from an add-on
- Inject Podcasting 2.0 episode tags from an add-on
- Embed a show QR code on a marketing page
- Replace or suppress the RSS link output
Episodes
- Show a 60-second preview player to non-subscribers
- Override the locked content message per tier
- Replace the locked episode prompt with an inline tier comparison
- Trigger push notifications when scheduled episodes unlock
- Send episode notifications via custom webhook on publish
- Invalidate an external cache or CDN when an episode is unpublished
- Trigger a workflow when a new episode is first created
- Sync changed episode fields to an external system
- Clean up external records when an episode is permanently deleted
- React to episode meta changes (audio URL, type, description)
- Assign episode numbers based on a custom sequence
- Map a custom episode type to a canonical iTunes type
- React to episode custom field changes from an add-on
- Inject a dynamically generated field group
- Transform a stored field value before display
- Sync a custom field value to an external system on save
- Add a tab to the episode editor via PHP filter
- Inject a React component into a named slot (advanced)
- Inject a synthetic reference group from an add-on
- Annotate episode references with tracked redirect URLs
- Suppress or reorder episode page blocks for a specific episode
- Redirect episode navigation links
- Register a custom related-episodes query strategy (advanced)
- Override the related-episodes list per-episode
- Inject or reorder social links programmatically
- Replace the social links HTML entirely
- Replace or suppress the platform links output
- Override teaser content with a chapter preview
- Check episode access in a shortcode or widget
- Replace the episode share links with a custom share card
- Inject a “Listen now” CTA button into every archive episode card
- Hide the sort controls on the episode archive
- Override a single episode template part from a child theme
- Load a custom template part from an add-on
- Auto-select a credit template based on episode type
- Inject external sponsor data into a credit at stamp time
- Log credit applications to an external system
- Programmatically stamp a credit on episode save (advanced)
- Auto-populate feed credits from Guest Manager
- Show or hide a show’s public episode pages from add-on code
Subscribers and Access
- Grant access based on WooCommerce product purchase
- Log or alert when a subscriber’s membership lapses while their token is still active
- Trigger a re-engagement automation when a subscriber goes silent
- Confirm subscriber app setup and fire a first-listen celebration
- Display subscriber feed URL on WooCommerce My Account page (Blocks & Widgets add-on)
- Add a subscriber to Mailchimp without the built-in integration
- React to subscription events from any bridge
- Override subscriber count from an external analytics source
- Log admin-initiated revocations to an external audit service
- Send a Slack DM when an admin resets a subscriber’s token
- Send a Slack alert when an admin changes a subscriber’s tier and notifies them
- Send a Slack alert when an admin revokes a subscriber’s access and notifies them
- Integrate with a membership plugin not in the core bridge set (advanced)
- Implement a custom bridge that returns multiple active tiers per user (advanced)
- Read or override the active bridge for a show from an add-on
- Integrate a community platform not in the core set (advanced)
- Perform a community action on episode publish
- Build a custom subscriber dashboard with template functions (Blocks & Widgets add-on)
- Customize [
[benecaster_current_tier]output](/recipes/customize-current-tier-shortcode-output/) - Count paying subscribers correctly from benecaster_tokens
- React to a free follower signup
- Enumerate WP User IDs eligible for a broadcast audience, with follower support
- Redirect the account page URL to a custom path
- Fetch a subscriber’s active subscriptions from a headless or native client
- Hook the resubscribe branch of benecaster_subscription_activated
- Add a “Need help?” support link above the feed URL section on the account page
- Register a custom Member Thanks query type (advanced)
- Mirror built-in tier CRUD into an external CRM or reporting pipeline
- React to a completed donation — log it, send a follow-up, or update a list
- Keep a capped-cohort tier purchasable via direct link while hiding it from the subscribe picker
- Queue a “Set your password” email when a logged-out visitor signs up
- Automatically enroll Gravity Forms submissions as Benecaster subscribers
- Add a new payment processor alongside Stripe (advanced)
- Register an add-on handler on the shared Stripe webhook endpoint
- React to subscription lifecycle events from the built-in membership system
- Clean up external records when a donor requests data erasure
- React to subscriber-initiated lifecycle events from the native billing portal
- Hook a subscriber’s buy-up purchase/cancellation to grant extra benefits or send an email
- Use a non-USD currency for buy-ups in a specific market
- Show or hide content based on whether a subscriber owns a buy-up
- Hook into the three buy-up lifecycle actions to drive integrations
- Substitute the default “Sold out” button on a capped buy-up with a custom waitlist
- Tag manual grants with user role
- Add manual membership support to a custom bridge (advanced)
- Mutate or block outgoing webhook payloads per event
- Push promote-grace expiry events into a CRM or analytics pipeline
- Run custom logic after the Promote-to-Bridge wizard finishes
- Opt a custom bridge into the Promote-to-Bridge migration wizard (advanced)
- Add a custom icon to the per-tier badge picker
- React to a badge definition being deleted
- Append, hide, or reorder a subscriber’s badges per show
- Drop a user’s badge chips into a custom theme template
- Render an initials-based avatar when site-wide Gravatar is disabled
- Mirror Supporter Wall opt-in changes to an external CRM or audit log
- Flush full-page caches when a per-show Supporter Wall is enabled or disabled
- Override the empty-state copy inside the supporter wall shortcode
- Replace or wrap the assembled Supporter Wall HTML
- Invalidate caches or sync to external systems when a subscriber removes their avatar
- Moderate or audit-log every Supporter Wall message
- Redefine tenure badge milestones with custom thresholds and labels
- Suppress the welcome email and send a custom version via SendGrid
- Add custom merge tags to all emails (Email Editor add-on)
- Sync email opt-outs to Mailchimp (Email Editor add-on)
- Replace the auto-generated plain text email with a custom version (Email Editor add-on)
- Add SendGrid category tracking to all emails
- Add SendGrid category tracking in API delivery mode
- Rate-limit the unsubscribe endpoint to prevent abuse
- Register a custom email type with the Email Editor (Email Editor add-on)
- Mark add-on email types as transactional so they bypass broadcast opt-out
- Send locale-aware email templates to subscribers in their own language
- Suppress or customize the built-in tier change email per tier pair
- Replace the built-in unsubscribe URL with a branded opt-out center
- Push donation-enrolled followers to an external newsletter
- Override the donation mailing-list opt-in checkbox label
- Customize email header branding per show
Analytics and Monitoring
- Push subscription lifecycle events to an external analytics service
- Stream every authenticated 302-proxy download event to an external webhook
- Append custom columns or short-circuit the write for download log rows
- Map an additional user-agent substring to a display label in the Top apps breakdown
- Force the platform benchmark cache to refresh outside the daily cron tick
- Pause or monitor scheduled analytics data pruning
- Add a custom section to the Analytics Digest (Analytics Dashboard add-on)
- Register a custom export sheet from an add-on (advanced)
- Trigger a downstream aggregation job when the nightly rollup completes
- Alert on the feed request log emergency row-cap guardrail
Migration and Import
- Auto-populate custom fields from imported RSS data (Migration Wizard add-on)
- Skip importing trailer episodes during feed sync (Migration Wizard add-on)
- Notify production team on Slack when new episodes found during feed sync (Migration Wizard add-on)
- Parse a custom RSS namespace and map to a Benecaster custom field (Migration Wizard add-on)
- Post a webhook to an external monitoring service after every sync with full result data
- Customize imported episode post data during SSP/PowerPress import
- Send a Slack notification when an SSP or PowerPress import finishes and new drafts were created
Add-on Development
- Register an add-on CPT with the custom field system
- Add a custom REST endpoint from your add-on
- Inject a step into the setup wizard from an add-on
- Add a custom bridge card to the wizard Subscription step
- Run post-setup initialization when the wizard completes
- Tell the Add-ons screen that this add-on plugin is loaded
- Fire add-on side effects the moment an OAuth site-linking exchange succeeds for a specific show
- Detect and respond to per-show token revocation so add-ons can pause outbound work before the operator reconnects
- Register a guided product tour from an add-on JS bundle
- Fire add-on side effects when a show is archived or restored
- Render the active theme’s header/footer from a Benecaster template override without deprecation on block themes
- Invalidate derived caches when the license server publishes new pricing
- Bridge the catalog/entitlement slug split when cross-referencing the two systems
- Keep staging test data out of your production CRM and email lists
- Mirror right-to-erasure/retention purges to external systems
- Toggle an add-on’s verbose logging in lock-step with core Support Mode
- Include more debug-log history in the Support Mode diagnostic snapshot
- Tune or bypass the per-IP REST rate limiter
- Surface the customer’s pending referral credit in an add-on dashboard widget
- Register a custom admin notice health check (advanced)
- Run a health check on the daily license cron in addition to the once-per-admin-session sweep
- Modify or suppress an admin notice per display context immediately before it reaches the React app
- Programmatically install and activate a design template
- Track the payment-failed license grace lifecycle
- Alert PagerDuty when feeds go dark at day 30
- Resolve the outage alert when access is restored
- Add or remove languages offered in Settings and the setup wizard
- Invalidate locale-keyed caches when the operator changes supported languages
- Sync show creation to external CRM
- React when an admin connects a subscription bridge
- React when a new membership tier is detected without a Benecaster mapping
Search
- Bypass the standard FULLTEXT search with a custom implementation (advanced)
- Exclude an episode from all search results
- Augment search result excerpts
- Search a secondary data source and inject episode IDs into the core result set
- Show AI Search to subscribers at or above a required tier (AI Search add-on)