【JavaScript SEO】サーバーサイドでレンダリングすべき要素: メインコンテンツ、構造化データ、titleタグ、hreflangほか

[レベル: 上級]

DeepCrawl が主催したウェビナーで Google の Martin Splitt(マーティン・スプリット)氏が、JavaScript サイトの SEO に関するさまざまな質問に回答しました。

このなかで、サーバーサイドでレンダリングすべき要素、言い換えると、JavaScript を介してレンダリングさせるべきではない要素をスプリット氏は挙げました。

サーバーサイドでレンダリングすべき要素

スプリット氏によると、SEO を考慮するのであれば、次の要素はサーバーサイドでレンダリングしてからクライアント(ユーザーと Googlebot)に配信したほうがいいとのことです。

  • メインコンテンツ
  • 構造化データ
  • title タグ
  • meta description
  • hreflang
  • 日付に関する記述

メインコンテンツは、ページの評価において最も重要です。
現在の WRS(ウェブ レンダリング サービス)が、古い Chrome 41 相当であることと、JS のレンダリング完了までに時間がかかることを考慮すると、確実にかつ速やかにメインコンテンツが Google にインデックスされなかったとしたら、それは SEO において大きなマイナス要因です。
レンダリングが完了した状態でメインコンテンツを Google に配信すると安心です。

サーバーサイドでレンダリングさせることは技術的に難しいかもしれないとは言いつつも、構造化データに関してもサーバーサイドでのレンダリングをスプリット氏は推奨しました。
リッチリザルトのように検索結果表示に左右する機能に影響するので、構造化データも確実に、速く認識させることが望まれます。

title タグと meta description は検索結果の表示にかかわります。
特に title タグに関しては、レンダリング前の状態が検索結果に表示されてしまうかもしれません。
すべてのページのタイトルが同じなどという、SEO の初歩的なミスを犯してしまう危険性もあります。

各言語のページの関連性を早い段階で Google に示すために、hreflang もサーバーサイドでレンダリングした方が良さそうです。
Google 側でのレンダリングが完了しないうちは、不適切な言語のページが検索結果でユーザーに提示されてしまうかもしれません。

日付に関する記述は、検索結果のスニペットに間違った日付が表示されてしまう可能性があるからでしょうか。
致命的ではなさそうですが、正確な日付が検索結果に表示されるに越したことはありません。

DeepCrawl のウェビナーでスプリット氏はこのほかにも、JavaScript SEO に関する質問に 1 時間にわたってたくさん回答しています。
ウェビナー全体は YouTube で視聴できます。

また スプリット氏は、JavaScript SEO の TIPS を解説する動画シリーズを最近スタートしました。
JavaScript を多用した SEO に携わっているひとはこちらも視聴するといいでしょう。