A New Job Board Plugin for WordPress


I’ve just made a new plugin available (on github) that I’ve been working on to allow you to add and manage job listings on your WP site. It’s name; WP Job Manager.


One of the shortcode options for job display
One of the shortcode options for job display
  • Allows admin to create job listings
  • Frontend submission form supporting guests and registered users
  • Jobs can be set to expire after X days
  • Ajaxified job listing shortcode with search, filters and pagination
  • “Overview” shortcode
  • Widgets for showing jobs in your sidebar
  • Jobs can be ‘applied’ for via a munged email address or a given URL (revealed on click)
  • (should) work with any theme given some style love
  • Manage jobs from admin, including approving jobs if required
  • Employer dashboard for marking jobs filled or ending listings early
  • RSS feeds for the currently viewed search

Read on for a more in-depth look at what this baby can do.

The job ‘archive’

Added to a page via the [jobs] shortcode, the jobs archives are fully ajaxified with filters, search and RSS links.

Screen Shot 2013-06-07 at 20.35.44

The job submission process

As well as letting you manually add jobs, the plugin also has a neat frontend submission process for guests (or registered users) to create and manage their own listings. This can be added to any page with the [submit_job_form] shortcode.


As well as the usual job fields (title, location etc) there is a section for the company to add their details to the listing as well:

Screen Shot 2013-06-07 at 18.46.24

After submission you can preview your job listing before going to to submit it as final.

Screen Shot 2013-06-07 at 20.13.23

Approved listings are visible just like posts, which some extra content inserted automatically before and after the content (looks like the preview above!).

Employer Job Dashboard

Added using the [job_dashboard] shortcode, the job dashboard is for logged in users only and lists their active jobs. The employer can mark a job filled, edit, and delete their listings.

Screen Shot 2013-06-07 at 20.55.04


The plugin will be kept on Github for the time being until deemed 100% ready for (and to ensure there aren’t many bugs to feed the rating trolls). Enjoy!

WP Job Manager on Github

148 replies on “A New Job Board Plugin for WordPress”

Great job, I’m going to install it for our Tampa WordPress group website. Thank you!

Hi Mike, great plugin, I’ve installed it and having a look at some of the features. I just wanted to check with you – would it interact with a plugin like NextScripts to autopost the job listings to twitter/facebook etc?

I’d imagine so. Jobs are a custom post type, so as long as your plugin can handle those – yes.

It doesn’t unfortunately. Will ask them about it.

Another question:
If you wanted to show only specific jobs on a page (ie jobs within a category), is there a shortcode that could do this?

This is awesome, thank you for coding it! I’ve not gone through here yet to read all of your notes, but you have really developed a great piece of software! The only features we would like to see are 1) a built-in application form, and 2) the ability to pin to Google maps and search by radius. Having some hidden search fields would be nice as well so we could have “Dallas, Texas” and “Dallas TX” and “Dallas TX” all listed out …

Anyhow, great work.

I decided against application forms early on – mainly to keep it trimmed down, and really, why would you need to go through a form/site to apply? Don’t advertisers prefer to have applications directly without a middle man? Just made more sense to leave it out at the time.

Right now, no – they expire after X days (you define this). You can of course re-publish later and that date is reset.

No doubt a javascript error on your site. Check themes + plugins + browser error console.

As mentioned in another comment, I chose to enable direct email/url replies rather than have a form. It’s easier and more reliable for applicants to attach a file directly to an email than go through a convoluted application form IMO

Hi i have this plugin installed, it is amazing but i am having a couple of issues, is there anyway to remove the login section from the top as i have set it usable for non members and also when veiwing it from a mobile it looks beautiful and the listing process works perfectly but the jobs dont show up any ideas would be greatly appreciated thank you

Hi Mike, nice work. Is it possible to restrict posting a job to a certain wp-user level?


Great plugin indeed! Thank you or your good work.

Please tell me, is it possible to add Locations and display them as a dropdown so as to limit job postings to those locations? Also, how about Recent Jobs, Jobs by Location, Jobs by Company, Jobs by Type widgets? Any way to implement those from the current release?

Being a custom post type, you can query what you want if you know enough PHP to use get_posts().

Locations are strings for now – it could be extended to use a taxonomy or something but its not planned at present.

