Skip to content

Job Feed - Overview

The Job Feed publishes all your live jobs as an XML feed at a fixed URL. Submit this URL to Indeed, LinkedIn, and other job aggregators to automatically syndicate your listings.

https://yoursite.com/wcb-jobs.xml

The feed is disabled by default. Enable it in Career Board → Settings → Job Feed.

The feed uses the Indeed XML format, which is also accepted by Glassdoor, LinkedIn, and most other major job aggregators. The document root is a single <source> element that opens with two publisher fields, followed by one <job> element per published job.

Field Source
<publisher> Your site name (Settings → General → Site Title)
<publisherurl> Your site home URL

Each <job> entry contains:

Field Source
<title> Job post title
<date> Publication date, RFC-822 GMT format
<referencenumber> WordPress post ID
<url> Public permalink
<company> Company name meta field (_wcb_company_name)
<city> First term from the wcb_location taxonomy
<country> Always emitted, currently empty
<description> Job description (HTML stripped, wrapped in CDATA)
<salary> Formatted min-max range in the job’s own currency, e.g. $80,000 - $120,000 / yearly
<jobtype> First term from the wcb_job_type taxonomy
<email> Contact email from feed settings
<expirationdate> Deadline meta field (_wcb_deadline)

The salary uses each job’s stored currency symbol (USD, EUR, INR, JPY, etc.), not a hardcoded dollar sign, so multi-currency boards export the correct symbol to every aggregator.

  1. Go to Career Board → Settings → Job Feed
  2. Toggle Enable Feed on
  3. The feed URL appears immediately below the toggle

Enter the email address to include in the <email> field of every job entry. This is the address aggregators and candidates use to contact you about listings. It defaults to the WordPress admin email.

  1. Log in to the Indeed Employer Portal
  2. Go to Integrations → Job Feed
  3. Enter your feed URL: https://yoursite.com/wcb-jobs.xml
  4. Indeed re-fetches the feed every 24 hours

The feed returns up to 200 jobs per page (a safe default; Indeed accepts up to 1,000 per page). If you have more than 200 published jobs, append a start parameter to retrieve additional pages:

https://yoursite.com/wcb-jobs.xml?start=0 ← jobs 1–200
https://yoursite.com/wcb-jobs.xml?start=200 ← jobs 201–400
https://yoursite.com/wcb-jobs.xml?start=400 ← jobs 401–600

Each feed page is cached for one hour using WordPress transients, and the response sends a Cache-Control: public, max-age=3600 header so CDNs and aggregators can edge-cache it.

Cache invalidation is handled with a version number rather than deletion. Whenever any job is saved or updated, an internal feed version (the wcbp_feed_version option) is bumped. Because the transient key includes that version, the next request builds a fresh feed immediately while the old cached copies expire on their own after an hour. There is nothing to clear manually.

Toggle Enable Feed off. The URL then serves your theme’s standard 404 page with an HTTP 404 status instead of XML. Aggregators that poll the URL will stop receiving new listings.