MainStWebGuy
MainStWebGuy

Reputation: 31

Schema.org: Multiple Locations On Single Page?

I'm building a site who is a general contractor in our area and he does work in multiple cities. I list some of the cities they work in on a couple of pages and I was wondering if I can markup multiple cities on the same page, even if he doesn't have an address in those cities.

I have looked into the markup for the containedIn and GeoShape, but I can't find any definitive answers/examples of how it should be implemented (for use with a service area radius from his local address).

Has anyone got any clues as to the best route on this?

Upvotes: 2

Views: 2743

Answers (1)

ajax
ajax

Reputation: 1906

OK, let's look this way.

You have an _organization which _offers some _service in particular region (cities).

As http://schema.org/Product description says

A product is anything that is made available for sale—for example, a pair of shoes, a concert ticket, or a car. Commodity services, like haircuts, can also be represented using this type.

Which means we can use this type for marking up your service. And we can use http://schema.org/Offer for particular offers (== in particular cities). Well, http://schema.org/Offer has two properties that do what you want:

availableAtOrFrom - Place - The place(s) from which the offer can be obtained (e.g. store locations).

and

eligibleRegion - GeoShape or Text - The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is valid.

Use whichever suits best your use case.

Example:

<div itemscope itemtype="http://schema.org/Organization">
  <span itemprop="name">Cleaning Organization</span>

Contact Details:
  <div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
    Main address:
      <span itemprop="streetAddress">38 avenue de l'Opera</span>
      <span itemprop="postalCode">F-75002</span>
      <span itemprop="addressLocality">Paris, France</span>
    ,
  </div>

  <div itemprop="makesOffer" itemscope itemtype="http://schema.org/Offer">
    <div itemprop="itemOffered" itemscope itemtype="http://schema.org/Product">
        <span itemprop="name">Cleaning Service</span>
    </div>

    <div itemprop="availableAtOrFrom" itemscope itemtype="http://schema.org/City">
        <span itemprop="name">Beautiful city 1</span>
    </div>

    <div itemprop="availableAtOrFrom" itemscope itemtype="http://schema.org/City">
        <span itemprop="name">Beautiful city 2</span>
    </div>
  </div>
</div>

Upvotes: 1

Related Questions