plugin-icon

Quillrush Newsletter Studio for Sendy

Newsletter studio for the Sendy + Amazon SES stack. Visual builder, two formats, scheduling, multi-list, auto-fetched lists.
Versión
1.6.2
Última actualización
May 29, 2026
Quillrush Newsletter Studio for Sendy

📧 Quillrush Newsletter Studio for Sendy turns your WordPress dashboard into a full-blown newsletter creation studio for the Sendy + Amazon SES stack. Drag your latest posts into a beautiful responsive HTML email, pick the Sendy lists/segments to ship to, and send via your self-hosted Sendy installation, which forwards every message through Amazon SES. No HTML coding. No external SaaS. No paid tier.

⚠️ Requires a self-hosted Sendy install backed by Amazon SES. This plugin is the WordPress front-end — it does not replace Sendy or SES. If you don’t have Sendy + SES set up yet, see sendy.co and aws.amazon.com/ses.

✨ Headline features

  • 🎨 Visual newsletter builder — drag posts in, see the rendered email update live.
  • 📨 Two newsletter formats per campaignThe Roundup (subscriber-facing) and The Insider Brief (editorial pitch for media & partners).
  • 📋 Auto-fetched Sendy lists & segments — pulled live via the Sendy API, shown as checkboxes with active subscriber counts. Cached 10 minutes; one-click refresh.
  • 🧠 Remembers your last selection — the lists you sent to last time are pre-checked next time.
  • 🔍 Infinite-scroll post search — AJAX-loads posts in batches of 10 as you scroll.
  • 🖼️ Smart hero image — uses your uploaded banner if present, otherwise falls back to the first post’s featured image.
  • 📱 Mobile-first responsive layout — 2 columns on desktop, single column on mobile (< 600px), auto-height cards.
  • 📅 Three send modes — Save as Draft in Sendy, Send Immediately, or Schedule for a future date/time.
  • 🕐 Timezone-aware scheduling — uses your WordPress timezone; shows current server time + zone next to the picker.
  • ♻️ Auto-recovery for overdue campaigns — if WP-Cron didn’t fire on time, overdue scheduled campaigns are auto-sent on next admin page-load.
  • 🛠️ Retry on failure — failed sends show the exact Sendy error + a one-click Retry Send button.
  • ⚙️ Optional cron trigger — after each send, optionally hit scheduled.php?i=BRAND_ID on your Sendy host so queued campaigns process without a server cron.
  • ✍️ Custom footer block — extra text/HTML above the footer in a highlighted box. Supports anchor tags + auto nl2br.
  • 🌐 Social footer icons — Instagram, LinkedIn, X (Twitter), YouTube.
  • 🗃️ Campaign history — every campaign stored as a qrnss_campaign custom-post-type entry with Status / Scheduled For / Error columns.
  • 🔒 WordPress-native security — nonces on every action, manage_options capability checks, wp_safe_redirect() for all redirects.

📨 The two newsletter formats

🗞️ The Roundup — visual hero + 2-column story grid for your subscribers. Uses the «Custom Footer Text» highlighted box.

✉️ The Insider Brief — personal greeting, lead paragraph, centered hero with featured image, «What Else We’re Seeing» 2-column grid, «Why this matters» callout, «For Media & Collaborations» CTA block, and a centered About Us block. Built for media pitches & partner updates. All copy editable from Settings The Insider Brief — Template Texts.

Pick the format per-campaign on the Create Newsletter page (Design Settings Newsletter Format). Header and dark footer (logo, social, copyright, unsubscribe) are shared across both formats.

📋 Full settings reference

