現在、複数の言語で利用可能なウェブサイトを作成しています。ユーザーの好みの言語を原子的に検出するように努力しました。これ自体がうまく機能しています。また、サイトの言語を変更するための言語ボタンも提供しています。 URLは変更されません。言語設定をPHPセッションで保存します。これはうまく機能しています!ただし、Googleはデフォルトの言語(英語)のみを表示します。これは、言語を変更するボタンがPOSTリクエストを送信するフォーム内にあるためです。
要約すると、私のサイトは言語を変更するときにURLを変更しません。 Googleにいくつかの異なる言語があることを伝える私の考えは、現在のページを指すhreflang
タグを使用することですが、ドメインは現在の言語でサブドメインを取得します。
例:(URL:http://example.com/
)
<link rel="alternate" hreflang="en" href="http://en.example.com/">
<link rel="alternate" hreflang="de" href="http://de.example.com/">
http://en.example.com/
またはhttp://de.example.com/
にアクセスすると、これらのサイトはhttp://example.com/
にリダイレクトして、URLが同じであることを確認します。
これを行うと、Googleはページを適切にインデックス化しますか?
Googleが個別にインデックスを作成できるようにするには、個別のURLが必要です。複数の言語に同じURLを使用しても機能しません。 動的に配信 単一のURLのコンテンツを使用できますが、個々の言語コンテンツも別々のURLに存在する必要があります。