Restrict Content Pro Setup
Restrict Content Pro (RCP) is a lightweight WordPress membership plugin focused on simplicity. It creates subscription levels, handles payments, and restricts content access — without the complexity of WooCommerce or the heavier feature set of MemberPress. It’s a good fit for podcasters who want a clean, focused membership system without extra overhead.
Before You Start
- Restrict Content Pro version 3.0 or higher must be installed, activated, and licensed. Sites running RCP 2.x will not see the bridge in the Benecaster subscription plugin picker — Benecaster requires the membership object model introduced in RCP 3.0. Upgrade RCP before attempting to connect.
- At least one RCP subscription level should exist before mapping tiers
- You should have a Benecaster paid license activated
Step 1: Connect the Bridge
Go to Benecaster → Settings → Subscription.
If Restrict Content Pro is active, it appears in the subscription plugin list. Select it and click Connect.
Benecaster reads your RCP subscription levels and confirms the connection.
If RCP doesn’t appear in the list, confirm it’s active at Plugins → Installed Plugins and that your RCP license is valid. See Subscription Plugin Not Connecting.
Step 2: Map Your Tiers
Go to Benecaster → Settings → Subscription → Tier Mapping.
Benecaster lists all RCP subscription levels. Assign each level to the corresponding Benecaster tier. Levels left unmapped generate no feed access.
RCP subscription levels typically map cleanly to Benecaster tiers one-to-one. If you have monthly and annual variants of the same access level, map both to the same Benecaster tier.
See Mapping Your Membership Tiers for guidance.
Step 3: Test the Connection
Add a test member manually — go to Restrict → Members → Add Member, assign a subscription level, and save with Active status.
A Benecaster token should be generated within a few seconds. Verify at Benecaster → Subscribers.
How RCP Events Map to Benecaster
| RCP event | Benecaster action |
|---|---|
| Subscription activated (new or resubscribed) | Generate token, send welcome email |
| Subscription cancelled | Mark token inactive |
| Subscription expired | Mark token inactive |
| Subscription level changed | Update token’s tier; feed reflects new level on next poll |
| Subscription renewed | Fire benecaster_subscription_renewed; feed access continues uninterrupted |
| Payment failed | No immediate action — RCP has no universal payment-failure hook. Feed access continues until RCP expires or cancels the membership through its own retry logic. |
Benecaster listens for RCP’s status transition callbacks to keep subscriber access in sync.
RCP-Specific Notes
Manual vs payment-driven activations: RCP allows admins to manually activate memberships without a payment. Benecaster treats manual activations identically to payment-driven ones — a token is generated and the welcome email is sent regardless of how the membership was activated.
Free memberships: RCP supports free (zero-cost) subscription levels. If you have a free level that grants basic podcast access, you can map it to a Benecaster tier. Subscribers at that level get a token and feed access like any paying subscriber.
Expiring vs non-expiring memberships: RCP supports both time-limited memberships (with expiration dates) and non-expiring memberships. For non-expiring memberships, Benecaster keeps the token active indefinitely — until the membership is manually cancelled or the subscriber’s RCP status changes.
Multiple levels: RCP can assign multiple subscription levels to a single user. Benecaster maps each active level and grants access at the highest applicable tier.
Payment failure handling: RCP does not provide a universal payment-failure hook that fires consistently across all gateways. When a payment fails, Benecaster takes no immediate action — the subscriber’s feed continues until RCP expires or cancels the membership through its own retry and grace-period logic. This means there may be a delay between a failed payment and feed access being revoked. The delay is determined by RCP’s membership expiry settings, not Benecaster.
Subscription renewals: Benecaster detects renewals via RCP’s rcp_membership_post_renew hook. When a renewal fires, Benecaster’s benecaster_subscription_renewed action fires and feed access continues without interruption.
Payment gateways: RCP supports Stripe, PayPal, and other gateways. Benecaster is agnostic about which gateway RCP uses — it reads membership status only, not payment records.
Content Drip module: Restrict Content Pro includes a built-in Content Drip module that releases content to members gradually over time — for example, unlocking a post seven days after a member’s subscription start date. This applies to RCP’s own WordPress content restrictions only. It has no effect on Benecaster’s RSS feeds. Benecaster reads membership level and active status only — Drip timing does not affect feed access. If you want to release podcast episodes on a schedule, use Benecaster’s availability dates instead.
RCP ownership: Restrict Content Pro is maintained by the Sandhills Development team (also creators of Easy Digital Downloads). If you encounter issues after an RCP update, check the Benecaster changelog for compatibility notes.
Multiple billing periods and price points: RCP subscription levels each have a single price and billing period. To offer subscribers a choice of billing frequency for the same access level, create a separate RCP level for each option — then map both levels to the same Benecaster tier.
- Monthly and annual billing for the same tier — create two RCP subscription levels (for example, “Premium — Monthly” and “Premium — Annual”). In Benecaster → Settings → Subscription → Tier Mapping, map both levels to the same Benecaster tier. A subscriber who purchases either option gets the same feed access — Benecaster checks all of a user’s active levels against the tier map.
- Regional or currency pricing — if you use a multi-currency extension that creates separate RCP levels per currency or region, map all variants to the same Benecaster tier using the same approach.
- Different access levels at different price points — create separate RCP subscription levels for each access level and map each to a distinct Benecaster tier.