構造化データJSON-LDの企業や求人、お店、ブログなどのテンプレート
制作するウェブサイトには、構造化データのJSON-LDが記述されることが多くなりました。 作業効率も兼ねて、JSON-LDのサンプルをまとめました。
JSON-LDを記述する時にお世話になるウェブサイト
JSON-LDを記述する時には下記のウェブサイトを頻繁に利用することになります。
Googleが提供している構造化テストツールで、エラー箇所も教えてくれます。
構造化データの解説やサンプルが提供されています。
構造化データの情報がまとめられているウェブサイトです。サンプルも豊富です。
Googleが推奨する以上の構造化データを実装する際のテストにお薦めです。
JSON-LDのサンプル
パンくずのJSON-LD
サンプルは3階層目にあるウェブページの構造化データになります。
2階層目の場合は、3階層目の構造化データを削除します。
データは全て必須となります。
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"item": {
"@id": "トップページのurl",
"name": "トップページ"
}
},
{
"@type": "ListItem",
"position": 2,
"item": {
"@id": "2階層目のurl",
"name": "2階層目の名称"
}
},
{
"@type": "ListItem",
"position": 3,
"item": {
"@id": "3階層目のurl",
"name": "3階層目の名称
}
}
]
}
</script>
企業情報のJSON-LD
企業のホームページで利用できるJSON-LDです。
海外のウェブサイトを見ると全ページに記載されていることもありますが、トップページや会社概要ページが良いと思います。
JSON-LD
<script type="application/ld+json">
{
"@context" : "https://schema.org",
"@type" : "Organization",
"name" : "企業名",
"founder":"創業者の名前",
"foundingDate":"2000-04-01", //設立日
"description" : "企業の概略",
"url" : "トップページのURL",
"logo": "ロゴ画像のURL",
"telephone" : "+81-00-0000-0000", //電話番号
"faxNumber": "+81-00-0000-0000", //FAX番号
"address": {
"@type": "PostalAddress",
"addressLocality": "新宿区",
"addressRegion": "東京都",
"postalCode": "160-0020",
"streetAddress": "5-10-13",
"addressCountry": "JP"
},
"contactPoint" :[
{ "@type" : "ContactPoint",
"telephone" : "+81-00-0000-0000",
"contactType" : "customer service"
}
]},
"sameAs":[ //関連サイトやSNS
"https://www.test.jp",
"https://www.facebook.com/test-co",
"https://twitter.com/test-co"
]
}
</script>
ウェブサイトのJSON-LD
海外の企業ウェブサイトを見ると「企業のJSON-LD」と「ウェブサイトのJSON-LD」のどちらか、または両方が記載されていることがあります。
JSON-LD
<script type="application/ld+json">
{
"@context":"http://schema.org",
"@type":"website",
"name":"サイト名",
"inLanguage":"jp", //ウェブサイトの言語
"publisher": {
"@type": "Organization",
"name": "ウェブサイトの運営会社",
"logo": {
"@type": "ImageObject",
"url": "ロゴ画像のURL"
}},
"copyrightYear":"2019-01-02T10:50:37+0000",//コピーライトの日付
"headline":"ページのタイトル",
"description":"現在表示されているページの概略",
"url":"現在表示されているページURL"
}
</script>
ニュースや記事のJSON-LD
サービスや商品に関する有益な情報や、報道記事などに利用されます。
社員や社長の雑記ブログの場合は、typeを「BlogPosting」にするのが良いでしょう。
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "Article",
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "トップページまたはニュースのインデックスページ"
},
"headline": "記事タイトルや見出し",
"alternativeHeadline": "リードや小見出し",
"description": "記事の概略",
"image": [
"記事の画像",
"記事の画像",
"記事の画像"
],
"datePublished": "2019-01-06T08:00:00+08:00", //記事の投稿日
"dateModified": "2019-01-07T08:20:00+08:00", //記事の更新日
"publisher": {
"@type": "Organization",
"name": "発行元の企業名",
"logo": {
"@type": "ImageObject",
"url": "ロゴ画像のURL"
}
},
"author": {
"@type": "Person",
"name": "記事を書いた人"
},
}
</script>
商品情報のJSON-LD
商品の情報や価格、レビューや点数、SKUや在庫状況などをマークアップできます。
流通や国際基準で使われる商品番号のISBNやGTINなども記述することもできます。
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "Product",
"name": "商品名",
"description": "商品の紹介",
"image": [
"商品画像",
"商品画像"
],
"sku": [ //商品のsku
"sku-blue-s",
"sku-blue-m",
"sku-blue-l"
],
"brand": {
"@type": "Thing",
"name": "企業名やブランド名"
},
"offers": {
"@type": "Offer",
"priceCurrency": "JPY",
"price": "5000",
"priceValidUntil": "2025-01-06", //価格の有効期限
"availability": "InStock", //InStock(在庫あり)OutOfStock(在庫なし)PreOrder(予約)
"url": "商品の販売URL"
},
"aggregateRating": { //商品の評価
"@type": "AggregateRating",
"ratingValue": "3.5", //平均点
"reviewCount": "11" //評価した人数
},
"review": [ //商品のレビュー
{
"@type": "Review",
"author": {
"@type": "Person",
"name": "レビュアーの名前",
"sameAs": "https://facebook.com/tanaka" //レビュアーのサイトやSNS
},
"datePublished": "2019-04-01", //レビューした日時
"description": "レビュー文章",
"reviewRating": {
"@type": "Rating",
"bestRating": "10", //最高得点
"worstRating": "1", //最低点
"ratingValue": "6" //評価した点数
}
},
{
"@type": "Review",
"author": {
"@type": "Person",
"name": "レビュアーの名前",
"sameAs": "https://facebook.com/suzuki" //レビュアーのサイトやSNS
},
"datePublished": "2019-07-22", //レビューした日時
"description": "レビュー文章",
"reviewRating": {
"@type": "Rating",
"bestRating": "10", //最高得点
"worstRating": "1", //最低点
"ratingValue": "4" //評価した点数
}
}
]
}
</script>
求人情報のJSON-LD
求人情報の構造化データで、Google for Jobsにも表示されるようになります。
リモートワーク可能のマークアップも追加されました。
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "JobPosting",
"title": "募集のタイトル",
"baseSalary" : {
"@type": "MonetaryAmount",
"currency": "JPY",
"value": {
"@type": "QuantitativeValue",
"unitText": "MONTH", //日給(HOUR)週休(WEEK)月給(MONTH)年収(YEAR)
"value": "240000", //金額
"minValue": 240000, //給料額に幅がある時。最小値
"maxvalue": 260000 ///給与額の最大値
}
},
"employmentType": "Full_time", //パート(PART_TIME)契約(CONTRACTOR)インターン(INTERN)
"datePosted": "2019-11-20", //求人掲載日
"validThrough": "2017-12-25", //募集終了日
"description": "仕事内容の説明", //
"jobLocation": { //勤務地 リモートのみの場合は削除可能
"@type": "Place",
"address": {
"@type": "PostalAddress",
"addressCountry": "JP",
"postalCode": "160-0020",
"addressRegion": "東京都",
"addressLocality": "新宿区",
"streetAddress": "3-15-5F"
}
},
"applicantLocationRequirements":{ //リモート勤務可能の場合
"@type": "Country",
"name": "Japan" //日本在住ならリモート勤務可能
},
"jobLocationType": "TELECOMMUTE", //求人がリモート可能であることを明記
"hiringOrganization" : { //募集している企業情報
"@type" : "Organization",
"name" : "企業名",
"url" : "ホームページURL"
}
}
</script>
リモートワークのみの企業も増えてきています。
勤務先が無いため「jobLocation」のデータは不要になります。
オフィス勤務、またはリモート勤務可能な場合は、jobLocationも通常通り記載します。
イベントのJSON-LD
イベントやセミナーなどの情報をマークアップすることができます。
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "Event",
"name": "イベントのタイトル",
"description": "イベントの概要",
"startDate": "2019-10-01T10:30", //開始時間
"endDate": "2019-01-01T08:00", //終了時間
"location": {
"@type": "Place",
"name": "イベント会場名",
"address": {
"@type": "PostalAddress",
"addressLocality": "新宿区",
"addressRegion": "東京都",
"postalCode": "160-0020",
"streetAddress": "5-10-13",
"addressCountry": "JP"
}
},
"image": [
"画像URL",
"画像URL",
"画像URL"
],
"offers": {
"@type": "Offer",
"url": "チケット購入先、または予約先のURL",
"priceCurrency": "JPY",
"price": "2000", //金額
"validFrom": "2018-02-20T10:00" //チケット販売日時
"availability": "InStock", // InStock(在庫あり)OutOfStock(在庫なし)PreOrder(予約)
},
"performer":[
{
"@type": "Person", //Person(個人)PerformingGroup(グループ)
"name": "出演者名",
"url":"出演者のウェブサイト"
},
{
"@type": "Person", //Person(個人)PerformingGroup(グループ)
"name": "出演者名"
}
]
}
</script>
お店(ローカルビジネス)のJSON-LD
ヘアサロンや雑貨屋、書店などの情報をマークアップできます。
Typeはより具体的なタイプを指定する事もできます。例えばヘアサロンの場合は「BeautySalon」など。下記URLの「More specific Type」に一覧リンク集があります。
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "LocalBusiness",
"name": "お店の名称",
"description": "お店の説明",
"telephone": "03-0000-0000", //電話番号
"url": "お店ホームページのURL",
"priceRange":"5000", //平均的な予算
"sameAs":[ //関連サイトやSNS
"https://www.facebook.com/test-co",
"https://twitter.com/test-co"
] ,
"image": [
"画像URL",
"画像URL",
"画像URL"
],
"address": {
"@type": "PostalAddress",
"addressCountry": "JP",
"postalCode": "160-0020",
"addressRegion": "東京都",
"addressLocality": "新宿区",
"streetAddress": "3-15-5F"
},
"openingHoursSpecification": [ //営業日と営業時間
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": [
"Tuesday",
"Wednesday",
"Thursday",
"Friday"
],
"opens": "10:00", //開店時間
"closes": "19:00" //閉店時間
},
{ //定休日
"@type": "OpeningHoursSpecification",
"dayOfWeek": [
"Saturday",
"Sunday",
"PublicHolidays"
],
"opens": "00:00", //定休日のため開店時間は00:00
"closes": "00:00" //定休日のため閉店時間も00:00
},
{ //休業日
"@type": "OpeningHoursSpecification",
"validFrom": "2019-12-28", //休業の開始日
"validThrough": "2019-01-06", //休業の終了日
"opens": "00:00",
"closes": "00:00"
}
]
}
</script>
レストランのJSON-LD
飲食やレストランのJSON-LDは、LocalBusinessのプロパティを4箇所変更することで利用できます。
JSON-LD
"@type": "Restaurant", //LocalBusinessをRestaurantに変更。
//下記を追記。
"servesCuisine": "イタリア料理", //料理タイプを追記。
"acceptsReservations": "True", //予約を追記。予約可能ならTrue、不可ならfalse
"menu": [
"ホームページのメニューURL",
"ホームページのメニューURL"
],
レストランやヘアサロンなどの予約
レストランやヘアサロンの予約は下記のプロパティを追加します。
予約プロパティを追加することでリッチスニペットに予約先のリンクが表示されます。
「result」の@typeには具体的なサブタイプを記入することが推奨されています。
例えば飲食の予約は「FoodEstablishmentReservation」が望ましい。
ReserveActionプロパティ一覧には「result」のサブタイプの一覧も記載されています。
JSON-LD
"potentialAction": {
"@type": "ReserveAction",
"target": {
"@type": "EntryPoint",
"urlTemplate": "予約ができるURL",
"inLanguage": "jp",
"actionPlatform": [ //予約可能なデバイス、OS
"http://schema.org/DesktopWebPlatform", //PCからの予約可能
"http://schema.org/IOSPlatform", //iOSからの予約可能
"http://schema.org/AndroidPlatform" //Androidからの予約可能
]
},
"result": {
"@type": "Reservation",
"name": "ヘアサロン 予約"
}
}
検索結果にサイト内リンクを表示させるJSON-LD
検索結果にサイト内検索が表示されるようになりますが、必ずサイト内検索が表示されるわけではありません。
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "WebSite",
"url": "https://www.example.com/",
"potentialAction": {
"@type": "SearchAction",
"target": "https://www.test.jp/search?q={search_term_string}",
"query-input": "required name=search_term_string" //required nemeはtargetのプレースホルダーと合わせる
}
}
</script>
構造化データのSEO効果は?
構造化データにSEOの効果はありません。
海外のSEO業者のウェブサイトでも構造化データが無いことも多くあります。
構造化データが記述されていても必須項目が無かったりして結構いい加減です。
SEOの効果はありませんが、検索結果に構造化データのリンクやイベント情報、検索窓などが表示されることがあります。その場合はクリック率が上がるケースがあります。