Hi Mike, Nice job really. I installed the plugin on my devel site. Everything seems fine, the only problem so far is that the job listing is not populated at the page until “Reset” button for the filters is clicked on. No listing at page load. Any help on this?

Seems like it conflicts with the Bretheon custom theme that I’m using. Do you have a clue what might be the problem or where should I check for? Thanks!

I can’t say – I guess its from theme forest? I know some of the themes there do some funky things which block ajax requests. You’d need a dev (or the theme author) to debug it.

Hi Mike. The theme author is also stuck about this problem. There’s no errors or warnings in the console while running the plugin. On page load ajax just quits without an obvious reason.

Is it possible to make a second ajax call (like the Reset button does) after the page is loaded?

There is already an ajax call on load – thats how the list gets populated at first. If the theme moving the JS files around or anything? Where are they – header or footer?

Actually no javascript errors are thrown. I checked the ajax call on Firefox console, it just quits without any obvious reason. Theme author also could not find any reason. At least that’s what he told me. I’m really stuck. And there’s really no alternative to your plugin. I feel so unlucky 🙂

I don’t know if it will solve it, but you should really use the latest version from You have a beta I think from github.

Already done that. Well thanks anyway for your efforts. I guess I’m just not lucky with this. Keep up the wonderful work.

It’s like magic 🙂 Updated to the latest 1.0.3 version and everything is just fine now. Thank you Mike for your awesome support.

Actually I remember what it is now. The theme may have a html5 placeholder script which conflicts by sending ‘all jobs’ to the search function. Obviously that breaks things 🙂 I’ll see if there is a workaround.

Hi Mike, nice work. But i have a problem with the job listing function. When i use [jobs] shortcode for listing all jobs, it doesn’t work. My wordpress page(3.5.2) only displays searchbar.

Any help on this?

It’s a javascript error, probably caused by another theme or plugin. The initial view is pulled in via AJAX so that it remembers active filters.

When the filters are “Reset”, it works as expected. I don’t see why it doesn’t do the same at startup. My version is also 3.5.2 like Kemal and I checked for JS errors on page. There seems to be no errors.

Resume’s will probably be an addon at some point. I’d like to focus on jobs right now.

A few questions…

Is there a way for admin to get an email notification when a job posting is submitted?

Is there a way for the person submitting the job to get a notification when it is approved/posted on the site?

Is it possible to remove the “Have an account?” field?


You can remove ‘have an account’ by editing the template files or using the filters. The job listing settings also control what this area shows.

Email notifications can be hooked in – there are even some plugins out there which send emails when post statuses change (to admin) which can be used.

I’m needing to pull various jobs in from the different job categories on various pages. How do I do this?

Most plugins have a show by category option.

e.g. [jobs category=”2″] and it only shows jobs in category 2.

How do I do this in your plugin?

That option is there in the latest version. ‘categories’ arg which you pass the category slug.


Very good plugin !!! Juste one thing to be perfect… Is it possible to apply to a job offer by sending files instead of dispaying a mail or an URL ?


No; mail and website urls (imo) are easier for applicants to work with than convoluted forms and messing with uploads.

OK Thanks. I will try to do it myself. I’m translating the plugin in french, I can send it if you want.

Yes, the latest version added a ‘categories’ option to the jobs shortcode.

Hi Mike,

this is plugin is great… But I was wondering if there are any short code for the specific categories created

RSS and guest listings are already there.

I may add multi-category support at some point.

But the PDF thing sounds bespoke – I doubt I’ll be adding that to core.

What’s the format for the category option on the [jobs] shortcode? Is it name or id?

[jobs category=”1″] or [jobs category=”cat_name”] or [jobs id=”12″]

Hi Mike

I’ve just updated to the new version to try out the categories tag, but I’m getting some weird results. I’ve gone through the wiki: Are these right?

[categories=”12″] or [jobs per_page=”20″ categories=”12″]

Both give completely different results:

[categories=”12″] pulls through a link to a site’s blog category (where the category ID is 1) and

[jobs per_page=”20″ categories=”12″] returns “No more jobs found matching your selection.”

Any pointers would be very helpful.


You are using the shortcodes wrong.

`[shortcode_name attribute=”value” attribute2=”value”]` and so on.

So for categories it would be:

`[jobs categories=”category-1″]`

Note, use slugs not IDs.


Done a bit of research around Job plugins and really impressed with how lightweight this is… Think it will be great for lots of people.

