Google Search Consoleでスパムパラメータの問題に直面しています。
多言語ページがあります(説明のため、URLが https://www.example.com/page1.html であるとしましょう)。ページは複数の言語に翻訳されます( https://fr.example.com/page1.html 、 https://de.example.com/page1.html 、等)。
次のように、ページの各バージョンにhreflangタグを追加しました。
<link rel="alternate" href="https://fr.example.com/page1.html" hreflang="fr"/>
<link rel="alternate" href="https://de.example.com/page1.html" hreflang="de"/>
<link rel="alternate" href="https://www.example.com/page1.html" hreflang="x-default"/>
私が直面している問題は、Googleが次のような名前のURLをクロールしていることです。
https://fr.example.com/page1.html?some_spammy_param=more_spam
また、代替ページがリンクに戻らないという不満を持っています(明らかに、自動生成されたスパムパラメータをhreflangパラメータに含めたくないためです!)。
単一言語サイトでは、標準タグを追加することでこれを解決できますが、Googleは多言語サイトで標準タグを使用しないことをお勧めします。
Q:
rel=canonical
をrel-alternate-hreflang
と一緒に使用できますか?A:異なる言語または国のバージョンで
rel=canonical
を使用しないことをお勧めします。同じ言語/国のバージョン内で使用することは問題なく、正規化を処理するための推奨される方法の1つです。
言い換えると:
1つの言語を他の言語のように標準としてマークしないでください。
/fr/page.html
はNOT/de/page.html
と同じです。一方を他方として正規としてマークする正規タグはありません。 frページとdeページを標準としてマークすると、その2つのうちの1つがNOTと表示されます(その言語を話すユーザーでも)。同じ言語を指す限り、正規のタグを使用しても構いません。実際、そうすることをお勧めします。
Hreflangと完全に互換性があります。 Hreflangは、異なる言語を指すことを意図しています。 rel = canonicalは、同じ言語でのみ指定できます。
各言語の各ページには、標準タグを含めることができます。 canonicalとhreflangの両方を使用すると、次のようになります。
https://fr.example.com/page1.html
:
<link rel="canonical" href="https://fr.example.com/page1.html">
<link rel="alternate" href="https://de.example.com/page1.html" hreflang="de"/>
<link rel="alternate" href="https://www.example.com/page1.html" hreflang="x-default"/>
https://fr.example.com/page1.html?some_spammy_param=more_spam
:
<link rel="canonical" href="https://fr.example.com/page1.html">
<link rel="alternate" href="https://de.example.com/page1.html" hreflang="de"/>
<link rel="alternate" href="https://www.example.com/page1.html" hreflang="x-default"/>
https://www.example.com/page1.html
:
<link rel="canonical" href="https://www.example.com/page1.html">
<link rel="alternate" href="https://fr.example.com/page1.html" hreflang="fr"/>
<link rel="alternate" href="https://de.example.com/page1.html" hreflang="de"/>