Skip to content

WP Career Board 1.2.0 - single-page job form, salary slider, deadline reminders, bulk CSV export

Choose a tag to compare

@vapvarun vapvarun released this 17 May 11:53
· 225 commits to master since this release

First public release after 1.0.x. Adds the single-page job form, bulk applicant CSV export, salary range slider, application deadline reminders, guest resume uploads, automatic featured-listing expiry, a rebuilt admin Edit Application screen, modular widgets, rich RSS, WPML / Polylang config, page-builder compatibility for every shortcode, REST envelope cleanup, mobile reading-order fixes, and the bug-fix and BuddyPress-integration roll-up that was queued behind 1.1.x.

  • New - Single-page job posting form. Drop a one-screen form into any sidebar, modal, partner page, or page builder via the new "Job Form (Single-Page)" block or [wcb_job_form_simple] shortcode. Sits alongside the existing multi-step wizard.
  • New - Bulk applicant CSV export. Select applications in the admin list table and download a UTF-8 spreadsheet with applicant name, email, job, status, applied date, cover letter, and resume URL.
  • New - Salary range slider on the Find Jobs page so candidates can filter by minimum and maximum salary live, with chip pills showing the active range.
  • New - Application deadline reminder emails. Candidates who saved a job but have not applied get a 3-day and 1-day-out reminder automatically via daily cron.
  • New - Resume upload on the apply form for guests. The previous build only accepted resumes from logged-in candidates. PDF, DOC, and DOCX, with configurable required-vs-optional and size cap up to 20 MB.
  • New - Featured listings now expire automatically after a configurable duration (default 30 days), setting up Featured as a real time-bound paid SKU.
  • New - Rebuilt Edit Application admin screen. Applicant card with avatar and contact info, cover letter, resume preview with Open / Download, status changer, quick-action buttons (Shortlist / Mark Hired / Reject / Message), and full status history. Replaces the previously empty native post-edit screen.
  • New - Modular widget system. Every component on the rebuilt application screen also works as a [wcb_widget id="..."] shortcode on any page.
  • New - Rich RSS at /jobs/feed/ with company, salary (currency, period, min, max), location, type, category, tags, experience, deadline, and apply URL. Works in any RSS reader, IFTTT, or Zapier flow.
  • New - WPML / Polylang config so multilingual sites can translate job board CPTs, taxonomies, and key strings out of the box.
  • New - Page-builder compatibility. Every shortcode ([wcb_job_listings], [wcb_job_form], [wcb_job_form_simple], etc.) now accepts attributes and forwards them to the block, so Elementor, Divi, Bricks, Beaver Builder, and classic editor users can scope blocks (e.g. [wcb_job_listings boardId="42" perPage="6"]).
  • New - boardId and metaFilter attributes on the Job Listings block. Render a board-scoped or custom-relationship-scoped listing anywhere without writing custom code.
  • New - REST ?meta_= query support for the jobs endpoint. Any wcb* namespaced meta key is allowed by default; custom meta opts in via the wcb_jobs_allowed_meta_filters filter.
  • New - Custom-field flexibility on every form. Declarative filters (wcb_job_form_fields, wcb_company_form_fields, wcb_candidate_form_fields, wcb_application_form_fields_groups) take a single field-group schema. Add custom fields with one add_filter call.
  • New - Local CI runner via npm run ci. Runs PHP lint, WPCS, PHPStan, and size-limit on the dev workstation before every push.
  • Improve - Site-wide design token system extended with status color triplets, transition tokens, avatar size scale, and theme-aware primary tints. All blocks now token-driven so Reign and BuddyX integrators override one place to restyle the whole plugin.
  • Improve - REST API list endpoints now return a structured envelope with total, pages, and has_more. Legacy X-WCB-Total and X-WCB-TotalPages response headers stay populated for one release cycle for back-compat.
  • Improve - Mobile single-job page reading order corrected. "About This Role" now appears first on phones, previously sat below Job Details / Share / Company. Apply panel z-index lifted above theme toggles so light/dark switchers no longer overlap form fields.
  • Improve - Setup wizard now centers between the admin sidebar and the right edge on wide viewports. Was previously narrow and left-aligned.
  • Improve - Active filter pills on Find Jobs now sit with a comfortable bottom margin above the job cards. Pre-1.2.0 the pill row was flush against the cards.
  • Improve - Company cards on the Companies archive now align their meta chips at the same y-position across the grid regardless of how long each tagline is.
  • Improve - Plugin Check (PCP) and WPCS gates added to GitHub Actions CI alongside the existing PHP lint and PHPStan jobs.
  • Improve - Custom database tables now declare ENGINE=InnoDB explicitly so the plugin works on hosts whose MySQL default storage engine is still MyISAM.
  • Improve - Daily cron now schedules deadline reminders and featured-listing expiry sweeps automatically; deactivation cleanly clears scheduled events.
  • Improve - Filter-panel chevron icons on Find Jobs and Companies now route through the Lucide icon system instead of hand-rolled inline SVGs, so they pick up the same stroke and color tokens as the rest of the UI.
  • Fix - Test Email button on the Emails settings tab now succeeds even when the template is toggled off. Disabled templates were short-circuiting in send() so the row-delta check returned {sent:false} and the JS button painted "Failed". A new AbstractEmail::test_send() public bridge bypasses is_enabled() and marks the log row sent_test so admin previews do not pollute production delivery metrics.
  • Fix - Single job page now lists the Apply Email and routes Apply Now to the external Apply URL when those fields are set on the job.
  • Fix - Boards picker in the job form now hides BuddyPress group boards the employer is not a member of. Pro delivers the filtered list via the new wcb_board_options_for_employer hook.
  • Fix - Buy Credits link in the job form is suppressed when the credit purchase URL is not configured, so the button no longer points at the current page.
  • Fix - Pre-publish credit message ("Posting deducts N credits. Balance after: X (currently Y).") now reads its templates from translated PHP strings, with cost and balance interpolated live from the Wbcom Credits SDK.
  • Fix - Uninstall.php now uses $wpdb->prepare('DROP TABLE IF EXISTS %i', $table) with the WP 6.2+ identifier placeholder.
  • Fix - Removed all manage_options capability fallbacks from REST permission checks. Abilities API is now the single permission source.
  • Fix - Per-page parameter on the jobs list endpoint is now clamped to 100 in the handler. The schema-only maximum was previously a warning, not an enforced cap.
  • Fix - posts_per_page = -1 removed from frontend job query paths (replaced with bounded queries).
  • Fix - BuddyPress group Jobs tab now correctly filters jobs to that group's board. The previous defaultBoardId block attribute was undeclared and silently dropped.
  • Fix - Visual alignment issues on the single-page job form (salary row breaking awkwardly, remote-deadline pair misaligning, button placement).
  • Dev - New filter wcb_board_options_for_employer( array $options, int $user_id ) lets Pro and integrators restrict the job-form Boards picker.
  • Dev - New filter wcb_page_needs_frontend_assets( bool $needs ) lets contexts that render WCB blocks outside post_content (BuddyPress profile and group tabs, page builders that lazy-render) opt into the shared frontend stylesheets so primitives like .wcb-hidden resolve.
  • Compat - Aligned with WP Career Board Pro 1.2.0. Install both updates together.

Companion release: WP Career Board Pro 1.2.0 ships in lockstep — https://github.com/vapvarun/wp-career-board-pro/releases/tag/1.2.0
Install both updates together.