🔌 Sendy Connection Settings

  • Sendy Installation URL — base URL of your Sendy install (e.g. https://sendy.yourdomain.com/).
  • API Key — from Sendy Settings Your API Key.
  • Brand ID (Optional) — from Sendy Settings Your Brand ID. Required by some Sendy versions and used for auto-fetching lists.
  • Default From Name — pre-filled into every new campaign.
  • Default From Email — pre-filled into every new campaign.
  • Auto-Trigger Cron — checkbox. After sending, hit <sendy-url>/scheduled.php?i=BRAND_ID so queued campaigns process without a system cron.
  • Show Article Excerpt — checkbox. Insert a 20-word excerpt between the post title and the «Read More» button.

🎨 Footer & Social Settings

  • Footer Logo URL — logo shown in the dark footer band.
  • Copyright Text — footer copyright line. {year} is replaced with the current year.
  • Custom Footer Text — textarea, HTML allowed. Shown in a highlighted box above the footer in The Roundup. Newlines <br> automatically.
  • «Read More Articles» Link — optional link below the post grid.
  • Instagram URL / LinkedIn URL / X (Twitter) URL / YouTube URL — social icons in footer.

✉️ The Insider Brief — Template Texts (used only by The Insider Brief format)

  • Greeting — e.g. Hi [First Name],
  • Intro Paragraph — lead paragraph above the hero story (HTML allowed).
  • Hero Section Label — small label above the hero (e.g. Hero Story).
  • Grid Section Heading — e.g. 🔍 What Else We're Seeing
  • «Why This Matters» Heading + Body
  • Collaboration Heading + Body — e.g. 📩 For Media & Collaborations + CTA bullets and contact info (HTML allowed).
  • About Us Heading + Body — centered About block above the footer.

📅 Send modes

  • 💾 Save as Draft in Sendy — POSTs to create-campaign.php with send_campaign=0. Campaign appears in your Sendy dashboard as a draft. WP logs status: draft.
  • 🚀 Send Immediately — POSTs to create-campaign.php with send_campaign=1. Sendy queues + dispatches via SES. WP logs status: sent. If Auto-Trigger Cron is on, also hits scheduled.php?i=BRAND_ID.
  • Schedule — stored as a qrnss_campaign post with status scheduled. WordPress registers a one-off wp_schedule_single_event for the chosen datetime. When the event fires, the plugin sends via Sendy. Datetime picker is timezone-aware and uses your WP timezone setting.

🛟 Failure handling

Failed sends never silently disappear:

  • ❌ Red admin notice at the top of the Campaigns screen.
  • 📋 Exact Sendy error in the Error column.
  • 🔁 One-click Retry Send button (CSRF-nonced).
  • ♻️ Auto-recovery — overdue scheduled campaigns automatically send on next admin page-load.

🗄️ Campaign history (CPT)

Every campaign is stored as a qrnss_campaign custom-post-type entry. Admin columns:

  • Title — subject line.
  • Statusdraft (grey), scheduled (yellow), sent (green), failed (red).
  • Scheduled For — datetime if scheduled.
  • Error — Sendy error message if the send failed.

🔌 Sendy API endpoints used

All requests go straight to your own self-hosted Sendy installation at the URL you set in Settings. The plugin never talks to any third-party SaaS — Sendy itself fans out to Amazon SES from your host.

  • api/lists/get-lists.php — fetch lists for the Create Newsletter screen (cached 10 min). Sends: api_key, brand_id.
  • api/subscribers/active-subscriber-count.php — per-list subscriber counts. Sends: api_key, list_id.
  • api/campaigns/create.php — Save as Draft, Send Immediately, scheduled fire. Sends: api_key, from_name, from_email, reply_to, title, subject, html_text, plain_text, list_ids, brand_id, send_campaign.
  • scheduled.php (your Sendy host) — only when Auto-Trigger Cron is ticked. Sends: i=BRAND_ID query param.

🔒 Requirements

  • WordPress 5.8 or higher (tested up to 7.0).
  • PHP 7.4 or higher.
  • A reasonably recent self-hosted Sendy installation.
  • Amazon SES configured inside Sendy (out of scope for this plugin).
Gratisen planes de pago
Probado hasta
WordPress 7.0
Te puedes descargar este plugin para utilizarlo en tu sitio de .