Skip to content

Job Alerts

Job Alerts let candidates subscribe to saved searches. When new jobs matching their saved filters are posted, they receive an email - instantly, daily, or weekly.

All alert subscription and management happens through one block: Job Alerts (wcb/job-alerts). Add this block to a job search page or candidate dashboard page.

The block has two parts:

  1. Get Job Alerts - a frequency selector (Instant / Daily / Weekly) and a Subscribe button. Subscribing saves the current search filters as a new alert. A confirmation message (“Alert created. We will email you when matching jobs are posted.”) appears on success.
  2. Active Alerts - a list of the candidate’s existing alerts. Each row shows the alert and a control to delete it.

The block is only shown to logged-in users; an alert is always owned by the candidate who created it.

Frequency When emails send
Instant As soon as a matching job is published
Daily Once per day (default), morning digest
Weekly Once per week, Monday morning

Daily is the default frequency when an alert is created without an explicit choice. Candidates can change an alert’s frequency at any time from the block.

Each alert stores criteria that are checked against every candidate job. A job must satisfy all of the criteria that are set on the alert:

  • Keyword - matched (case-insensitive substring) against the job title
  • Category - job must be in the alert’s wcb_category term
  • Job Type - job must be in the alert’s wcb_job_type term
  • Location - job must be in the alert’s wcb_location term
  • Salary minimum - the job’s maximum salary must not fall below the alert’s minimum
  • Salary maximum - the job’s minimum salary must not exceed the alert’s maximum
  • Remote - when set, only jobs flagged remote match

Empty criteria are ignored, so an alert with only a keyword matches on that keyword alone.

By default, alerts are delivered by email. Delivery runs through a channel registry (the wcbp_alert_dispatch_channels filter), so addons can add Slack, Discord, SMS, or push delivery alongside email without modifying the alerts module. The built-in email channel fires the wcbp_send_alert_email action.

Job alert emails use WP Career Board’s standard email system:

  1. Go to WP Career Board → Settings → Notifications
  2. Set your From Name and From Email

For reliable delivery, configure an SMTP plugin so alert emails are not flagged as spam.

Instant alerts fire in real time when a job is created (on the wcb_job_created action). Daily and weekly digests run on WP-Cron:

  • Daily digest is scheduled for 8:00 AM (server time)
  • Weekly digest is scheduled for Monday 8:00 AM (server time)

If your site has low traffic, WP-Cron may run late. Configure a real server cron that calls wp cron event run --due-now to keep digests on time.

The digest sweep only emails jobs published since each alert’s last send, so candidates are not sent duplicates.

Alerts are stored in the wcb_job_alerts table. Each row records the owning user, an optional board scope (0 = all boards), the saved keyword, a JSON blob of filters, the frequency, and the last-sent timestamp. The REST routes that power the block are:

Action REST route
List the current user’s alerts GET /wcb/v1/alerts
Create an alert POST /wcb/v1/alerts
Update an alert’s frequency PUT /wcb/v1/alerts/{id}
Delete an alert DELETE /wcb/v1/alerts/{id}

Creating and listing require a logged-in user. Updating and deleting require the alert’s owner (or a user with the wcb/manage-alerts ability).