- SEOは「文章の良さ」だけでは決まらない
- 検索エンジンはページをどう読んでいるのか
- JavaScriptで書かれた文章は読まれないことがある
- インデックスが遅れる理由
- SPA(シングルページアプリ)が不利な理由
- 実際に起きがちな失敗
- WordPressでも関係がある
- 対策:最初からHTMLに含める
- 注意点:JavaScriptは悪ではない
- なぜ重要なのか
SEOは「文章の良さ」だけでは決まらない
良い記事を書いたのに検索に出ない。
公開したのに何日もインデックスされない。
一部のページだけ極端に順位が低い。
このとき多くの場合、キーワードや文字数を疑います。
しかし実際には、検索エンジンが内容を読めていないことがあります。
原因の中心にあるのがJavaScriptです。
現在のSEOは、文章評価だけでなく「ページの作られ方」の影響を強く受けます。
検索エンジンはページをどう読んでいるのか
検索エンジンはブラウザではありません。
Googleは「クローラー」と呼ばれるプログラムでページを取得します。
基本的な流れはこうです。
1. URLへアクセス
2. HTMLを取得
3. 内容を解析
4. インデックス登録
ここで重要なのは、最初に読まれるのがHTMLという点です。
つまり、HTMLに存在しない文章は最初に評価されません。
JavaScriptで書かれた文章は読まれないことがある
最近のサイトは、ページを開いた後にJavaScriptが内容を生成します。
例えば次のような処理です。
document.getElementById("content").innerHTML = "記事本文";
人間のブラウザでは表示されます。
しかしクローラーは、JavaScriptを実行しない段階で解析を行います。
結果として起きる現象は次の通りです。
- 画面には記事がある
- しかし検索には存在しない
これは珍しい問題ではありません。
特に動的表示の多いサイトで起きます。
インデックスが遅れる理由
GoogleはJavaScriptも解析できますが、即時ではありません。
通常は2段階で処理されます。
- まずHTMLを評価
- 後からJavaScriptをレンダリング
この「後から」が問題です。
リソースを多く消費するため、すぐに処理されないことがあります。
その結果、
- インデックスが数日遅れる
- 一部ページが未登録
- 順位が安定しない
といった状況が発生します。
SPA(シングルページアプリ)が不利な理由
JavaScript中心のサイト、いわゆるSPAはSEOで苦戦しやすいです。
理由はページ遷移が存在しないためです。
URLが変わっても実際には同一HTMLです。
コンテンツはJavaScriptが差し替えます。
検索エンジンから見ると「ページが増えていない」ように見えることがあります。
実際に起きがちな失敗
次の構成は特に注意が必要です。
- 目次以外がすべてJavaScript生成
- 初期HTMLが空
- ローディング表示のみ存在
この場合、クローラーは内容を取得できません。
ユーザーには見えているのに検索には出ないページが出来上がります。
WordPressでも関係がある
WordPressは基本的にHTMLを出力するため有利です。
しかし次のケースで問題が起きます。
- 無限スクロール
- 折りたたみ記事
- Ajax読み込み
- タブ切り替えコンテンツ
これらはJavaScriptで後から表示されます。
クローラーが読み取らない可能性があります。
対策:最初からHTMLに含める
SEOの基本は単純です。
重要な本文は最初のHTMLに存在させることです。
JavaScriptは装飾や補助に使うのが安全です。
- 表示切替 → OK
- 本文生成 → 要注意
注意点:JavaScriptは悪ではない
誤解されがちですが、JavaScript自体がSEOに悪いわけではありません。
問題は「依存度」です。
検索エンジンはページを再現しようとしますが、
複雑な処理や外部通信が多いと再現に失敗します。
その結果、評価が遅れたり不安定になります。
なぜ重要なのか
SEO対策というと、キーワードや見出し構造に意識が向きます。
しかし検索エンジンはまずページを取得しなければ評価できません。
つまり、SEOの最初の条件は「読めること」です。
どれだけ良い記事でも、検索エンジンが取得できなければ存在しないのと同じです。
JavaScriptはWebを便利にしましたが、検索エンジンとの相性を考える必要があります。
SEOとは文章の最適化ではなく、検索エンジンに正しく届ける設計でもあります。
順位の問題が内容ではなく構造にある場合、それは文章力では解決しません。
まず「検索エンジンが読めているか」を確認することが、現在のSEOの出発点です。