Frequently asked questions

How Greenhouse Jobs for WordPress connects Greenhouse to WordPress, what it needs and where its limits are. Step-by-step setup is in the docs.

Before you buy

How is this different from Greenhouse's job board embed?

Greenhouse's embed is a quick way to show your board on a page: the board and job pages load in a frame served by Greenhouse. The plugin copies each job into WordPress instead, so every job gets its own page on your domain at yoursite.com/jobs/, with search and filters, job posting markup and an optional on-site application form.

Is this plugin made by Greenhouse?

No. Greenhouse Jobs for WordPress is an independent plugin: w4dev builds it on Greenhouse's Job Board API, and Greenhouse does not make or endorse it.

Which Greenhouse plans does it work with?

Any plan with a Greenhouse job board: that is where jobs are imported from. On-site applications also need a Job Board API key, which a Greenhouse user allowed to manage API credentials can create.

Do I need a developer?

No. Enter your board token and the plugin imports your jobs; a shortcode or block places them on any page. It is the Job Board API integration you would otherwise have a developer build.

Does it slow my site down?

No. Jobs are copied into WordPress on a schedule, so visitors read them from your own database instead of waiting on Greenhouse.

Can I change how it looks?

Yes. Colours, spacing and corners are CSS custom properties, and every template can be copied into your theme. See templates.

Does it work with block themes?

Yes. On WordPress 6.7 or newer, the job page, the jobs page and each archive are block templates you edit in Appearance → Editor, and your saved version wins. Classic themes get PHP templates. See templates.

Setup and sync

Where do I find my board token?

It is the last part of your public job board address: for https://job-boards.greenhouse.io/acmecorp the token is acmecorp (older boards use boards.greenhouse.io). Paste it under Greenhouse → Settings; installation walks through it.

Do I need an API key, a Harvest key or partner approval?

Listing jobs needs only your board token, because Greenhouse's job board feed is public. On-site application forms also need a Job Board API key. You never need a Harvest key or Greenhouse partner approval.

Where do I create a Job Board API key?

In Greenhouse, go to Configure → Dev Center → API Credential Management, create a new API key and choose the Job Board type. Paste it under Greenhouse → Settings. See installation.

Will internal or unpublished jobs show on my site?

No. The plugin imports only the jobs published on your Greenhouse job board, so internal-only and unpublished posts stay off your site.

I use Greenhouse's embed today. How do I switch?

Enter your board token under Greenhouse → Settings, then replace the embed code on your careers page with the [ghjb_jobs] shortcode or the Job List block; see shortcodes and blocks.

Links made for the embed keep working: an address with ?gh_jid= sends visitors (with a 301 redirect) to that job's own page on your site, keeping any gh_src and utm_ parameters. A gh_src tracking token is remembered for 30 days, so an application sent from your site is still credited to the source in Greenhouse.

How often do jobs update?

Every 30 minutes by default; set anything from 15 minutes to once a day under Greenhouse → Settings, or use Import jobs now under Tools. Imports run on WP-Cron, which only fires when someone visits, so on a quiet site set up a real cron job that calls wp-cron.php.

Can I show jobs from more than one Greenhouse job board?

Each site connects to one job board. A developer can add more boards with the ghjb_get_boards filter.

Does it work with EU-hosted Greenhouse boards?

Yes. Paste your board's job-boards.eu.greenhouse.io address under Greenhouse → Settings (a bare token works too; the plugin checks Greenhouse's EU data centre once on save). Jobs are then read from, and applications sent to, Greenhouse's EU data centre; see installation.

Does it work with WP-CLI?

Yes. wp ghjb shows the connection status, runs an import, rebuilds job terms, clears the cache and manages Google Indexing. See the WP-CLI reference.

My jobs are not importing.

Open Greenhouse → Settings and use Test connection: a failed import shows Last import failed with the reason. If one job is missing, check that it is published on your Greenhouse job board.

A job page shows "Page not found".

If it is one job, it was closed or unpublished in Greenhouse and the import moved it to the trash; reopening it restores the page at the same address. If every job page does this, go to Settings → Permalinks and click Save Changes without changing anything.

Search and SEO

Greenhouse already hosts my job board. Why put jobs on my site?

So visitors, and clicks from Google for Jobs, land on your domain instead of job-boards.greenhouse.io. Each job page carries JobPosting data; if another page carries job data for the same job, Google decides which one to show.

How fast does Google see a new job?

Google crawls on its own schedule. With Greenhouse → Google Indexing on, the plugin notifies Google's Indexing API in the background when a job is added, changed or closed, up to Google's default 200 requests a day. Setup needs a Google Cloud service account added as an owner of your site in Search Console; the Google Indexing API guide walks through it.

