記事の詳細
Googleの求人情報<Google for jobs>を載せるための構造化データはこれ!
Googleで求人情報をエンリッチリザルト(検索してすぐに出てくるGoogleの検索画面に表示されます)に出すことができるようになったようです。
今回のブログの見出しはコチラです!
必須なのは求人情報の構造化データ
構造化データについてはこちら。
いよいよ構造化データを捨て置けなくなってきましたね!
サードパーティの求人サイト(リクルートやエン・ジャパンといった他の第三者的求人サイト)を利用して、Googleに統合することも可能だそうです。サードパーティの求人サイトに投稿してひと手間かけて、Googleのエンリッチリザルトに表示する、ってことでしょうか。サードパーティの求人サイトに構造化データがそのまま埋め込まれているのか、はたまた自動的に吸い上げてくれるのか……。
いずれにせよ、求人募集をしたい企業様は、採用ページ等の求人情報に構造化データを入れておくべきなのでしょう。
日本にも対応。2019/1/25までに対応していたアジアの国は8カ国
バングラディシュ、香港、インド、インドネシア、パキスタン、シンガポール、スリランカ、タイの8カ国でGoogleの求人情報のエンリッチリザルトは対応していました。ヨーロッパではスペインとイギリスだけだったようです。さすがに南米北米はばっちりカバー。
検索結果の表示はどんどん更新されていくようで、構造化データをベースに組み替えられていくようです。
求人情報の構造化データサンプル
以下、その構造化データとなります。JSON-LD コードを使用しています。求人情報の書かれているページに挿入しましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
<script type="application/ld+json"> { "@context" : "https://schema.org/",/** 変更しない(形式言語規格) **/ "@type" : "JobPosting",/** 変更しない(求人情報の構造化データです、という宣言) **/ "title" : "募集職種",/** エンジニア、営業、といった職種 **/ "description" : "<p>ここに募集する人材の詳細</p>",/** 募集する人材の詳細を書きます。有効タグは<br><p><ul><li><h1>~<h5><strong><em>など **/ "identifier": { "@type": "PropertyValue",/** 変更しない(どこ-場所が募集しているのか、という宣言) **/ "name": "企業名",/**企業の名前 **/ "value": "1234567" /**企業コード(なくてもOK) **/ }, "datePosted" : "2017-01-18",/**投稿日(必須) **/ "validThrough" : "2017-03-18T00:00",/**有効期限(必須) **/ "employmentType" : "CONTRACTOR",/**雇用形態。「FULL_TIME|フルタイム」「PART_TIME|パートタイム」「CONTRACTOR|契約社員」「TEMPORARY|一時的社員(派遣社員)」「INTERN|インターン」「VOLUNTEER|ボランティア」「PER_DIEM|日雇い」「OTHER|その他」から選べます。複数も可。(必須) **/ "hiringOrganization" : { /** 雇用組織 **/ "@type" : "Organization",/** 変更しない(組織情報です、という宣言) **/ "name" : "企業名",/**企業の名前 **/ "sameAs" : "http://www.sample.com",/** 企業のWEBサイトURL **/ "logo" : "http://www.example.com/images/logo.png" /** 企業のロゴURL **/ }, "jobLocation": { "@type": "Place",/** 変更しない(組織はここにあります、という宣言) **/ "address": { "@type": "PostalAddress",/** 変更しない(組織のアドレスはここです、という宣言) **/ "streetAddress": "中央3-12-3相模原商工会館本館4F",/** 番地以下 **/ "addressLocality": "相模原市中央区",/** 市区町村 **/ "addressRegion": "神奈川県",/** 県 **/ "postalCode": "252-0239",/** 郵便番号 **/ "addressCountry": "JP" /** 国 **/ } }, "baseSalary": { "@type": "MonetaryAmount", /** 金額 **/ "currency": "JPY",/** 国のお金の単位。日本はJPY **/ "value": { "@type": "QuantitativeValue",/** 変更しない(このくらい払いますよ、という宣言) **/ "value": 200.000,/** お金の単位。カンマは使えません。ドットで **/ "unitText": "MONTH"/** 時間の単位。「HOUR」「DAY」「WEEK」「MONTH」「YEAR」で選べます。日本だと基本はMONTHですね **/ } } } </script> |
説明がないほうはこちら。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
<script type="application/ld+json"> { "@context" : "https://schema.org/", "@type" : "JobPosting", "title" : "募集職種", "description" : "<p>ここに募集する人材の詳細</p>", "identifier": { "@type": "PropertyValue", "name": "企業名", "value": "1234567" }, "datePosted" : "2017-01-18", "validThrough" : "2017-03-18T00:00", "employmentType" : "CONTRACTOR", "hiringOrganization" : { "@type" : "Organization", "name" : "企業名", "sameAs" : "http://www.sample.com", "logo" : "http://www.example.com/images/logo.png" }, "jobLocation": { "@type": "Place", "address": { "@type": "PostalAddress", "streetAddress": "中央3-12-3相模原商工会館本館4F", "addressLocality": "相模原市中央区", "addressRegion": "神奈川県", "postalCode": "252-0239", "addressCountry": "JP" } }, "baseSalary": { "@type": "MonetaryAmount", "currency": "JPY", "value": { "@type": "QuantitativeValue", "value": 200.000, "unitText": "MONTH" } } } </script> |
求人情報の構造化データの記載ポイントと応用
必須プロパティは以下の通り
datePosted
求人情報投稿日。2019-01-25といったように、ハイフンでつないだ表記にします。時間まで指定したい場合は「2019-01-25T00:00」のように記載します。TはTimeのTですね。
description
求人について詳細に説明します。募集する職務、必要、あるいは歓迎資格、スキル、業務時間、学歴に関する要件、経験に関する要件など、求人情報を出すときに必要なものを書いていきます。
基本的にHTML式でOKです。以下のものは使えるようです。
- br
- p
- ul
- li
- h1~h5
- strong
- em
文字レベルの形式タグなら利用可能のようです。
hiringOrganization
募集している企業のことを書きます。所在地は含めないように!
jobLocation
従業員となる人の勤務先を記載します。
複数ある場合は、jobLocationプロパティを数に応じて追記します。
※リモートワークの場合は必須でない場合があります(後述)
title
職務の名称を書きます。デザイナー、とか、エンジニア、とか、営業、とか、事務、とかですね。
その他のことを記載すると非推奨となります。簡潔で読みやすいほうがリザルトされやすいようです。
「!」「*」「★」といった装飾はスパム行為とみなされます。特殊文字は多用しないようにしましょう。
validThrough
求人情報に有効期限がある場合必須事項となります。記載はdatePostedと同じ。
求人情報に有効期限がない場合は記載不必要です。また、求人情報が期限切れになる前に採用が決まった場合は、求人情報を排除する必要があります。もちろん構造化データも。
推奨プロパティは以下の通り
applicantLocationRequirements
在宅OKですよ! という場合、どこにいる人ならOKなのか、ということを記載するプロパティ。
在宅やその他ノマド的に会社に出勤せず仕事をすることを海外では「リモートワーク」といいますが、こんなプロパティまでそろっているなんて、海外では「自由にどこでも仕事ができる」環境が整っているんですねぇ……。
在宅ワークは主婦さんなどにはとてもありがたーいシステム。積極的に利用していきたいものですね。
記載はこんな感じ。
日本国内どこからでもリモートワークOKの場合は
1 2 3 4 5 |
"applicantLocationRequirements": { "@type": "Country", "name": "JP" }, "jobLocationType": "TELECOMMUTE" |
事務所か日本国内からリモートワークかどちらかで勤務できます、という場合は
1 2 3 4 5 6 7 8 9 10 11 12 |
"jobLocation": { "@type": "Place", "address": { "@type": "PostalAddress", "streetAddress": "中央3-12-3相模原商工会館本館4F", "addressLocality": "相模原市中央区", "addressRegion": "神奈川県", "postalCode": "252-0239", "addressCountry": "JP" } }, "jobLocationType": "TELECOMMUTE" |
神奈川県か東京からリモートワーク可能、あるいは相模原の事務所で勤務可能、という場合は
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
"jobLocation": { "@type": "Place", "address": { "@type": "PostalAddress", "addressLocality": "相模原市", "addressRegion": "神奈川県", "postalCode": "252-0239", "addressCountry": "JP" } }, "applicantLocationRequirements": [{ "@type": "State", "name": "神奈川県, JP" },{ "@type": "State", "name": "東京, JP" }], "jobLocationType": "TELECOMMUTE" |
jobLocationTypeをTELECOMMUTEにする場合、「いやーごめんごめん週1で出勤のお願いするワァ」みたいなことはNGです。この場合はリモートワークの宣言であるTELECOMMUTEではなくて、場所を記載していきます。
baseSalary
概算額ではない実際の基本給を提示します。
unitTextの単位は以下の通り。
- “HOUR”(時給)
- “DAY”(日給)
- “WEEK”(週給)
- “MONTH”(月給)
- “YEAR”(年棒)
また、給与の範囲がある場合は、以下のように記載します。
1 2 3 4 5 6 7 8 9 10 |
"baseSalary": { "@type": "MonetaryAmount", "currency": "JPY", "value": { "@type": "QuantitativeValue", "minValue": 160.000, "maxValue": 300.000, "unitText": "MONTH" } } |
employmentType
選べるプロパティは以下の通り。
- “FULL_TIME”(フルタイム)
- “PART_TIME”(パートタイム)
- “CONTRACTOR”(契約社員)
- “TEMPORARY”(一時社員、派遣社員)
- “INTERN”(インターン)
- “VOLUNTEER”(ボランティア)
- “PER_DIEM”(日雇い)
- “OTHER”(その他)
これとても難しいお話で、日本でいうところの正規社員、正社員は、英語で言うと「Regular employee」「Full-time employee」「Permanent employee」といいます。つまり上記だと「FULL_TIME」しかないのです。
そして、契約社員が「Contract employee」、派遣社員は「Temporary(Temp) employee」です。
なので、正社員の場合は
“employmentType”: [“FULL_TIME”]
常勤の契約社員は
“employmentType”: [“FULL_TIME”, “CONTRACTOR”]
といったように、なんとなくのニュアンスで乗り切ったほうがいいかもしれません。ディスクリプションに日本語で明記しましょう。ところで海外はインターンやボランティアも求人情報で載せていいんですか? すごい……。こんなところで世界が見えてしまうとは思わなかった……。
構造化データのチェックとそのリザルトへの反映
構造化データのチェックはこちらから。
実は、構造化データを記載しても検索結果に表示されるとは限りません。正しくマークアップしても、Googleのアルゴリズムが「これなんか内容違くない?」とか「いやごめんよくわかんない」とか「コンテンツないやん」とか、あるいは「いやーこのユーザーにはいらんでしょうこの内容は」とか判断すると、出てこないのです。
この求人情報は求人情報が記載されているページのみに記載するように、ガイドラインに記載があります。
求人情報の掲載を終える場合
直ちに構造化データを削除するとともに、採用ページなども削除しましょう。ページのリクエストに対して404または410ステータス コードが返されるようになるのが理想です。構造化データももちろん削除します。
日本に対応したとはいえ、まだまだ使い勝手は悪い状態です。文化の違いを埋めるのは大変ですね。
何か情報が更新され次第、こちらに追記します。