あるクライアントが、なぜオランダ人訪問者がドイツのサイトに上陸するのかと尋ねてきたことがあります。 hreflangのセットアップは、次のようにして完了しているように見えました: en-US、 en-GB、 de-DE、 fr-FR、 es-ES、すべての相互、すべての検証クリーン。 nオランダ語バージョンがなかったので、指摘するものは何もなかった、と私はgoogleが英語にフォールバックするだろうと想定していた。 not.ドイツ語にフォールバックした、おそらくオランダ語とドイツ語は、最も近い一致のように見えるのに十分な信号を共有し、英語を問題なく読むオランダ語話者が、まったく読めないページを取得したためです。
修正は1 行でした 1つ x-default 英語のホームページを示すエントリーがあり、オランダの交通は 2 週間以内に賢明な場所に着陸し始めました。
x-default は、hreflang の最も華やかな部分であり、今最初に追加する部分です このガイドは、それが何をするのか、どこを指すのか、役に立たない間違い、そしてそれがあなたの注釈の残りの部分の下にあります 完全なフレフラングガイド、 の 隣 実装を壊すエラー。
tl;dr:
x-defaultは、他の言語または地域のエントリがユーザーと一致しない場合に、ページにサービスを提供する名前を付ける hreflang 値です。 これは言語コードではなく、言語コードを置き換えるものではありません。英語ページにはまだ独自のコードが必要ですenエントリー、付きx-defaultキャッチオールとして並んで。言語セレクターまたは主要な国際ページにそれを向けます。リダイレクト チェーンやページには決して置かないでくださいnoindex。 Googleはオプションとして扱う; 省略すると、アルゴリズムが選択することを意味します。 あなたがするとき hreflang タグを生成する ここで、x-default のないセットは警告を発生します。
hreflang の x-default とは?
x-default は、言語とリージョンがセット内の他のエントリと一致しないユーザーのフォールバックページを識別する予約された hreflang 値です。 他の注釈とまったく同じように見えます:
<link rel="alternate" hreflang="x-default" href="https://example.com/" />
Google が 2013 年に導入した 特に、ユーザーの位置に基づいてユーザーを自動リダイレクトするホームページの場合、定義はそれ以降、あらゆるフォールバックをカバーするように拡張されました。値は BCP 47 言語タグではなく、決してそうではありませんでした。これはキーワードです。Google' s パーサーが認識し、他のすべてが無視します。
バリデータを読むときはその区別が重要になります。 strict language-tag validator が教えてくれます x-default 言語タグとしては無効です。 hreflang 値としては正しく文書化されています。これを拒否するツールはすべて、間違った仕様を検証しています。
X-default は必須ですか?
いいえ、Hreflang はそれなしで動作し、Google' のドキュメントには必須ではなく推奨としてリストされています。
実際には、この記事のトップにある理由により、必要に応じて扱います。これがないと、Google は比類のないユーザーをどうするかを決定し、Google が下す決定は不透明で、時には奇妙になります。これを使用すると、自分で決定を下し、結果について推論することができます。コストは、すでに生成しているブロックに 1 つの追加注釈が追加されます。
1 つのケースでは、真にスキップすることができます: その言語セットは、その外部の訪問者を獲得する野心を持つことなく、その現実的な聴衆全体をカバーするサイトです.2 つの公用語を 1 つの国にサービスを提供する地方自治体のサイト, 例えば, そこでも, 追加するコストは何もありません。
x-default はどこを指すべきですか?
防御可能なターゲットは 3 つあり、よくある間違いは 1 つあります。
| 対象 | 合うとき | 注意してください |
|---|---|---|
| 言語セレクターページ | 多くのロケール、明らかなデフォルトはありません | ページは、裸のリダイレクトスタブではなく、インデックス可能で便利なものでなければなりません |
| 一次国際版、通常は英語 | 1 つの言語がトラフィックを支配します | のような国固有のURLを指さないでください /en-us/ も務めるなら /en-gb/ |
| 地理的に検出する汎用ルート | すでにIPベースのルーティングがあります | URL はクローラーに対して 200 を返す必要があり、ロケールへの 302 は返さない必要があります |
| 国別のページ | 決して | Google に、比類のない世界全体に対するフォールバックは 1 つの市場であると伝えます' s ページ |
私のデフォルトの選択は、サイトルートでの中立的な英語版です, それはあなたがサービスを提供していない言語を持っている誰かによって読める可能性が最も高いバージョンであるため、言語セレクターは、あなたがダースのロケールを持っているとき、より原則的な答えであり、自然なデフォルトはありません, しかし、それはより悪いランディングページです: それは彼らが価値のあるものを見る前に仕事をするように訪問者に尋ねます。
どちらを選択しても、ターゲットは実際のインデックス可能な 200 ステータス URL である必要があります。 AN x-default 到着時にリダイレクトするページを指すことはまだ機能しますが、すべてのホップは信号を失うチャンスであり、ip によって異なるリダイレクトは、ある場所からクロールする Googlebot がユーザーの表示を決して表示しない可能性があることを意味します。
x-default は言語エントリを置き換えますか?
いいえ、これが私が最もよく訂正する誤解です。
x-default は言語宣言ではなくルーティング命令です。 " 何も一致しないときはここへ." " とは言わないです。 this page is English." だからあなたが指し示すページには、同じセットで独自の言語エントリがまだ必要です。 英語、ドイツ語、フォールバックを持つサイトの完全なブロックは次のようになります:
<link rel="alternate" hreflang="en" href="https://example.com/" />
<link rel="alternate" hreflang="de" href="https://example.com/de/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/" />
注意してください https://example.com/ 2 回、1 回はとして現れる en そして一度 x-default。 それは正しいと期待されています。同じ URL は両方です " 英語版 " そして " 無比のユーザーが行くと " 、そして Google は両方の事実を述べています。
を持つ集合 x-default 根元を指しますが、いいえ en entry for it is broken in a subtile way: English speakers have no explicit match, so they are routed through the fallback path rather than the language path.それのためのエントリは、微妙な方法で壊れています: 英語のスピーカーは明示的な一致を持っていないので、彼らは言語のパスではなく、フォールバックパスを通してルーティングされますそれは通常、まだ動作します。それはまだ間違っています。
x-default は相互性とどのように相互作用しますか?
他のエントリーでも同じようにします。 フルセット、 x-default グループ内のすべてのページに掲載されています。
したがって、ドイツ語のページには、上記に示した同一のブロックが含まれています x-default 英語のルートを指す線。初めて書くときは奇妙に感じます。それ自体が代替ページの 1 つであるページに対してフォールバックを宣言しているからです。それがデザインです。セット内のすべてのページがマップ全体を運ぶため、Google が最初にクロールするページが全体像を示します。
これが実際に壊れるのはテンプレート化です。 teamsは、ロケールマップ上のループから言語エントリをレンダリングしてから追加します x-default 特殊な場合として、そして特殊な場合が一つのテンプレートで忘れられてしまう 1 ページ1 つのエントリを欠いているだけで、その page' s set がその兄弟と矛盾する 1 つのソースからその全てを生成する、 x-default が含まれ、バグのクラスが消える。 を Next.js ガイド そして、 WordPress ガイド どちらも、フォールバックがボルトで固定されるのではなく折り畳まれたループを示しています。
ホームページ以外のページでx-defaultを利用できますか?
はい、そうすべきです。 2013 年の発表ではホームページを中心に構成されていたため、古いアドバイスの多くではホームページのみであるとされていますが、このメカニズムは任意の代替セットに適用されます。
ディープページの場合、フォールバックはホームページではなく同等のディープページである必要があります。価格設定ページが英語、ドイツ語、フランス語で存在する場合、 x-default そのセットには、英語のホームページではなく、英語の価格設定ページがあります。価格設定クエリから一致しないユーザーをホームページに送信することは、エクスペリエンスも変換パスも悪く、注釈の精度が予想よりも低くなります。
例外は、1 つの市場だけに真に存在するページです。 コンプライアンスページがドイツのみに適用される場合、代替ページがなく、フレフラングセットも必要ないため、必要ありません x-default。
複数の x-default エントリはどうですか?
1 セットにつき1 つ。 2 つあるセット x-default 異なる URL を指すエントリは矛盾しており、Google'矛盾の処理は推測ではなく破棄することです。
これは、プラグインが1 つのブロックを、手書きのテンプレートが別のブロックをそれぞれ発し、ページが両方になってしまうという2 つのソースからhreflangが組み立てられているサイトで、予想以上に頻繁に起こることです。 また、サイトマップが、すでにHTMLタグを持っている同じURLに対してhreflangを運ぶときにも起こります フレフラング発生器 セット内の重複コードをキャッチします。これには、繰り返しコードも含まれます x-default、しかし、それはページ上の他の何かによって放出された第二のブロックを見ることはできません ソースを表示し、カウントします。
x-default が機能していることを確認するにはどうすればよいですか?
それに対する直接的な報告はありません それが無視される理由の一部です 効果がある3 つのチェック:
テンプレートではなく、レンダリングされた HTML を見てください。 curl のページとグレップ x-default。フレームワークがヘッド タグをストリップまたは並べ替えたり、プラグインが競合ブロックを挿入したりすると、ここでわかります。
ターゲットの解決を確認します. を 取り込む x-default クローラー ユーザー エージェントがあり、Cookie がない URL。可能であれば、自国以外から。チェックしているのはリダイレクトではなく 200 で、Googlebot が表示するのと同じコンテンツです。
ランクではなくクエリに注目してください。 Search Console では、明示的にターゲットにしていない国別のパフォーマンスをフィルタリングし、どのページに着地するかを確認します。一致しない国が指定したページに到着している場合、注釈はその役割を果たしています。ランダムなロケールに到着している場合、タグが欠落しているか、ページ上の他の何かがそれに矛盾します。
検索コンソール' s 国際ターゲティング レポートでは、関連するリターンタグ エラーが表面化します x-default 他の行と同様に逆数セットの一部であるため、他のすべての行とともにエントリします。
よくある x-default の間違い
リスト、私がそれらに遭遇した順序で:
- 持っていない. デフォルトの失敗です 比類のないユーザーは Google の推測どおりに取得します。
- 国固有のURLでそれを指しています.
/en-us/グローバルなフォールバックが Google に伝えるように、世界的なデフォルトは米国の店舗、価格などです。 - リダイレクトでそれを指しています. 特に IP ベースのものは、Googlebot とユーザーが異なるページを表示することを意味します。
- 言語エントリの代わりにそれを使用します。 フォールバック URL にはまだ独自の URL が必要です
enやdeライン. - そのうちの2つ. 通常、プラグインとテンプレートは両方ともフレフランを発します。
- ホームページのみ. 深いページには代替ページもあり、その深さに合ったフォールバックが必要です。
- a を指します
noindexページ. あなたは Google に無視するように指示した目的地を宣伝しました。
これらはどれも沈黙しています 何もエラーも警告もなく 仕えていない市場からのトラフィックが 静かに間違った場所へ向かいます それがブロックを手で維持するのではなく生成し テンプレートを信頼するのではなくレンダリングされた出力を読み取るための議論です フレフラング エラー ガイド 残りの家族をカバーします フレフラング ツールガイド 検証済みのセットを最初から構築していきます。
よくある質問
hreflang で x-default は何を意味しますか?
x-default 検索エンジンがサービスを提供するページに名前を付けるのは、hreflang セット内の他の言語または地域のエントリがユーザーと一致しない場合に必要です。言語コードではなく、フォールバック ルーティング命令です。
X-defaultは必須ですか?
いいえ Google は推奨していますが、hreflang は推奨しません。 x デフォルトがなければ、Google は比類のないユーザーを表示するバージョンを選択します。その選択は、制御したり簡単に観察したりできるものではありません。
x-default はどこを指すべきですか?
言語セレクターページまたはプライマリ国際版 (通常はサイトルートにある英語版) に。国固有の URL、リダイレクト、または noindex とマークされたページにそれを指すのは避けてください。
x-default ページには独自の言語タグがまだ必要ですか?
はい。 英語のホームページが x-default ターゲットである場合、セットにはまだ が必要です en 同じURLを指すエントリ。 logitivelyに同じURLが2 回表示され、1 回は言語として、もう1 回はフォールバックとして表示されます。
複数の x-default を持つことはできますか?
No. フレフラン セットごとに 1 つ。異なる URL を指す 2 つのエントリは矛盾しており、通常、ページ上の 2 つのシステムが両方ともフレフラン ブロックを発していることを意味します。
ホームページ以外のページでもx-defaultは使えますか?
はい。代替のセットはフォールバックを持つことができ、ディープ ページの場合、フォールバックはホームページではなく同等のディープ ページである必要があります。
x-default はセット内のすべてのページに表示する必要がありますか?
はい。これは逆数ブロックの一部であるため、x デフォルト行を含む同一のセットがグループ内のすべてのページに移動します。
x-default が動作していることを確認するにはどうすればよいですか?
レンダリングされた HTML を取得し、x デフォルトのエントリが 1 つだけ存在することを確認し、リダイレクトせずにそのターゲット リターン 200 を確認し、Search Console's パフォーマンス レポートを使用して、ターゲット外の国からの訪問者がどのページにアクセスしているかを確認します。



