2016-04-25 9 views
0

は、私は角度で構築されたWebサイトを実行して、私はいくつかの言語を統合し、サポートするためにangular-gettextを使用:https://angular-gettext.rocketeer.be/SEOおよびマルチ言語サポート

私はhttps://en.example.com/のようなドメイン固有のサブドメインやURLを使って自分のサイトの構造を変更する必要はありませんまたはhttps://www.example.com/en/。これまでは、クライアントのローカルストレージに言語変数を格納して、表示する言語を決定しました。

これはうまく動作し、UXは素晴らしいです。しかし、私は他の言語でGoogleが自分のウェブサイトをインデックスに登録するための最善の方法を知りたいと思っています。 langパラメータで、このようにhreflang属性を使用して考え

I whas:

<link rel="alternate" href="http://example.com?lang=en" hreflang="en-us" /> 

そしてもちろんは、URL内のlangパラメータを処理します。

これは機能しますか?それはベストプラクティスと考えられているのですか、それを行うにはよりエレガントな方法がありますか?

答えて

-1

角度は単一ページのアプリケーションなので、検索エンジンは実際にページ単位でアプリケーションをレンダリングすることはありません。したがって、翻訳のための異なる言語は、索引付けに関してはあまり効果的ではありません。 https://prerender.io/のようなレンダリング前のソリューションがあります。彼らはこれでかなり良い仕事をしています。

本当にあなたがseoのことを心配している場合は、実際にはサーバー側のページがあるかどうかを調べる必要があります。 sailsjsやhapijsのようなフレームワークとの組み合わせをソートすることができます。

SPAは通常、ログイン/私的使用の背後にあるアプリを対象としています。そのため、現在のところSEAフレンドリーにすることは非常に限られています。

+0

私はすでにプリレンダーを使用していますが、これは問題なく動作します。私はちょうど異なる言語で自分のウェブサイトのインデックスを作成しようとしています – Spearfisher

+0

https://support.google.com/webmasters/answer/182192?hl=en –

+0

GoogleはJavaScript /角型アプリケーションをレンダリングしています。 –

1

実際には、the answer from @z.a.はもう100%正確ではありません。 Googleは最近Javascriptをスキャンしているようです: Refer this link
Bingと他のすべてについてはわかりませんが、少なくともGoogleでは問題はありません。

https://www.example.com/en/の何が問題になっていますか?それは多言語ウェブサイトへの最もクリーンなアプローチです。これにより、すべての人が正しい言語であらゆるリンクを見ることができます。そうでないと、さまざまなユーザーが異なる言語で同じリンクを表示する可能性があります。これはあまりユーザー(およびSEO)にはあまり適していません。

は、あなたがリンクにhreflang="en-us"の上に、また、あなたのヘッダ

<html lang="en-US"> 

にし、実際のリンクに言語を追加することができます。

<a hreflang="it-IT" href="https://blog.supertext.ch/it/">Italiano</a> 

Googleにいくつかのかなり良いヒントを与える必要があること。

関連する問題