Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

メタデータ

最終更新 Markdown で表示Agent セットアップ

ページ単位のメタデータ(コンテンツタイプ、関連プロダクト、最終更新、単語数)があると、コンテンツを広く戦略的に見渡せます。

次のような問いに答えやすくなります。

  • ライターとして:
    • コンテンツ戦略で、明らかな抜けはないか?
    • 今すぐ更新すべきページはどれか?
    • あるチュートリアルは、ほかのチュートリアルと比べてどうか? ベースラインよりトラフィックが多いか?
  • マネージャーとして:
    • 特定のプロダクト領域、または特定のコンテンツタイプに、投資しすぎ/不足していないか?
    • このプロダクト群のトラフィックは、別の群と比べてどうか?
    • より大きな傾向をステークホルダーにどう伝えるか?

こうした問いには、ページを横断して集計したレポートが必要です。それはメタデータがあって初めて得られます。

追跡している項目

Cloudflare では、ページについて次の情報を追跡します。

説明
Description <meta name="description"> タグに入る 1〜2 文の要約。pcx_content_type がある全ページで必須です。 frontmatter のガイダンス を参照してください。
Product ページのトップレベルサブフォルダー。 dnsbots
Product Group 各プロダクトが属する主な領域。 Application PerformanceDeveloper Platform
Content type ページの主な目的。掲載している コンテンツタイプ に対応します。 how-tofaq
Last modified このページを最後に更新してから何日か。 63
Last reviewed(任意) このページを最後にレビューしてから何日か。 100

これらの値のなかで、Last reviewed には少し違いがあります。Last reviewedLast modified と異なり、レビューの方が更新より徹底しています。レビューは、ページの内容すべてが正確か確認済みであることを意味します。

この追加の手間のため、Last reviewed は、ユーザージャーニーで特に重要で、追加のメンテナンスが必要なコンテンツタイプだけ追跡します。現時点では チュートリアル です。


追跡の方法

これらの値は、フォルダーレベルとページレベルの 2 段階で設定します。

フォルダーレベルの属性

フォルダーレベルでは ProductProduct Group の 2 つを設定します。フォルダー内の全ページに当てはまると考えてよいからです。

たとえば、DNS フォルダー の内容は次のとおりです。

dns.yamlyaml
name: DNS

product:
  title: DNS
  url: /dns/
  group: Application performance

meta:
  title: Cloudflare DNS docs
  description: Cloudflare DNS provides the fastest, most resilient, and simplest
    managed DNS platform to meet your needs.
  author: "@cloudflare"

resources:
  community: https://community.cloudflare.com/tags/c/reliability/7/none
  dashboard_link: https://dash.cloudflare.com/?to=/:account/:zone/dns
  learning_center: https://www.cloudflare.com/learning/dns/what-is-dns/

ページレベルの属性

ページレベルの属性は、主に ページの frontmatter で設定します。

たとえば、Build a Slackbot チュートリアル に設定している値は次のとおりです。

build-a-slackbot.mdxmdx
---
updated: 2024-06-05
difficulty: Beginner
pcx_content_type: tutorial
title: Build a Slackbot
tags:
  - Hono
languages:
  - TypeScript
---

ただし、last_modified の値は、ファイルの git 履歴から自動で取得します。

ページレベルでは、必須の products frontmatter が関連する Cloudflare プロダクトを列挙します。これはフォルダーレベルの Product 属性とは別です。


値の使い方

これらの値は、各ページの特定の meta プロパティとして描画します。

たとえば、AI Crawl Control - Get Started ページmeta プロパティと値は次のとおりです。

Get Started | AI Crawl Controlhtml
<meta name="pcx_content_group" content="Core platform" >
<meta name="pcx_product" content="AI Crawl Control" >
<meta name="pcx_content_type" content="get-started" >
<meta name="pcx_last_modified" content="7" >

これらの値は、Head.astro のカスタムオーバーライドで描画します。特定の値が設定されていれば、それを meta タグとしてページに追加します。

Head.astrots
		if (product.data.product.title) {
			["pcx_product", "algolia_product_filter"].map((name) => {
				metaTags.push({
					name,
					content: product.data.product.title,
				});
			});
		}

利点

この構造には、主に 2 つの利点があります。

1 つ目は、ページをクロールする誰でもメタデータを簡単に使えることです。当初は Algolia の検索設定と社内レポート向けでしたが、コンテンツを AI システム向けに使うほかのチームとも共有するようになりました。

2 つ目は、GitHub リポジトリが常に正(source of truth)になることです。別の場所でスプレッドシートや対応表を更新する必要はありません。正は常にリポジトリにあり、複数の正を維持する場合より正確になりやすいです。


Description と AI での見つけやすさ

description frontmatter フィールドは、HTML head の <meta name="description"> タグに入ります。AI での見つけやすさにとって、最も重要なメタデータフィールドです。検索エンジン、AI クローラー、llms.txt の frontmatter ブロックは、ページを引用するかを決めるときにこの値を使います。

pcx_content_type があるページには、必ず description を入れてください。よい description は、プロダクト名を述べ、読者がそのページで何ができるかを示し、ページから抜き出しても単独の回答スニペットとして成立します。

書き方と例は description の書き方 を参照してください。

AI システムへコンテンツを提供する方法の詳細は AI での利用しやすさ を参照してください。


品質の確保

この種のメタデータでは誤りを避けにくいです。個々のファイルの frontmatter に自由記述で入力するからです。

Astro サイトでは Zod スキーマ を多用しています。定義は src/schemas/ にあります。

これにより、ローカル開発で IDE を使うコントリビューターに Intellisense のガイダンス を提供できます。

動作中の Intellisense

役に立ちましたか?