現在日本語だけでWebを展開している某クライアントが、多言語で展開したいと相談を持ちかけてきました。今使ってるDBもHTMLのエンコードもUTF-8だし、特に問題は無さそう。
私も外国語はアジア言語(繁体字、簡体字、ハングル)と英語ぐらいしか実績はないのですが、初心に戻る意味でGoogleのウェブマスター ツールを復習。
ヘルプの「多地域、多言語のサイト」というページを読むと、
「多地域、多言語のサイト」に関してGoogle曰く(抜粋&要約して書くと)、
- Google はlang 属性(enとかja、frのようなコード)ではなく、コンテンツから言語を判断する。
- 原文と訳文を一緒に表示することは避けてくれ。
- 各言語のページ間で相互リンクすることを推奨。
- ユーザーの認識言語に基づいて自動的にリダイレクトするな。
って感じですが、1つ目、2つ目は常識として、最後のリダイレクトはちょっとヤバい。
別のクライアントだけど、ブラウザにセットされたデフォルト言語で言語別のTOPページに自動振り分け(リダイレクト)ってのをやっちゃったよぉ(汗)
これ、なんでGoogleさんが自動的にリダイレクトをダメとしてるのかというと、
このようなリダイレクトを行うと、ユーザー(と検索エンジン)がサイトのすべての言語バージョンを見られなくなる場合があります。
と書いてありました。
とりあえずは検索エンジン用にSitemap.xmlを入れているのと、ユーザー用に言語間の切換えリンクを入れているのでセーフかと・・。
でもこういうリダイレクトって多いよね。
例えば米国のバスケのNBA(http://www.nba.com)にアクセスすると、
日本語の公式サイト(http://www.nba.co.jp/?gr=www)にリダイレクトするとか・・・。
あと、スタッフブログ(Wordpress)にGoogle のウェブサイト翻訳ツールを入れてくれという要望もあったので、それはサクッと済ませました。
やり方は簡単。
Google翻訳のツールのページで、ソース(スニペット)を作って、ページに貼るだけ。
下記はテストのために、一時的にこのブログのテンプレートに貼ったときのキャプチャーです。
いまは削除しています。
なにしろこのブログ、海外からのアクセスなんて0.5%以下だから、翻訳ツール入れても意味ないのでww。
はじめまして。
私はドメインのトップに
index.html.ja
index.html.ko
を置いて言語振り分けしているのですが、
これはどうなんでしょうね。
ちなみに、今グーグル検索してみたら
index.html.jaの内容ではヒットしましたが、
index.html.koの内容(ハングル)ではヒットしませんでした。
.htaccessでjaを優先表示するようにしているので、
jaのページのみインデックスされるようです。
sugiyamaさん、コメントありがとう
なるほど、そういう手もあるんですね。考え付きませんでした。
ただ、MultiViewsはApacheの設定だから、UPするサーバの設定に依存しますよね。
制作する側からすると、できればどのサーバでも(サーバ設定)に依存せずに動作OKなようにしたいって時にはツライかも。
あとは、試してないですが、
index.html.ja と index.html.ko の行き来というか、いったんブラウザの言語で自動振り分けされても、そのあとユーザーが希望言語を再選択できれば問題ないですよね。
index.html.ja、index.html.koは言語振り分けのみに使うのがいいでしょうね。日本人が韓国人のコンピュータを使うとindex.html.koの方にアクセスしてしまうことになるので、index.html.koには「アンニョンハセヨ Welcome」ぐらい書いておいて、あとは閲覧者自身にwww.hogehoge/ja/やwww.hogehoge/ko/を選ばせるようにすべきでしょう。
私はあとは、エラー画面も404.html.ja、404.html.koなどのマルチ言語にしてあります。SEO対策上マルチ言語は良くないようなことを聞いたので、その他ではマルチ言語は使っていません。
sugiyamaさん、追加コメントありがとう
エラー画面はなかなか気が回らず忘れられてしまいそうですが、その振り分けは大事ですね。
というか、今はやって無い某多言語サイトがあって、そのサイトを構築したとき、確かエラー画面の振り分けは失念してたようなwww
あと、それぞれのページをDir分けしたときのDir名称には迷いました。
私は国別より言語別だろうということで言語コードに使われる2文字のレターコード
日本語=ja、英語=en、韓国語=ko、繁体字=tw(zh-tw)、簡体字=cn(zh-cn)、ドイツ語=de、といった名称にしたのですが、他のサイトではjp(日本語)、kr(韓国語)とかを使うところもあって、不統一なんですよね。
言語別のDir名はISO 639を参考にすれば後ろ指をさされる(?)ことはないでしょうね。
言語別にjp(日本語)、kr(韓国語)を使っている人が多いですが、こちらのISO 3166-1方式は国家別にする時に使うのがいいと思います。
私の好みとしては、国家別の方はjpn、kor、usaなどの3文字です。これだとfr(フランス語ファイル)、fra(フランス関連)と自分の中ではっきり区別がつくので気持ちがよい(自己満足)。
ちなみに、2、3年前(?)に韓国の公的機関が日本語ページのDir名に「jap」とつけていて、これが2ちゃんねるなどで話題になり、その後Dir名が修正されたことがあります。
しかし、ドイツのサイトでも日本語ページのDir名に「jap」をつけていたのを見たこともあり、あんまり「蔑称だ!」と言うのもどうかと思います。「japan」の頭3文字が「jap」なので…。まあ、韓国の公的機関が「jap」を使うのはどうよ、ってことはありますけど。
sugiyamaさん、いつも情報、ご意見ありがとう
>ちなみに、2、3年前(?)に韓国の公的機関が日本語ページのDir名に「jap」とつけていて、
はいはい。覚えています。というか、そのJAPに関しては2011年01月31日に
韓国気象庁のURLの/JAP/は過剰反応じゃない?欧米人じゃないし。
という記事を書きました。
そうはいっても3レターコードであらわすなら、やはりJPNでお願いしたいところです。