Skip to content

[5.4] [Schema.org] Hybrid job postings emit jobLocationType TELECOMMUTE without required physical jobLocation #48293

Description

@Otto-Deviant1904

Summary

The JobPosting schemaorg plugin maps a hybrid job to jobLocationType: "TELECOMMUTE":

https://github.com/joomla/joomla-cms/blob/5.4-dev/plugins/schemaorg/jobposting/src/Extension/JobPosting.phpcase 'Hybrid': ['jobLocationType'] = 'TELECOMMUTE';

Per Google's Job Posting structured-data requirements, a hybrid job must be marked TELECOMMUTE combined with the physical jobLocation. The comment in the plugin itself states this. However, the form (plugins/schemaorg/jobposting/forms/schemaorg.xml) does not require jobLocation when jobLocationType: Hybrid is selected (the jobLocation subform has no showon/required rule tied to it), and the plugin does not validate it either.

Steps to reproduce

  1. Enable the Schemaorg JobPosting plugin.
  2. Edit an article, choose schema type JobPosting, set Job Location Type = Hybrid.
  3. Leave the physical jobLocation fields empty.
  4. View page source — JSON-LD contains "jobLocationType": "TELECOMMUTE" with no jobLocation.

Expected result

Either:

  • jobLocationType is omitted when Hybrid is selected but no jobLocation was provided (fall back to plain JobPosting), or
  • The form requires jobLocation input when Hybrid is chosen.

Actual result

Invalid combination per Google's rich-results requirements; the job posting is ineligible for Google Jobs rich results.

Additional information

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions