- Escape URLs in two sprintf href templates with esc_url() (#2996)
- Validate attachment ownership when reusing a company logo by ID (#2995)
- Honor restrictive filter_post_status=publish for logged-out visitors (#2994)
Apply the View Job Capability to WordPress search and oEmbed output.
Apply the View Job Capability to the REST search endpoint (#2984)
Fail closed correctly when an author filter resolves to no valid IDs (#2983)
Apply the View Job Capability to job listing feeds (#2982)
Enforce listing submission limit when publishing a previewed listing (#2981)
Restore PHP 8.4 test coverage — modernise bootstrap error handler (#2970)
Fix: Promote button data-href attribute now correctly quoted in job listings table.
Fix: Promote URL in inline script now escaped with esc_js().
Author filter follow-up: centralize parsing, close AJAX array bypass (#2958)
Add square-format hint and configurable max size for company logo uploads (#2957)
“Remove “See what’s new in 2.3″ from Job Statistics Banner”
New: The [jobs] shortcode now supports an author attribute to filter listings by user ID (e.g. [jobs author="42"] or [jobs author="1,2,3"])
Fix Job Dashboard actions menu on Safari (#2947)
Harden submit-form session cookies (#2945)
Fixes a REST API information disclosure where the body, excerpt, and existence of listings restricted by view-capability were exposed to denied viewers. Restricted listings now return 404 indistinguishable from a missing post, including HEAD probes and listings that are also password-protected.
Fixes a data-loss bug where editors opening a password-protected listing in the block editor would save empty meta values (location, company name, application target).
Fixes a series of information disclosure issues affecting password-protected and capability-restricted job listings.
Harden stats AJAX endpoint input validation and rate limiting (#2938)
Company logo uploads now accept WebP images by default
New filter job_manager_company_logo_allowed_mime_types allows customizing allowed file types for the company logo field
The salary currency field on the job submission form now correctly reflects the configured default currency in its placeholder and helper text.
Filled job listings are no longer exposed via the REST API.
Job categories are now included in the job RSS feed XML output.
Added featured=true query parameter support to the job RSS feed to allow filtering by featured listings only.
Fixed PHP 8+ undefined array key warning in the widget caching methods.
Updated Twitter profile links to use the new x.com domain and updated related labels to “X / Twitter” to reflect the platform rebrand.
Added a Settings link to the plugin action links on the Plugins screen for quicker access to plugin settings.
Fix structured data output for password-protected listings (#2913)
Update actions/cache to use v4 (#2896)
Fix job dashboard actions menu in Safari
Fix PHP 8.3 support
Remove support for Internet Explorer 11
Fix WordPress 6.6 compatibility
Fix classic editor support for job listings
New!
Add Google reCAPTCHA v3 support
Improvements:
Change: Redesign job dashboard
Change: Allow job duplication in the job dashboard for any job
Security: Don’t return unpublished jobs only in the promote job endpoint
Fix renewals for WordPress.com licenses
Fix issues with rich e-mails on some e-mail providers
Fix e-mail styling in some e-mail clients
Fix expiry date not showing up in backend editor
Fix: Add fallback to date format in case it’s missing
Fix: Prevent past dates from being used in the datepicker
For developers:
Add filter to disable promoted jobs
Add placeholder options to select field
Job dashboard template has been rewritten
Fix issue with rich e-mails on some e-mail providers (#2753)
Fix: ‘featured_first’ argument now works when ‘show_filters’ is set to false.
Improve checkbox and radio inputs for styled forms
New:
Add new [jobs] shortcode parameter, featured_first so you can ensure featured listings always show up on top.
Add support for user sessions without a full account (used in the Job Alerts extension)
Changes:
Include plain text alternative for rich text e-mails for better compatibility
Store previous license when plugin is deactivated for easier reactivation later.
Update design for settings and marketplace pages
Fixes:
Fix custom role permission issues (#2673)
Fix RSS, Reset, Add Alert links not showing on search page without a keyword
Improve PHP 8 support
Fix numeric settings field issues
Improve e-mail formatting and encoding, remove extra whitespace
Add file type validation and error message to company logo upload
Fix cache issue when marking jobs as filled/not filled via bulk actions
Do not emit warning when user with insufficient access to Job Manager menu tries to access wp-admin
Fix link to extensions page (#2650)
Update Twitter to the new X logo
Enhancement: Improve settings descriptions (#2639)
Enhancement: Add directApply in Google job schema (#2635)
Enhancement: Add ‘Don’t show this again’ link to dismiss promote job modal in the editor (#2632)
Enhancement: Add landing pages for Applications and Resumes extensions (#2621)
Fix: Align actions in notices in the center (#2637)
Fix: Safeguard array in WP_Job_Manager_Settings::input_capabilities (#2631)
Fix: Escape menu titles and various admin labels (#2630)
Fix: Incorrectly duplicated string in settings (#2628)
Fix: Add array initialization to avoid warning (#2619)
Fix: Do not check for plugin updates when there are no plugins (#2605)
Change: Reorganize administration menu (#2621)
Change: Update naming from Add-ons to Extensions, Marketplace (#2621)
Fix: Fix date pickers for dynamically added resume sections
Fix: Only load resume scripts on relevant pages
Tweak: Scroll to top of resume list after page change
Fix: Fix embeds for resumes
Tweak: Only show skills if skills are enabled in the settings
Fix: Fix my-alerts.php template HTML
Fix: Make ‘Add alert’ link relative
Fix: Fix redirection after actions on My alerts page
Fix: Fix my-alerts.php template HTML
Fix: Make ‘Add alert’ link relative
Fix: Fix redirection after actions on My alerts page