Documentation

Getting the plugin running.


Install the free plugin

In your WordPress admin go to Plugins → Add New, search for PSC Newsletter, then install and activate. The plugin creates its tables on first load and adds a Newsletter menu.

To install from a zip instead, use Plugins → Add New → Upload Plugin and choose psc-newsletter.zip.

Requirements

  • WordPress 6.1 or newer
  • PHP 8.1 or newer
  • WP-Cron running, or a real cron job hitting wp-cron.php

Move from free to Pro

Pro is a separate plugin rather than an add-on, so it installs the same way and replaces the free build. Your subscribers, lists, emails and statistics are untouched — both editions share the same tables and options.

  1. Buy a licence and download psc-newsletter-pro.zip from your account.
  2. Upload and activate it. The free plugin deactivates itself.
  3. Paste your key into Newsletter → Settings → Licence.

Keep the free plugin installed but deactivated if you like — it does no harm, and it makes going back trivial.

Activate a licence

A key looks like PSC-A4KM-7QRT-9XZB-2NDW. Enter it in Newsletter → Settings → Licence and press Activate. The site is bound to the licence and counts against its site allowance.

To define the key in code instead — handy when you deploy the same config to several environments — add this to wp-config.php:

define('PSC_NEWSLETTER_LICENSE_KEY', 'PSC-XXXX-XXXX-XXXX-XXXX');
define('PSC_NEWSLETTER_LICENSE_URL', 'https://your-store.example');

Moving to a new domain? Deactivate the old site from your account first, which frees the slot straight away.

Offline and outages

Validation is cached for seven days, so a slow or unreachable licence server never blocks your admin. If the server cannot be reached the plugin falls back to the last known-good answer and keeps premium features on until the grace period runs out.

Updates

Pro updates arrive through the normal Dashboard → Updates screen, the same as any other plugin. A licence that has lapsed still runs, but stops being offered new versions.

REST API

The API lives under psc-newsletter/v1. Generate a key in Newsletter → Settings → API and send it as a header.

curl https://example.com/wp-json/psc-newsletter/v1/subscribers \
  -H "X-PSC-Api-Key: your-api-key"
  • GET|POST /subscribers — list and create
  • GET|PUT|DELETE /subscribers/{id}
  • GET|POST /lists and /emails
  • POST /emails/{id}/send — queue an email for sending
  • POST /subscribe — public, nonce-protected

Hooks

Fire your own code when something happens:

add_action('psc_newsletter_subscriber_confirmed', function ($subscriber) {
    // A double opt-in was completed.
});

add_filter('psc_newsletter_email_html', function ($html, $email) {
    return str_replace('{{year}}', date('Y'), $html);
}, 10, 2);

Shortcodes

  • [psc_newsletter_form] — the subscription form
  • [psc_newsletter_count] — confirmed subscriber count
  • [psc_newsletter_archive] — past newsletters (Starter)
  • [psc_newsletter_lock]…[/psc_newsletter_lock] — gated content (Professional)