Does it keep my Greenhouse departments and offices?

Yes. Departments become Department terms, and your office tree becomes Locations, nested as in Greenhouse. Departments, locations and employment types (when your board has an employment type field) each get pages such as "Jobs in Ireland" at yoursite.com/jobs/location/emea/ireland/, listed in your sitemap. Change the slugs under Greenhouse → Settings → Job archives. More in job archives.

Will my SEO plugin and this plugin both print tags?

No. With Yoast SEO, Rank Math, All in One SEO, SEOPress or Slim SEO active, the plugin leaves the description, canonical and social tags to it and prints only the JobPosting data. If your SEO plugin also adds job posting markup, turn one of them off.

Where is the sitemap?

At /wp-sitemap-posts-ghjb_job-1.xml, linked from /wp-sitemap.xml, with department, location and employment type pages in their own sitemaps. If an SEO plugin replaces the WordPress sitemap, make sure its sitemap includes the Jobs post type.

Does it show salaries?

Yes, when you publish a pay range with the job in Greenhouse (pay transparency). The job page shows a Pay range row, and the JobPosting data gets baseSalary when the pay period is clear from the range's wording or the amount is clearly a yearly salary. To hide pay everywhere, untick Pay ranges under Greenhouse → Settings → Display; see settings.

Applications

Do applicants need a Greenhouse account?

No. They fill in the form on your job page and the plugin sends the application to that job in Greenhouse.

Does the form include my custom questions?

Yes. The form is built from the questions Greenhouse returns for each job: name, email, phone, resume and cover letter, and the job's custom questions. Location questions, GDPR consent and optional EEOC and demographic questions appear when the job has them; EEOC and demographic answers go only to Greenhouse and are never stored on your site.

A job that asks for education or work history gets those sections too, with up to 5 entries each: school (suggested as the applicant types), degree, discipline and dates; company, title, dates and I currently work here. See on-site applications.

Where does applicant data go?

Straight to Greenhouse. The plugin stores no applications and does not keep uploaded files on your server. The Submissions log (on-site applications), on by default, records the last 100 attempts: job, result, and the applicant name and email.

Can I get an email when someone applies?

Yes. Under Greenhouse → Settings, turn on an alert to your hiring team, a confirmation to the applicant, or both. They are off by default because Greenhouse can send its own; see settings.

How does it handle GDPR?

Turn on the Consent checkbox under Greenhouse → Settings and write your own wording; applicants must tick it before they can submit. A job that requires GDPR consent in Greenhouse always shows the checkbox. Submissions log entries work with WordPress's personal data export and erase tools, and privacy lists what goes where.

The job page shows "Apply on Greenhouse" even though I saved a key.

Usually one of these:

  • Applications is set to Send applicants to Greenhouse.
  • An admin notice says Greenhouse rejected the key. Create a new Job Board API key and save it.
  • The plugin could not load the job's application form from Greenhouse, or the job requires an education section whose school, degree and discipline lists could not be loaded. The link is the fallback, so applicants can still apply.
  • The page was cached before you saved the key. Use Clear cache under Greenhouse → Settings → Tools.
Applicants see "Applications are temporarily unavailable".

Greenhouse rejected the Job Board API key, or the plugin could not load the job's form from Greenhouse when the application was sent. A rejected key also shows an admin notice; create a new Job Board API key and save it. Greenhouse → Submissions shows the exact reason when Log submissions is on.

Does the form work on cached pages?

Yes. Visitors need no session token, so a page served from a cache plugin or CDN still submits. Logged-in users are asked to reload if theirs has expired.

License and account

How much does it cost?

$69 a year for one site, including a year of updates and support. If it is not right for you, you can ask for a refund within 14 days under the refund policy.

Can I buy it now?

Not yet. Join the waitlist and w4dev will email you when it goes on sale.

Where do I enter my license key?

Greenhouse → License.

What happens when my license expires?

The plugin keeps working. Renew to keep getting updates and support.

What is removed when I delete the plugin?

Its settings, cached Greenhouse responses, the Submissions log, the scheduled import, the job terms, and each job's view and application counts. Imported job posts stay so links keep working; to remove them too, add define( 'GHJB_UNINSTALL_DELETE_JOBS', true ); to wp-config.php before deleting. Deactivating keeps everything and only stops the scheduled tasks.

Give every Greenhouse job a page on your own site.

Job pages with Google for Jobs markup, search and filters, and on-site applications. $69 a year for one site.