One thing I noticed… When plugged into the standard WP template. The category filters list in the admin section does not seem to populate.

Also, I think having separate category selection drop-downs on the front-end would be required. (ie. If you had two categories – Job Skills and Salary Bands for example). I have set these up as hierarchical categories in the current job categories in the CMS but would like a user to be able to select from separate listing boxes for each on the front-end I am sure I can do this – but wondered whether it would be better to have a different job category controller like job types.

I noticed you have mentioned multiple category work – are you looking at this already?

What do you think would be best?


Multi-categories may be added in the future for the frontend.

As for your admin category problem however, frontend themes shouldn’t affect admin at all.

It’s free, try it out. It should stretch to fit, but may need optmising for mobile. If the styling isn’t right you can of course style it yourself 🙂

Single jobs should just use single.php in your theme. You can create a single-job_listing.php if you want to customise it further.

You plugin is literally awesome! I’m using “profile builder” to redirect user to login in the frontpage. How do I “hide” using CSS or redirect the wp job manager login/register buttons to another /url of my choice?

– GM

There are several hooks in the account-signin.php template, such as ‘submit_job_form_login_url’ which you can filter to change the URL.

Thanks I ended up using a free plugin called “my settings” which allowed me to set the login /url to my liking…since I have very limited php knowledge.

Looking forward to see how much your plugin will impact the blogosphere

– GM

It has… refused? I don’t know what you mean 🙂 Maybe get a dev to integrate it for you.

Hi there

great plugin, but it must be me but I can’t find where to set the expiry date on jobs


Thanks for the great plugin. The plethora of hooks and filters and the templates have been great to work with.

One small note. If you go to a page where the [job_dashboard] shortcode is outputted and you are not logged in, you get a “You need to be signed in to manage your job listings” message.

I wanted to add a signin link to the message, but I wasn’t able to find any hooks to plug into so I made the change in a non-survivable manner (editing class-wp-job-manager-shortcodes.php to call the account-signin.php template).

It would be nice if you could add a simple “Sign In” link to the message in trunk or create a hook so I can add this in a survivable manner.


Hi! Love this. I have added a couple of test jobs and they are appearing on the homepage widget but not on the listing page. Any thoughts on why this would be happening?

Javascript error – check your browsers error console? A few others have had this problem in the comments, but less since the last updates.

WP Job Manager is a great plugin. I prefer to Job Manager plugin. That is a great work done. So simple.

Can I use woo commerce or another application to charge for 3rd party job listings? Thank you!

Not yet, but I plan to build it. Right now theres just the simple paid listings extension (for stripe and paypal).

Hi Mike

Wonderful plugin!

I think I may have come across a glitch for the Job Archive listing. I used the shortcode [jobs per_page=”20″ orderby=”title” show_categories=false] and this is what I received… It doesn’t quite line up like your display above. Any suggestions?


a) check the shortcode in html mode b) check the theme styles and add more css if needed

Hi there! Great work! Would this be useful in a BuddyPress / BBPress environment? Would users/members be able to post jobs?

Any social sharing plugin should work – jobs are just a post type.

And you can hide the company info with CSS perhaps, or edit the templates.

Hi Mike I cant get the jobs to go live, the status reads pending payment even after I approve them???

Pending payment jobs are not approvable via admin, only those pending ‘review’. Perhaps PDT is not setup correctly. This is covered in the wiki.

Send me an email once you’ve been through that.

Is it possible to add a dropdown box with a list of all states instead of a searchbox for “location”

This is a great plugin. We conducted a few test posts with success, but do have a couple of needs. Is it possible to add a category/box for Qualifications and one for a Contact Person. In addition, is it possible for an employer to upload a full job description rather than just a logo?

I think most of this could go in job description? You can add headings etc in the description field to separate it out.



Hi Mike, thank you kindly, this mod is fantastic. Would be 110% perfect for me if it had the ability for a person to post a job listing start and end date and have this show in the job listing. Is this possible. If not, would you be able to modify it for a price, although I would hate to lose the modification in a future upgrade. Any thoughts 🙂

Thinking of it though, the poster can simply add the timeframes to the job description. Just would be nice to see it in the short description?

Would be logical to add to the description.

Job listers can also mark the job filled when its ended (this is displayed).

Comments are closed.