Skip to content

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:

TaxonomySlugExample Values
CitiesjobcityLondon, Manchester, New York
CountiesjobcountyGreater London, California
CountriesjobcountryUnited Kingdom, United States
Job TypesjobtypePermanent, Contract, Temporary
SectorsjobsectorIT, Finance, Healthcare
TagsjobtagRemote, Urgent, Featured
LanguagesjoblanguageEnglish, French, German
IndustriesjobindustryTechnology, Banking, Pharma
LocationsjoblocationCity 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

FieldDescription
jobIdRecruitly internal job ID
uniqueIdUnique identifier
referenceJob reference code

Job Details

FieldDescription
jobTitleJob title
jobStatusCurrent status
jobTypeEmployment type
webAdvertTitleTitle used on the web advert
webAdvertSummaryShort summary for listings
datePostedDate the job was published
closingDateApplication deadline

Compensation

FieldDescription
payLabelDisplay label (e.g., "Competitive")
salaryFromMinimum salary
salaryToMaximum salary
salaryCurrencyCurrency code
salaryPerPay period (annum, day, hour)
bonusAmountBonus value
bonusTypeBonus type

Location

FieldDescription
countryCountry name
countyCounty/state
cityCity
postcodePostal/zip code
latitudeGPS latitude
longitudeGPS longitude
isRemoteRemote work flag

Recruiter

FieldDescription
recruiterNameRecruiter's full name
recruiterEmailRecruiter's email
recruiterPhoneRecruiter's phone number
recruiterLinkedInRecruiter's LinkedIn profile URL
recruiterImageRecruiter's profile photo URL

Web Advert Content

FieldDescription
mainResponsibilitiesKey responsibilities (HTML)
whatsOnOfferBenefits and package (HTML)
coreSkillsRequired skills (HTML)
recruitmentProcessProcess description (HTML)
whatWillYouLearnLearning and development (HTML)
keyLanguagesLanguage requirements (HTML)

Other

FieldDescription
applicationUrlExternal application link
companyNameHiring company name
companyDescriptionCompany description
bannerImageBanner image URL
detailImageDetail image URL
languageSpecsLanguage 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.

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.

Recruitly — Recruitment CRM for Agencies