Skip to content

Plugin: dezeen-campaign-monitor

Overview

PropertyValue
Plugin NameDezeen Campaign Monitor
Version1.0.0
AuthorEDX
Location_project/_web/wp-content/plugins/dezeen-campaign-monitor/
PurposeCampaign Monitor newsletter signup forms and integration

Architecture

dezeen-campaign-monitor/
├── dezeen-campaign-monitor.php
└── src/
    ├── classes/
    │   ├── core.php                    # Main loader, shortcodes
    │   ├── admin.php                   # Settings page
    │   ├── frontend.php                # Frontend rendering
    │   ├── class-shortcode.php         # Shortcode logic
    │   ├── class-campaign-monitor.php  # CM API wrapper
    │   └── class-rest-api.php          # REST endpoints
    ├── views/
    │   ├── form.php                    # Signup form view
    │   ├── event-invite-form.php       # Event invite form
    │   ├── unsubscribe-form.php        # Unsubscribe form
    │   └── settings.php               # Admin settings view
    └── assets/
        ├── js/campaign-monitor.js      # Frontend JS
        └── sass/campaign-monitor.scss  # Styles

REST API Endpoints

MethodEndpointAuthPurpose
POSTdezeen-campaign-monitor/v1/subscribePublicSubscribe email
POSTdezeen-campaign-monitor/v1/unsubscribePublicUnsubscribe email
POSTdezeen-campaign-monitor/v1/check-emailPublicCheck subscription status
POSTdezeen-campaign-monitor/v1/event-invitePublicEvent invite signup
POSTdezeen-campaign-monitor/v1/test-connectionAdminTest CM API connection
GETdezeen-campaign-monitor/v1/get-custom-fieldsAdminGet CM list custom fields
GETdezeen-campaign-monitor/v1/testPublicHealth check
GETdezeen-campaign-monitor/v1/noncePublicGet WP nonce

Shortcodes

ShortcodePurpose
[campaign_monitor_form]Newsletter signup form
[campaign_monitor_status]Subscription status check
[campaign_monitor_unsubscribe]Unsubscribe form
[campaign_monitor_event_invite]Event invite form

Configuration

Required wp-config.php constants:

php
define('CAMPAIGN_MONITOR_LIST', 'd24aa47810d563872be2928382fe1bf4');
define('CAMPAIGN_MONITOR_API_KEY', '...');
define('CAMPAIGN_MONITOR_CLIENT_ID', '...');

Admin Pages

  • Settings → Dezeen Campaign Monitor — API configuration and form settings

Asset Build

Plugin assets are compiled via the main webpack.mix.js:

  • JS: src/assets/js/campaign-monitor.jsthemes/2016dezeen/assets/js/plugins/dezeen-campaign-monitor.js
  • SCSS: src/assets/sass/campaign-monitor.scssthemes/2016dezeen/assets/css/plugins/dezeen-campaign-monitor.css