WIPこの記事は追記・更新される可能性があります。

【SEO検証】古い記事が孤立してたのでタグ・パンくず・JSON-LDを足した話——関連記事の仕組みもメモ

Design Ops / 設計・制作

#SEO · #Google Search Console · #タグ · #パンくず · #JSON-LD · #内部リンク · #Design Ops · #star-moti

公開
更新

【SEO検証】古い記事が孤立してたのでタグ・パンくず・JSON-LDを足した話——関連記事の仕組みもメモ

手動インデックス運用の記事 を書いたあとも、Search Console はちょくちょく覗いていました。

8月末時点のざっくり数字だとこんな感じ。

  • インデックス登録 … 登録済み 50 / 未登録 34
  • サイトマップ … 検出 294 件(最終読み込み 2026/08/29 ごろ)

「サイトマップには載ってるのに、古いハブとか記事がまだインデックスされてない……?」

8/27 あたり以降に出した記事は、何もしなくても だんだん登録されていくのに、それより前の記事 は孤立してる感じがしたんですよね(^^;

タグの概念はなんとなく分かってた。パンくずも「あった方がよさそう」くらいは知ってた。

でも 今更ながら、「内部リンク弱いとクロール優先度下がるよね……」と改めて痛感して、Cursor に修正をしてもらいました。

  • 古い記事に tags が付いてないから追加して
  • パンくずも付けたい(内部リンク強化したい)

コードの中身を自分で書いたわけではなく、「何が足りないか」を伝えて実装してもらう 形です。いつも通り、star-moti の Design Ops のやり方(^^)

結果として タグ追加 → パンくず(+ JSON-LD) の順で site に入りました。


きっかけ:「新しい記事は載るのに、古い記事が浮いてる」

自分のサイト(star-moti)だと、だいたいこういう整理になりそうです。

時期様子
8/27 以降push + 手動リクエスト or 自然クロールで、比較的早くインデックスに載りやすい
それより前ハブ記事・古い Life Log が サイトマップにはあるのに未登録 のまま残りがち

サイトマップは 「こういう URL がありますよ」リスト であって、全部インデックスしてね という命令書ではない——これは前の記事でも書いた通り。

なので今回 Cursor に頼ったのは インデックス API みたいな銀の弾丸じゃなく、「Google がサイト内を歩きやすくする」方向の 地味な内部リンク強化 です。


① タグ追加(42件の古い記事)

タグって何?

各記事の frontmatter に書く キーワードラベル です。

tags: ["ノマドワーク", "スターバックス", "カフェ作業", "Life Log"]

/blog/tag/ノマドワーク みたいな タグ一覧ページ が自動でできて、同じタグの記事同士が一覧でつながります。

今回やったこと

新しい記事にはだいたい tags が付いていたんですが、古い記事42件 だけ未設定のまま残ってました。

「タグ未設定の記事、内容に合わせて frontmatter に tags 足して」と Cursor に頼んだら、記事を読んで既存記事と同じノリで一括追加してくれました。ハブ系3本には先頭に 【ハブ】 も付いています。

なぜ効くと思ったか

  • 記事 ↔ 記事 の横リンク(タグ一覧経由)
  • ユーザーが「ノマド」「SEO」など テーマ横断 で辿れる
  • クローラーもタグページから 古い記事に再訪 しやすくなる(保証はしないけど、サイトマップだけよりマシ)

「タグの意味は分かってた。でも 古い分まで一括で揃える のを後回しにしてた」——が今回の本音です(^^)


② パンくずリスト(画面上の階段)

パンくずって何?

記事上部に出る 「ホーム › 知見・ブログ › カテゴリ › 記事タイトル」 みたいな道しるべです。

star-moti では例えばこんな階層。

ホーム › 知見・ブログ › Life & Perspectives / 暮らしと視点 › (記事タイトル)

ブログ記事・カテゴリ・タグ・Portfolio に、Cursor が Breadcrumbs コンポーネントとして追加してくれました。

なぜ今更?

パンくず自体は「知ってた」側。でも 未登録34件 を見て、「古い記事、親階層に戻るリンク薄くない?」と再認識。

毎記事から必ず ホーム → ブログ → カテゴリ へリンクが張られるので、孤立ページ になりにくい、という期待です。


③ JSON-LD(ここ、初めて知った!!)

知らなかったこと

パンくずを Cursor に付けてもらって、デプロイ後にページの HTML をざっと見たら—— <nav> の直前に <script type="application/ld+json"> も一緒についてたんですよね。

自分では「JSON-LD も入れて」とは頼んでいない。パンくず実装のついでに入れてくれた やつだと思います(^^)

「え、script タグ? でも画面には何も出てない……?」

→ 調べたら、これが JSON-LD で、Google 向けの構造化データ だと分かりました。パンくずの「人間向け <nav>」の裏側に、検索エンジン向けのメモ がセットで付いてた、という理解です。

ざっくり説明

誰向け
<nav> パンくず人間(+アクセシビリティ)画面上の ホーム › 知見・ブログ › …
JSON-LD検索エンジン{ "@type": "BreadcrumbList", ... }
  • type="application/ld+json"JavaScript としては実行しない(中身は JSON のメモ)
  • schema.orgBreadcrumbList … 「これはパンくずの階層リストですよ」という共通フォーマット
  • ページの <head> でも <body> でも Google は読める(今回はパンくずコンポーネントの中)

期待すること(控えめに)

  • 検索結果に パンくず風の表示 が付く かも
  • サイト構造の理解が 少し しやすくなる かも

インデックス guaranteed ではない です。でも入れて損は小さい、という判断。

「JSON-LD、知らなかった」を一つ学びとしてメモしておきます(^^)


すでにやってくれてた内部リンク(Cursor + 過去の実装)

今回の3点以外にも、内部リンクは もともと 入ってました。ここは 今更気づいて助かってる ラインです(^^)

A. 記事末尾の「主要ハブ一覧」(HubDirectory)

5大ハブ一覧コンポーネントの記事 で入れたやつ。

  • 個別記事の 末尾 に、キュレーションした5つのハブへリンク
  • 定義は lib/hub-directory.ts(フリーランス準備・投資ログ・ノマドスポット・おすすめグッズ・サイト改修ログ)
  • ハブ記事自身 では二重表示を避けて非表示

全記事から主要ハブへの送客 は、すでに自動。

B. 本文中の Markdown リンク

記事を Cursor と一緒に書いていると、関連記事への [テキスト](/blog/slug) が自然に入る。これも強力な内部リンク。

C. カテゴリ・タグ(ヘッダー付近)

記事ページにはもともと カテゴリリンク#タグリンク がありました。今回のタグ42件追加で、タグ側の網が一気に厚くなった感じ。


余談:「関連記事」って普通どうやって出すの?

「関連記事」コンポーネント、star-moti にはまだ自動版はない です(HubDirectory は 固定のハブ5つ なので、記事ごとの「似てる記事」ではない)。

一般的なブログでは、だいたい次のどれか(または組み合わせ)です。

方式やり方特徴
① タグ一致同じ tags が多い記事をスコア順実装が簡単。今回 tags を厚くしたのはここにも効く
② カテゴリ一致同じ categories から新着 N 件雑だけど意外と使える
③ 手動指定frontmatter に related: [slug-a, slug-b]精度最高。量産ブログだと手間
④ 本文類似度TF-IDF / ベクトル(embedding)で近い記事Medium っぽい。API コスト or ビルド時間
⑤ WordPress プラグインYet Another Related Posts Plugin 等ホスト型ブログの定番
⑥ グラフ相互リンク数・PV で PageRank 風大規模向け

star-moti で現実的な次の一手 なら、たぶん 「同カテゴリ+タグ一致数で上位3件」 くらいのシンプル自動が相性いい(将来メモ)。

今は HubDirectory + 本文リンク + タグ/カテゴリ + パンくず の多層で、まず孤立を減らす段階、という位置づけです。


今回やったこと一覧

対応内容狙い
tags 42件追加Cursor に古い記事の frontmatter を一括追加タグ一覧経由の横リンク
パンくずCursor にコンポーネント実装親階層への確実なリンク
JSON-LDパンくず実装に同梱(BreadcrumbList)Google 向け構造の明示(初めて知った)
(既存)HubDirectory記事末尾5ハブ主要コンテンツへの送客
(既存)手動リクエスト新着中心GSC運用記事 参照

まとめ

  • タグ・パンくず … 概念は知ってた。でも 古い記事の孤立 を見て、今更 Cursor に一気に頼んだ
  • JSON-LD知らなかった。パンくずを付けてもらったら ついでについてた Google 向けの構造化データ
  • 関連記事 … 一般的にはタグ/カテゴリ/AI/手動など。star-moti は HubDirectory + 本文リンクで代替中

インデックス50 → いくつ増えるかは 数週間様子見。焦らず、手動リクエスト(新着)+内部リンク(全体)の 両方 を続ける、くらいの気持ちです(^^)