Use code "LIGHTHOUSE20" to save 20% on all plans forever. Get it now!

How to Run PressedMail Background Jobs From Real Cron

When WP-Cron is switched off or your site is too quiet to trigger it, run PressedMail's due jobs from a system cron line with one WP-CLI command.

Cover image for How to Run PressedMail Background Jobs From Real Cron

PressedMail does a lot of work when nobody is looking. It fetches new mail, sends scheduled messages, wakes snoozed ones and runs rules. That work rides on WordPress’s own scheduler, WP-Cron, and most sites never have to think about it.

A few do. If your host has switched WP-Cron off, or your site gets too few visits to trigger it, scheduled work waits. This guide shows how to tell, and how to hand the job to a real system cron with a single command.

Do you need this?

Probably not. PressedMail books its own recurring event with WP-Cron and drives every due job from it, with no setup. It also catches up while someone has PressedMail open. A small, bounded number of overdue jobs are run on the spot when a mailbox is read, so an open inbox heals itself.

The cases where a real cron helps are narrow:

  • Your wp-config.php sets DISABLE_WP_CRON, and nothing else runs WordPress’s scheduler.
  • WP-Cron cannot start, for instance because the site cannot call itself over the network.
  • You want jobs to run to the minute on a site with very little traffic.

Signs of trouble are scheduled sends that go out late, snoozed mail that wakes late, and an inbox that only updates when you open it. The guide to snoozing and scheduling shows what late timed work looks like.

Read the Diagnostics lines

Open PressedMail, then Settings, then Diagnostics. The Plugin Status card tells you how background work is going.

The Plugin Status card on the Diagnostics tab with the background sync badge, the last sync run and the last wake line numbered

  1. Background sync. On this paid build it reads Scheduled, every 5 min.
  2. Last sync run and Next run. If the last run is long ago and the next run is already past, the schedule is stuck.
  3. Last wake from CurbSoftware. Paid builds can be woken from outside, which the sync guide explains.

These lines belong to paid builds. A Free site reads differently. It says PressedMail checks for new mail while it is open and when someone visits the WordPress admin, and that nothing runs on a timer.

When a paid site is overdue, Diagnostics adds a hint. It says WordPress runs background jobs only when your site gets a visit, so a quiet site falls behind, and that PressedMail catches up while it is open. For steady syncing, it says, have your host run wp pressedmail cron run-due every minute.

The sync interval is a separate setting

The command does not change how often PressedMail checks for mail. That interval lives under Settings, then Mail sync.

The Mail sync tab with the sync frequency and timed functionalities settings numbered

  1. Email sync frequency. How often PressedMail checks connected mailboxes for new messages.
  2. The number of minutes. It starts at 5, and 0 means manual sync only.
  3. Timed functionalities enabled, which paid builds have.

A real cron decides when due jobs get a chance to run. This setting decides how often a mail check is due.

The command

You need WP-CLI on the server. From the WordPress folder, run:

wp pressedmail cron run-due

PressedMail drains the jobs that are due, then drives its own process queue. A good run ends with a line such as “Processed 3 due job(s); 0 still due.”

Two flags tune it. --max-jobs sets how many jobs one pass may run. It defaults to 25 and accepts 1 to 200. --time-budget sets the seconds the pass may take. It defaults to 45 and accepts 1 to 300. A flag with a garbage value is rejected with a warning instead of being quietly clamped, so a broken shell variable in a crontab does not degrade every run unnoticed.

The older spelling wp pressedmail cron run_due still works, so a crontab written for it keeps running.

Put it on a schedule

Add one line to the crontab of the user that owns the site files:

* * * * * cd /path/to/wp && wp pressedmail cron run-due >/dev/null 2>&1

Replace the path with your WordPress folder. On shared hosting, add the same command through the host’s cron screen. If your host does not know wp, give the full path to the WP-CLI binary.

Every minute suits the default budget. Longer gaps are fine too. Scheduled sends and sync then run at the next tick rather than to the minute.

If you disable WP-Cron, WordPress itself still needs a real scheduler for everyone else’s jobs. WordPress documents how to do that in hooking WP-Cron into the system task scheduler. PressedMail’s command covers PressedMail’s own work. It does not run other plugins’ scheduled events.

It is safe beside WP-Cron

You do not have to choose. The command takes the same named lock as the inline catch-up, recurring jobs are rescheduled before they run, and every worker can safely run twice. If a job races a WP-Cron pass, the claim and lock rules stop it applying twice. A host that disables WP-Cron and runs this line loses no scheduled PressedMail work.

Two messages are normal and harmless. One says another drain holds the queue lock right now, so nothing was lost and due jobs run next minute. That happens when your cron overlaps WP-Cron or a second run. The other says background automation is paused by settings or by a filter, so no workers ran. If you see that one and did not expect it, check whether a plugin or a code snippet pauses PressedMail automation.

Check that it worked

  1. Run the command once by hand and read the closing line.
  2. Open Diagnostics and look at Last sync run. It should move to a time close to now.
  3. Wait one cron interval and check again.
  4. Schedule a test email a few minutes ahead and confirm it leaves on time. The SMTP test guide shows a safe way to check the sending side.

