Title: PayGate Content Restriction
Author: joshswebservices
Published: <strong>Апрель 17, 2026</strong>
Last modified: Апрель 17, 2026

---

Search plugins

![](https://ps.w.org/paygate-content-restriction/assets/banner-772x250.png?rev=3509240)

![](https://ps.w.org/paygate-content-restriction/assets/icon-256x256.png?rev=3509240)

# PayGate Content Restriction

 By [joshswebservices](https://profiles.wordpress.org/joshswebservices/)

[Download](https://downloads.wordpress.org/plugin/paygate-content-restriction.1.0.0.zip)

 * [Details](https://os.wordpress.org/plugins/paygate-content-restriction/#description)
 * [Reviews](https://os.wordpress.org/plugins/paygate-content-restriction/#reviews)
 *  [Installation](https://os.wordpress.org/plugins/paygate-content-restriction/#installation)
 * [Development](https://os.wordpress.org/plugins/paygate-content-restriction/#developers)

 [Support](https://wordpress.org/support/plugin/paygate-content-restriction/)

## Description

PayGate Content Restriction lets you create membership tiers, restrict any post 
or page to specific tiers, and process payments via Stripe Checkout — all from within
WordPress without any external middleware.

**Key Features:**

 * Create unlimited membership tiers with custom pricing and features
 * Restrict individual posts, pages, or custom post types
 * Three paywall designs: Modern, Minimal, and Classic
 * Stripe-native payments (Checkout Sessions + Subscriptions)
 * Real Stripe webhook handling with signature verification
 * Admin member management dashboard
 * Analytics dashboard with conversion charts
 * Bulk content restriction tools
 * Member self-service dashboard (view/cancel subscription)
 * Transactional email notifications (welcome, cancellation, payment failed)
 * Theme template override support
 * WP-CLI demo seeder for testing

**Paywall Templates:**

 * **Modern** — Card with blur fade-in effect and tier grid
 * **Minimal** — Clean HR divider with stacked full-width CTA buttons
 * **Classic** — Badge icon, tier cards in flex row, Most Popular” label

**No dependencies on page builders, shortcode soup, or external services** beyond
Stripe.

### External Services

This plugin connects to the following external services:

#### Stripe

PayGate Content Restriction uses Stripe to process payments and manage subscriptions.

 * **What data is sent:** When a user subscribes, their WordPress user ID, email
   address, and selected membership tier are used to create a Stripe Customer and
   initiate a Checkout Session. Stripe receives whatever billing information the
   user enters during checkout.
 * **When it is sent:** Only when a logged-in user clicks a Get Access” or Subscribe”
   button to initiate checkout, or when a Stripe webhook event is received and verified.
 * **Stripe’s terms of service:** https://stripe.com/legal
 * **Stripe’s privacy policy:** https://stripe.com/privacy

#### Freemius (Pro version only)

The Pro version of this plugin uses Freemius for license management and automatic
updates.

 * **What data is sent:** WordPress site URL, plugin version, and (with user consent)
   basic site and admin contact information for license activation.
 * **When it is sent:** Only when the Pro version is active and a license is being
   activated or checked.
 * **Freemius terms of service:** https://freemius.com/terms/
 * **Freemius privacy policy:** https://freemius.com/privacy/

## Installation

 1. Upload the `paygate-content-restriction` folder to `/wp-content/plugins/`
 2. Activate the plugin through the **Plugins** menu in WordPress
 3. Go to **PayGate > Settings** and enter your Stripe API keys
 4. Create your membership tiers under **PayGate > Membership Tiers**
 5. Edit any post or page and use the **Content Restriction** metabox to restrict it

## FAQ

### Does this work with any theme?

Yes. PayGate Content Restriction has no theme dependencies. Paywall styles are scoped
CSS that work alongside any WordPress theme.

### Can I customize the paywall appearance?

Yes. Place a file at `{your-theme}/paygate-content-restriction/paywall-{modern|minimal
|classic}.php` and the plugin will use it automatically.

### What Stripe events are handled?

checkout.session.completed, `invoice.payment_succeeded`, `customer.subscription.
updated`, `customer.subscription.deleted`

### Is this compatible with WooCommerce?

Yes. PayGate Content Restriction uses its own custom tables and does not conflict
with WooCommerce.

### Does this plugin send data to any external services?

Yes — see the External Services section below. The plugin connects to Stripe for
payment processing and optionally to Freemius for Pro license management.

### Where is the webhook URL for Stripe?

After activating the plugin, go to **PayGate > Settings > Stripe** tab. The webhook
URL is displayed there. Add it to your Stripe Dashboard under Developers > Webhooks.

### What happens to my data if I uninstall the plugin?

Uninstalling the plugin removes all plugin data including membership tiers, member
records, content restrictions, and analytics events. WordPress options with the `
pgcr_` prefix are also deleted.

### Can members cancel their own subscription?

Yes. Members can view their membership status and cancel their subscription from
the member dashboard shortcode `[pgcr_member_dashboard]`.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“PayGate Content Restriction” is open source software. The following people have
contributed to this plugin.

Contributors

 *   [ joshswebservices ](https://profiles.wordpress.org/joshswebservices/)

[Translate “PayGate Content Restriction” into your language.](https://translate.wordpress.org/projects/wp-plugins/paygate-content-restriction)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/paygate-content-restriction/),
check out the [SVN repository](https://plugins.svn.wordpress.org/paygate-content-restriction/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/paygate-content-restriction/)
by [RSS](https://plugins.trac.wordpress.org/log/paygate-content-restriction/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.0.0

 * Initial release
 * Core content restriction engine with paywall templates (Modern, Minimal, Classic)
 * Stripe-native checkout sessions and subscription management
 * Webhook handlers for full subscription lifecycle
 * Admin member management dashboard
 * Analytics dashboard with Chart.js charts
 * Bulk content restriction tools
 * Member self-service dashboard
 * Transactional email notifications

## Meta

 *  Version **1.0.0**
 *  Last updated **1 month ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.0 or higher **
 *  Tested up to **6.9.4**
 *  PHP version ** 8.0 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/paygate-content-restriction/)
 * Tags
 * [content restriction](https://os.wordpress.org/plugins/tags/content-restriction/)
   [membership](https://os.wordpress.org/plugins/tags/membership/)[paywall](https://os.wordpress.org/plugins/tags/paywall/)
   [stripe](https://os.wordpress.org/plugins/tags/stripe/)[subscriptions](https://os.wordpress.org/plugins/tags/subscriptions/)
 *  [Advanced View](https://os.wordpress.org/plugins/paygate-content-restriction/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/paygate-content-restriction/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/paygate-content-restriction/reviews/)

## Contributors

 *   [ joshswebservices ](https://profiles.wordpress.org/joshswebservices/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/paygate-content-restriction/)