📬 WordPress Plugin · v1.0.0

WP Content
Subscription
Manager

Let readers subscribe to your post categories and receive automatic email digests. Double opt-in, WP-Cron scheduling, batch sending, external RSS inclusion — built entirely on WordPress-native APIs.

Getting Started

Installation & Activation

After activation, two database tables are created automatically and the WP-Cron digest job is scheduled.

📦

Step 1 — Upload

Plugins → Add New → Upload Plugin. Select wp-content-subscriptions.zip, click Install Now.

Step 2 — Activate

Click Activate. Creates wcsm_subscribers and wcsm_subscriptions tables and schedules digest cron.

⚙️

Step 3 — Settings

Go to Subscriptions → Settings. Set From Name, From Email, digest frequency (Daily/Weekly/Biweekly), and batch size.

📝

Step 4 — Add Form

Add [subscription_form] to any page. Readers see category checkboxes and receive a double opt-in confirmation email.

Subscriber Journey

How It Works

1

Visitor Fills the Form

Enters email, optionally name, ticks the categories they want. Clicks Subscribe.

2

Double Opt-In Email Sent

A confirmation email with a unique ?wcsm_confirm=TOKEN link is sent. Token expires in 24 hours.

3

Subscriber Confirms

Clicking the link sets their status from Pending to Active. They see a success message on the subscription page.

4

Digest Emails Sent Automatically

WP-Cron fires on your schedule. New posts are batched and emailed to all active subscribers.

5

One-Click Unsubscribe

Every digest email contains a unique ?wcsm_unsubscribe=TOKEN link. No login required to opt out.

Developer Reference

Shortcode & Settings

Subscription Form

Renders the email subscription form with category checkboxes, double opt-in flow, and status messages.

[subscription_form]
[subscription_form title="Join Our Newsletter" show_name="yes" categories="3,5,12"]
AttributeDefaultDescription
title"Subscribe for Updates"Heading shown above the form.
show_nameyesShow or hide the optional name field. Use no for email-only.
categoriesall non-emptyComma-separated category IDs to show as checkbox options.

Settings Panel

SettingDefaultDescription
From NameSite nameSender name in all digest and confirmation emails.
From EmailAdmin emailMust match your domain to avoid spam filters.
Digest FrequencyWeeklyDaily / Weekly / Every Two Weeks. Registers custom WP-Cron schedules.
Batch Size50Emails per cron run. Keep ≤100 on shared hosting to avoid timeouts.
External RSS URLemptyAppends up to 5 items from this RSS feed to every digest email.

REST API

GET  /wp-json/wcsm/v1/subscribers   ?status=active&per_page=50
GET  /wp-json/wcsm/v1/stats
DEL  /wp-json/wcsm/v1/subscribers/{email}
The Developer

Author Profile

Vetri Suriya
PHP · WordPress · AWS

Building production-grade WordPress plugins and Laravel applications. Passionate about clean architecture, open-source tools, and making complex features simple for end users.