2016-06-15 11 views
0

最近、Googleウェブマスターコンソールに「hreflang no return tags」というエラーが発生しました。私は何が欠けているのか分かりません。私のサイトはwww.example.comで、www.example.com/#!/xxと異なる言語でアクセスできます.xxは次のオプションのいずれかです:it、ro、ru、pt、en、es、fr 。SEO - hreflang "返品タグがありません"

私のコードスニペットは、次のようになります。

<link view-head rel="alternate" hreflang="x-default" href="{{domain_absolute}}#!/{{mainVars.currentLanguage}}/--about-us" /> 
<link view-head rel="alternate" hreflang="es" href="{{domain_absolute}}#!/es/--about-us" /> 
<link view-head rel="alternate" hreflang="pt" href="{{domain_absolute}}#!/pt/--about-us" /> 
<link view-head rel="alternate" hreflang="ro" href="{{domain_absolute}}#!/ro/--about-us" /> 
<link view-head rel="alternate" hreflang="ru" href="{{domain_absolute}}#!/ru/--about-us" /> 
<link view-head rel="alternate" hreflang="en" href="{{domain_absolute}}#!/en/--about-us" /> 
<link view-head rel="alternate" hreflang="it" href="{{domain_absolute}}#!/it/--about-us" /> 
<link view-head rel="alternate" hreflang="fr" href="{{domain_absolute}}#!/fr/--about-us" /> 

そして、私はGoogleからの取得エラーは次のとおりです。

オリジナルURL:#/アン/いくつかのドキュメント

代替URL! http://www.example.com/?_escaped_fragment_=/enhttp://www.example.com/?_escaped_fragment_=/en/some-document - 返されないタグ

サポートされているすべての言語で同じエラーが発生します。

私は間違っていますか?

答えて

0

#は特殊文字です。 #の後のURLのすべてが無視されます。

#!特殊なケースです。 #!を使用すると! Googleはそれをconvert it to a different URL for AJAX crawlingへの信号として扱います。この「機能」は推奨されていません。あなたのURL構造は#を使用していないことを示しています。とにかくこのように。

したがって、ボトムライン:#を使用しないようにURLを変更してください。すべての言語に独自のURLを付けます。

0

廃止されましたが、Googleでは#!を理解しています。 URLをエスケープされたフラグメントバージョンに変換します。 GoogleはURLの/?_エスケープされたバージョンでリターンを見つけることができないと言っているので、リクエストに応答するURLの書き換えにHREFLang要素がないことを伝えています。

ソースをhttp://www.example.com/?_escaped_fragment_=/en/some-documentに表示し、HREFLang文字列が表示されない場合は、画面キャプチャに問題が表示されます。両方のバージョンでそれを持っていることを確認してください。そうすれば、エスケープされたURLの断片バージョンを含めるようにする必要があります。そのエラーは消えてしまいます。

5つ以上の国/言語の組み合わせを使用するサイトで使用する代わりに、XMLサイトマップを使用して、除外されたフラグメントバージョンを送信することができます。

関連する問題