コンテンツにスキップ
Blume
Esc
↑↓移動↵開く⌘Jプレビュー
このページの内容

メタデータ

すべてのページがレンダリングする head タグ(title、description、canonical、Open Graph、X カードのタグ)と、フロントマターからページごとに上書きする方法。

すべてのページは、設定とフロントマターから標準的な <head> タグをレンダリングします — 設定は不要です。値を調整できる場合は、blume.config.ts の seo キー、またはページのフロントマターの seo の下に配置されます。

  • <title> — ページタイトルとサイトの title。
  • <meta name="description"> と og:description — ページの description。未設定の場合はサイトの description にフォールバックします。
  • og:title と og:site_name — ページタイトルとサイトの title。
  • <link rel="canonical"> と og:url — ページの絶対 URL(deployment.site が設定されている場合)。
  • og:type — ブログ記事と変更履歴エントリでは article、それ以外では website。記事ページでは、ページの date と最終更新タイムスタンプから article:published_time と article:modified_time も出力されます。
  • og:image — ページの OG 画像。生成されたカードは og:image:width、og:image:height、og:image:type、og:image:alt も宣言するため、クローラーは画像を取得せずにカードをレイアウトできます。自分で指定した seo.image は、サイズとフォーマットが不明なため、これらを一切宣言しません。
  • twitter:card、twitter:title、twitter:description、twitter:image — X カード。画像のあるページは横長の summary_large_image バリアントになります。画像のないページでも、素のリンクとしてレンダリングされる代わりにコンパクトな summary カードが適用されます。

X のクレジット表記

X はカードのその他すべての値を og:* タグから読み取るため、推測できない値はクレジットするアカウントだけです。それらを seo.x の下に設定すると、Blume は twitter:site(サイトのアカウント)と twitter:creator(著者のアカウント)を出力します。@ は省略可能で、acme と @acme のどちらでも動作します。

seo: {
  x: { handle: "@acme", creator: "@jane" },
}

ページは独自の著者を指定できます。これはゲスト投稿に適しています。

---
title: How we shipped it
seo:
  x:
    creator: "@guestauthor"
---

独自のタグ

Blume に設定項目がないものについては、seo.metatags の下にタグを追加すると、カスタムページや API リファレンスを含むすべてのページにそれらが含まれます。Google、Bing、Facebook のサイト認証トークン、theme-color、アプリバナーなどに適しています。

seo: {
  metatags: {
    "google-site-verification": "abc123",
    "msvalidate.01": "def456",
    "theme-color": "#0b5fff",
    "apple-itunes-app": "app-id=123456789",
  },
}

各キーはタグの名前、各値はその内容です。Open Graph 系のタグ(og:、fb:、article: など)はプロトコルの命名どおり property でレンダリングされ、それ以外はすべて name でレンダリングされます。このページの冒頭に挙げた、Blume 自身が出力するタグはここでは設定できないため、1 つのタグに 2 つの値が含まれることはありません。ビルドは、それぞれのタグを制御する設定を示します。og:image は seo.og またはページの seo.image から、robots はページの seo.noindex から設定されます。

ページごとの上書き

その他のタグはいずれも、seo フロントマターでページごとに上書きできます。

---
title: Pricing
description: Plans and pricing for every team size.
seo:
  title: Plans and pricing
  canonical: https://acme.com/pricing
  noindex: false
---
プロパティ型
seo.title?string

<title>、og:title、twitter:title のページタイトルを置き換えます。サイトタイトルは引き続き末尾に付加されます。たとえば Acme Docs というタイトルのサイトでは、上記の例は「Plans and pricing - Acme Docs」とレンダリングされます。

型string
seo.description?string

meta と og:description を上書きします。

型string
seo.image?string

カスタムのソーシャル画像(Open Graph 画像を参照)。

型string
seo.canonical?string

canonical URL を上書きします。

型string
seo.noindex?boolean

robots noindex を出力し、構造化データをスキップします。

型boolean
seo.x.creator?string

このページを X アカウント(twitter:creator)にクレジットし、設定の seo.x.creator を上書きします。

型string

noindex のページは サイトマップ からも除外され、構造化データ もスキップされます。

最終更新

このページは役に立ちましたか?