Appearance
Custom Post Type
The Recruitly plugin registers a Job custom post type in WordPress with 9 taxonomies and 50+ metadata fields. This means every job synced from Recruitly is a first-class WordPress post — queryable, filterable, and displayable using any tool that works with custom post types.
This is the foundation that powers both the shortcodes and the page builder integrations described below.
Taxonomies
Each job is tagged with terms from these 9 taxonomies:
| Taxonomy | Slug | Example Values |
|---|---|---|
| Cities | jobcity | London, Manchester, New York |
| Counties | jobcounty | Greater London, California |
| Countries | jobcountry | United Kingdom, United States |
| Job Types | jobtype | Permanent, Contract, Temporary |
| Sectors | jobsector | IT, Finance, Healthcare |
| Tags | jobtag | Remote, Urgent, Featured |
| Languages | joblanguage | English, French, German |
| Industries | jobindustry | Technology, Banking, Pharma |
| Locations | joblocation | City Centre, Hybrid, On-site |
Use these in WP_Query, archive templates, or any taxonomy-aware widget/plugin.
Metadata Fields
All job data is stored as post meta. Access any field with the standard WordPress function:
php
$value = get_post_meta($post_id, 'jobTitle', true);Identifiers
| Field | Description |
|---|---|
jobId | Recruitly internal job ID |
uniqueId | Unique identifier |
reference | Job reference code |
Job Details
| Field | Description |
|---|---|
jobTitle | Job title |
jobStatus | Current status |
jobType | Employment type |
webAdvertTitle | Title used on the web advert |
webAdvertSummary | Short summary for listings |
datePosted | Date the job was published |
closingDate | Application deadline |
Compensation
| Field | Description |
|---|---|
payLabel | Display label (e.g., "Competitive") |
salaryFrom | Minimum salary |
salaryTo | Maximum salary |
salaryCurrency | Currency code |
salaryPer | Pay period (annum, day, hour) |
bonusAmount | Bonus value |
bonusType | Bonus type |
Location
| Field | Description |
|---|---|
country | Country name |
county | County/state |
city | City |
postcode | Postal/zip code |
latitude | GPS latitude |
longitude | GPS longitude |
isRemote | Remote work flag |
Recruiter
| Field | Description |
|---|---|
recruiterName | Recruiter's full name |
recruiterEmail | Recruiter's email |
recruiterPhone | Recruiter's phone number |
recruiterLinkedIn | Recruiter's LinkedIn profile URL |
recruiterImage | Recruiter's profile photo URL |
Web Advert Content
| Field | Description |
|---|---|
mainResponsibilities | Key responsibilities (HTML) |
whatsOnOffer | Benefits and package (HTML) |
coreSkills | Required skills (HTML) |
recruitmentProcess | Process description (HTML) |
whatWillYouLearn | Learning and development (HTML) |
keyLanguages | Language requirements (HTML) |
Other
| Field | Description |
|---|---|
applicationUrl | External application link |
companyName | Hiring company name |
companyDescription | Company description |
bannerImage | Banner image URL |
detailImage | Detail image URL |
languageSpecs | Language specifications |
TIP
If you need additional fields beyond these, contact Recruitly support — custom field extensions are available.
Example: Custom WP_Query
php
$jobs = new WP_Query([
'post_type' => 'job',
'tax_query' => [
[
'taxonomy' => 'jobcity',
'field' => 'slug',
'terms' => 'london',
],
],
'meta_query' => [
[
'key' => 'jobType',
'value' => 'Permanent',
'compare' => '=',
],
],
'posts_per_page' => 10,
]);
while ($jobs->have_posts()) {
$jobs->the_post();
$salary = get_post_meta(get_the_ID(), 'payLabel', true);
$city = get_post_meta(get_the_ID(), 'city', true);
// render your job card
}
wp_reset_postdata();Page Builders & Advanced Display
Because Recruitly jobs are a standard WordPress custom post type, you're not limited to shortcodes or PHP templates. Any page builder or plugin that supports custom post types can display your jobs with full design control.
Recommended Tools
Elementor Pro — Posts Widget
Elementor Pro's built-in Posts Widget can query and display your job post type directly. Design every aspect of the job card visually — layout, typography, colors, hover effects — without writing code.
Set the widget's query source to the job post type and use Elementor's dynamic tags to pull in any post meta field (salary, location, recruiter, etc.).
JetSmartFilters (by Crocoblock)
JetSmartFilters adds advanced filtering to any listing. Build search-and-filter UIs that let visitors narrow jobs by city, sector, salary range, job type, or any taxonomy/meta field.
Pair it with Elementor's Posts Widget or JetEngine's Listing Grid for a fully interactive job board with live filtering.
Custom Skin Plugin
For deep template-level control over how each job card renders, the Custom Skin Plugin lets you design card templates visually in Elementor and apply them to your listings.
Why This Matters
With shortcodes, you get a job board that works. With the custom post type approach and page builders, you get a job board that looks and behaves exactly like the rest of your site — same design system, same interactions, fully branded. This is the level of flexibility that sets Recruitly's WordPress integration apart.
JetEngine
If you're already in the Crocoblock ecosystem, JetEngine is another powerful option. It's a full custom post type and custom fields manager that can query, display, and relate your Recruitly job posts using its Listing Grid, dynamic visibility, and relations features.