Job Openings List Widget
Show your vacancies on any page as a tidy careers list: roles grouped by department, each with location, contract type, salary, how long ago it was posted, a New badge for fresh roles and an Apply button. Seven or more roles add department, location and type filters.
Live preview
Under the widget on your page: Powered by A2Z Tools
Embed code
<iframe src="https://a2z.tools/embed/w/job-openings-list" title="Job Openings List by A2Z Tools" width="100%" height="1142" style="border:0;width:100%" loading="lazy" allow="clipboard-write"></iframe>
A plain iframe. Works everywhere, including site builders that strip scripts. Adjust height if your content needs more room.
<div data-a2z-widget="job-openings-list" data-height="1142"></div> <script async src="https://a2z.tools/embed.js"></script>
Adds a small script (what it does) that sizes the widget to fit its content, loads it lazily and keeps it isolated from your page's CSS.
Works with
How it works
Each role is one line: title, location, type such as Full-time or Part-time, salary text, the apply link and the date it was posted in YYYY-MM-DD form, with ## lines naming departments. The apply link may be an https page on your careers site or job board, or a mailto: address with a subject. The New badge compares the posting date with the visitor's calendar date: a role is new while fewer than 14 days have passed, so posted on 18 September it is new up to and including 1 October and not on 2 October; a date in the future is never new. Recent dates read as Posted today, Posted yesterday or Posted 5 days ago, and anything older than 30 days shows the date itself. From seven roles upward, chip groups for department, location and type appear (a group only when it has two or more values); chips combine, so Bristol plus Part-time shows only part-time Bristol roles, and the count is announced politely.
Method
- Line: title | location | type | salary | https or mailto: apply link | posted YYYY-MM-DD ; "## Department" starts a group
- age = (today - posted) in whole calendar days; New when 0 <= age < 14
- Posted text: 0 -> today, 1 -> yesterday, 2-30 -> N days ago, otherwise the formatted date
- Filters (7+ roles): department AND location AND type, each '' = any; a group shows only with 2+ distinct values
Worked examples
New badge boundary
Inputs: posted 2026-09-18; visitor's date 2026-10-01
Result: New, Posted 13 days ago
13 whole days have passed, fewer than 14.
No longer new
Inputs: posted 2026-09-17; visitor's date 2026-10-01
Result: No badge, Posted 14 days ago
14 days is the cut-off.
Combined filters
Inputs: Sample list of 7 roles; Location Bristol + Type Part-time
Result: 2 of 7 roles match (Weekend Barista, Warehouse and Dispatch Assistant)
Chips in different groups are combined with AND.
Limitations
- Adds no JobPosting structured data; job pages on your own site must carry it for Google for Jobs.
- "New" uses the visitor's calendar date, so around midnight two visitors in distant time zones can see different badges.
- No application form, search box or pagination - it is a list of links, sized for up to a few dozen roles.
Where publishers use it
- A coffee chain or restaurant group hiring baristas and kitchen staff across several sites
- A dental group or care provider listing clinical and admin vacancies by location
- A small agency or startup whose careers page lives on Webflow, Wix or Squarespace
- A charity listing volunteer and paid roles on its Get involved page
- A recruitment microsite that links each role to the full advert on an applicant tracking system
Questions
Will these roles appear in Google for Jobs?
Not from this widget, and no widget can do it for you. Google's job posting guidelines ask for JobPosting structured data on the most detailed leaf page possible - the page for one job - and say not to add it to pages that present a list of jobs. Content inside an iframe is also attributed to the frame, not your page. So keep a page per role on your own site with JobPosting JSON-LD (title, description, datePosted, hiringOrganization and jobLocation are required) and point each Apply button at it.
How is the New badge decided?
By whole calendar days between the posting date and the visitor's date: a role posted 0 to 13 days ago is new, 14 days or more is not. Posted 18 September 2026 shows New until 1 October and drops it on 2 October. Leave the date out and the role never shows New and no posted line appears.
When do the filter chips appear?
With seven or more roles. A chip group appears only when its column has at least two different values - if every role is Full-time there is no Type group. Chips in different groups combine, and All in a group clears it. The number of matching roles is announced to screen readers after each change.
Can applicants apply by email?
Yes. Put a mailto: link in the apply column, for example mailto:[email protected]?subject=Barista%20Bristol, and the Apply button opens the applicant's mail app with that subject. Links other than https, http or mailto are dropped and listed in the builder preview.
How do I take a role down when it is filled?
Delete its line in the builder and update the embed code on your page. Also expire the role on its own page: Google's guidance is to set validThrough to a past date, remove the JobPosting markup or remove the page, otherwise filled jobs can linger in search.
What if there are no vacancies?
With an empty list the widget shows a friendly line - There are no open roles right now - or your own wording through the empty option, so the careers page never looks broken.
Sources
- Job posting (JobPosting) structured data - Google Search Central . Put structured data on the most detailed leaf page possible, not on pages that list jobs; required properties; expire roles with validThrough or by removing markup. Checked 2026-10-01.
Cite or recommend this tool
If you reference this tool in an article, course or documentation, these formats are ready to copy. They are optional - nothing is added to your site unless you paste it.
A2Z Tools Job Openings List https://a2z.tools/embed/job-openings-list
<a href="https://a2z.tools/embed/job-openings-list">A2Z Tools Job Openings List</a>
[A2Z Tools Job Openings List](https://a2z.tools/embed/job-openings-list)
Job Openings List by A2Z Tools - https://a2z.tools/embed/job-openings-list
Related widgets
-
Staff profiles with photo or initials, role, short bio and an email or LinkedIn button, grouped by department.
-
A 'Trusted by' grid of client logos with text fallbacks, grayscale-to-colour and an optional pausable row.
-
Accessible FAQ accordion with search, expand-all, numbering and a copy-as-text button.
-
A digital business card with call, email, website and directions buttons plus a .vcf contact download.
-
A giving card with suggested amounts, an optional monthly switch and a Donate link to your own page.
-
Large Call, Text, Email, WhatsApp and custom-link tap targets in a stack, row or pill bar.