If rules seem to sit in a queue, the rules troubleshooting guide covers the other causes. For the wider checklist of server requirements, see the server requirements guide.

Frequently asked questions

Do I need a real cron on a normal WordPress site?

No. PressedMail uses WP-Cron on its own and catches up while it is open. Add a real cron only if WP-Cron is off or unreliable.

Is the command safe to run every minute?

Yes. It holds a lock, skips cleanly when another pass is running, and its workers tolerate a repeat.

What does it not do?

It does not run other plugins’ scheduled events, and it does not change how often PressedMail checks mail. That interval is a setting, covered in the sync guide.

The command says it is paused. What now?

Automation is switched off by a setting or a filter. Find the code or plugin that pauses it, or ask whoever manages the site.

Does it work without WP-CLI?

The command needs WP-CLI. Without it, point a system cron at WordPress’s own scheduler as WordPress documents.

Manage your email inside WordPress

PressedMail Free adds an email client directly to your WordPress dashboard. Connect a compatible IMAP/SMTP mailbox, read and send mail, organize messages, and configure WordPress SMTP.

Download PressedMail Free →

Newsletter

Get useful PressedMail updates.

New releases, setup guidance, and practical ways to handle email in WordPress.

Occasional PressedMail email. Unsubscribe whenever you like.

Choose the plan that fits your WordPress sites.

Paid plans include unlimited accounts and users. Compare Premium and Ultimate features, then choose the site count you need.

Yearly plans are priced by number of sites. Lifetime is a one-time payment covering up to 100 sites.

Starter

For one site

$49/ year
1 Website
  • All current and future Premium features
  • Unlimited email accounts
  • Contacts, calendar, and scheduled email rules
  • Templates, blocks, and signup forms
  • AI tools and phishing detection
  • Layouts, themes, and workspace controls
  • Licensed updates and priority support
  • 10,000 PressedMail AI credits a yearLimited time
Most Popular

Premium

For multiple sites

$89/ year
10 Websites
  • All current and future Premium features
  • Unlimited email accounts
  • Contacts, calendar, and scheduled email rules
  • Templates, blocks, and signup forms
  • AI tools and phishing detection
  • Layouts, themes, and workspace controls
  • Licensed updates and priority support
  • 25,000 PressedMail AI credits a yearLimited time
All Features

Ultimate

For agencies

$169/ year
100 Websites
  • Everything in Premium, plus:
  • Campaigns and shared templates
  • Share inboxes, calendars and contact lists
  • White labelling with a brand theme
  • 50,000 PressedMail AI credits a yearLimited time

What customers say after bringing email into WordPress.

Using PressedMail in your own work? Submit a testimonial

I save hours & it’s easy to use

I have a lot of email accounts, and it’s annoying to manage them through different providers. I needed something better than what was out there, so I built it. I spent the better part of two years making PressedMail the plugin I wanted to use every day, and now I get to share it with everyone else. I added my accounts, automated the cleanup of over 3000 emails, and it’s saved me hours of work.

Robert H. AlexanderFounder - CurbSoftwareCreator of PressedMail

Helps get more clients

As a freelancer I need to manage several clients’ accounts. I installed PressedMail on WordPress on localhost and use it as my main email client. I manage everything for clients from PressedMail. And several clients use PressedMail now after I have set their WordPress instances up.

Gene Piki
  • Email Swiss Army Knife

    We use PressedMail as a value added service for clients and potential clients as a feature of our agency’s offering helping put us ahead of competition. We love the white-labelling feature, automation, and security controls. It also replaces several of the other plugins we used to use and it’s like a small CRM.

    Cyrus M. (InCurb Digital)

  • Fast inbox organization with phishing detection

    PressedMail helps us organize our inboxes fast. We especially like the phishing detection feature.

    John & Andrea

  • One source of truth for every client

    As a VA, I use PressedMail to keep each client’s inbox separate while managing everything from one app. It gives me a single source of truth without mixing client work together.

    Amber, K

  • Teaching and client work stay organized

    I balance teaching with social media marketing clients. PressedMail helps me keep both sides of my work organized in one place.

    J.A. Payo

FAQ

Common questions

Free version

Start with one inbox. Free.

One mailbox for one user, a rich-text composer, custom folders, unlimited email rules, one signature, two themes and one layout. Contacts, calendar, scheduling and AI require a paid plan.

1 account · 1 user · 2 themes · unlimited rules
Roadmap

See what is coming next.

Follow planned work, current progress, and recently completed features.

  1. Planned

    Calendar Sync with External Providers

    Planned. Today calendars and events live in WordPress and do not sync with any outside provider. Two-way sync with Google Calendar, Outlook, iCloud and CalDAV-compatible services is on the roadmap.

  2. Planned

    Dedicated Support

    A higher-touch support channel beyond the current paid Priority Email Support entitlement.

  3. Planned

    Activity Log

    A searchable audit trail of key actions across PressedMail accounts, with per-user and admin views, retention controls, and export.

Bring your working inbox into WordPress.

Compare Premium and Ultimate features, then choose a paid plan for the number of WordPress sites you manage.