構造化データ マークアップのメモ

ECCUBE3のサイト構築のお手伝いをしていたりするのですが、SEO的な観点からプログラム言語を知らなくてもできる構造化データ マークアップのメモを記しておきたいとおもいます。

もし古本屋さん、古書店さんでECCUBE3を使っているという方がおられましたら、いっしょに情報共有できたらな思っております。これから始めようと思っている方や、プログラム的な疑問等などにおいて力になれればと思いますので、なにかありましたらコメントまたはメールにてお知らせください。

schema.orgを使った構造化データ マークアップのメモ

以下はECCUBE3内での方法です

お店の情報を”@type” : “LocalBusiness”で指定する。
どこでも設置してもいいのでブロックで作っておいても問題ないと思います。また、typeが異なれば2箇所以上でマークアップしても認識されます。

LocalBusinessのタイプはnameが必須なので必ず記入します。{{ BaseInfo.shop_name }}で指定可能

address
priceRange
telephone
は推奨フィールドのため、ないと警告がでます。priceRangeに関しては曖昧なフィールドでもあるので無視してもよいとのこと。
テストツールでは警告が出ます。

以下最低限の項目

<script type="application/ld+json">
{
  "@context" : "http://schema.org",
  "@type" : "LocalBusiness",
  "name" : "タイトル", //タイトルまたは{{ BaseInfo.shop_name }}
  "email" : "メールアドレス", //メールアドレス
  "image" : "ロゴ画像のurl" //ロゴ画像
  "telephone" : "電話番号" //電話番号
  "address" : {
    "@type" : "PostalAddress",
    "streetAddress" : "番地以下", //番地
    "addressLocality" : "市区町村", //市区町村
    "addressRegion" : "都道府県", //都道府県
    "addressCountry" : "日本",
    "postalCode" : "郵便番号" //郵便番号
  }
}
</script>

より項目を増やしたい場合は下記のサイトがお勧めです。
schema.org – LocalBusinessでよく使うプロパティ一覧

次に個別商品に関してのマークアップ

“Product”タイプで記入します。”name”は必須なので入力しましょう。

<script type="application/ld+json">
{
  "@context" : "http://schema.org",
  "@type" : "Product",
  "name" : "{{ Product.name }}",
{% for ProductImage in Product.ProductImage|slice(0,1) %}
  "image" : "{{ app.config.image_save_urlpath }}/{{ ProductImage|no_image_product }}",
{% endfor %}
  "description" : "{{ Product.description_detail }}",
  "brand" : {
    "@type" : "Brand",
    "name" : "ブランド名", //ブランド名
    "logo" : "ロゴ画像" //ロゴ画像
  },
  "offers" : {
    "@type" : "Offer",
    "price" : "{{ Product.getPrice02IncTaxMin }}",
    "priceCurrency": "JPY"
  }
}
</script>

{% for ProductImage in Product.ProductImage|slice(0,1) %}において、slice(0,1)で回数を指定することで、先頭の画像一枚を”image”として出します。画像がなければ”image”はなしになります。

“brand”はあってもなくても大丈夫です。

これらを商品詳細ページに記入することで商品毎のマークアップが出来ます。

最後に構造化データーテストツールで確認してください。

コメント