seo/duplicate-title · タイトルの重複
<title> はルートごとに違う内容にしましょう。
重大度: warning
チェック内容
静的な <title> のテキストが(トリムと空白圧縮の後で)同一のルートが 2 つ以上あると検出します。動的なタイトルや存在しないタイトルは検査しません。
なぜ重要か
ページ間でタイトルが重複すると検索結果で互いに競合し、各ページの関連性シグナルが弱まります。
修正方法
<svelte:head>
<title>チーム紹介 — Acme</title>
</svelte:head>
モードによる違い
ソース解析(CLI、ダッシュボードの静的ベースライン)は、各ルートの <head> を、ページとレイアウトチェーンの <svelte:head> からリポジトリ内のコンポーネントもたどって合成し、既知のメタコンポーネント(svelte-meta-tags、svelte-seo)と metaComponents で宣言したものも加えます。判定するのはリテラルな値だけで、動的な値は検査しません。レンダリング解析(Vite プラグインのビルド、ダッシュボードで訪問したルート)は出荷される <head> を読み、値はすべてリテラルです。ビルドが対象にするのはプリレンダリングされたルートだけです。--route で絞ると比較対象もマッチしたルートに絞られ、ビルドではプリレンダリングされたルート同士を比較します。ダッシュボードのライブ層はこのルールを静的ベースラインに任せます。1 ページの <head> には比較相手が無いためです。両者が食い違うときは、レンダリング解析の結果を信じてください。
無効化
既存の検出は suppressions ファイルに記録して抑制できます(npx svelte-vitals --update-suppressions)。overrides でルートやパス単位に絞るか、ルールごと無効化するには、次のように設定します。
export default {
rules: {
'seo/duplicate-title': 'off'
}
};