• ベストアンサー

htmlでページをユーザーの言語で表示させる方法

twitterやfacebookなどの多言語サイトなどでは、アクセスしたユーザーの言語に翻訳したページを表示しています。このようなページを学校の課題として作りたいのですが、構築の仕方がよくわかりません。 自分の中では、多言語に翻訳したデータベースをhtmlもしくはjavascriptなどで引用してくるのではないか(ja属性など)と思っていますが、あっているのかどうか、また構築の仕方・方向性がよくわかりません。また、google翻訳やjQueryの多言語翻訳ツール等での自動翻訳は正しい翻訳にならないと思うので考えていません。 どなたか教えていただけるとありがたいです。お願いいたします。

  • HTML
  • 回答数2
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
  • chu2oyaji
  • ベストアンサー率31% (17/54)
回答No.2

>言語データベース(単語を翻訳した一覧)はどのように構築するものなのでしょうか。 自動翻訳は使わないという事なので、 各言語でのメッセージは、自分で用意するんですよね? (1)メッセージ取得 例えば、MySQLなどのデータベースに  message1 メニュー ja  mesasge1 menu en のような形で格納しておいて、 日本語ペ-ジなら、message1 jaで検索して、「メニュー」を取得、 英語ペ-ジなら、message1 enで検索して、「menu」を取得。 もちろん、データベースでなくて、ただのファイルでも良いです。 とにかく、message1とjaから「メニュー」が定まるように作れば良いわけです。 (2)出力 CGIから、(1)で取得したものを、所定の位置へ出力します。 「所定の位置へ出力」は、 phpなら、<?php print $message1; ?>的な書き方で。 perlなら、HTML::Templateあたりを使えば実現できます。

参考URL:
http://search.cpan.org/~samtregar/HTML-Template-2.9/Template.pm
sh84fg6d
質問者

お礼

仕組みや方法など、とてもよくわかりました。 詳しくありがとうございます。課題頑張りたいと思います。

その他の回答 (1)

  • chu2oyaji
  • ベストアンサー率31% (17/54)
回答No.1

CGIを作ってHTTP_ACCEPT_LANGUAGEを見て判断するのが 一番まっとうな方法かと思います。 CGIを使わず、javascriptで判断しようとすると、 navigator.language関連を参照する事になりますが、 環境によって、HTTP_ACCEPT_LANGUAGEとは違う結果になります。 効果はそれなりですが、やってる事の意味はデタラメなので、オススメはしません。 htmlだけでやるなら、素直に英語ペ-ジと日本語ページを作って、 リンクをはって、ユーザに選択されればOKです。 詳しい事は、 「HTTP_ACCEPT_LANGUAGE」や「navigator.language」で ぐぐってみると分かると思います。

sh84fg6d
質問者

お礼

どうもありがとうございます。 HTTP_ACCEPT_LANGUAGEからのユーザー言語の特定・言語データベースの参照を行うCGIを構築し、ページを表示させるという方向性はわかりましたが、言語データベース(単語を翻訳した一覧)はどのように構築するものなのでしょうか。漠然とした質問ですが申し訳ありません。 どうぞ、お願いいたします。

関連するQ&A

  • フェイスブック Like Boxで意図しないページ

    お世話になっております。 FacebookのLike Boxを利用し、FacebookページをWebサイトに埋め込みたいと思ったのですが、特定のブラウザでのみ、意図しないページが表示されてしまいます。 こちらの↓サイトを参考に、とあるお店のFacebookページを埋め込みました。 http://www.ring-and-link.co.jp/dream2000/user/other/other-47/other-47.html するとFirefoxでのみ、なぜか「Facebook Developers」のページが表示されてしまいます。 アドオンや、SNSのログイン情報が関係しているのでしょうか?具体的には Google Chrome: →問題なく表示される。facebookログイン状態に無し。Twitter、Googleともにログインしている。 IE: →問題なく表示される。Facebookログイン状態にあり。Twitterもログインしている。Googleはログインしていない。 Firefox: →Facebook Developersが表示されてしまう。facebookログイン状態に無し。Twitter、Googleともにログインしている。 ちなみに家族のPCを借りるとFirefoxでも問題なく表示されていました。 私が仕事・プライベートともに常用している、自PCのFirefoxのみ、このような症状が出ます。 解決方法はありますでしょうか。ちょっとしたヒントでもかまいません。どうか宜しくお願い致します。

  • 言語の変換と表示について

    韓国語の入力がしたいのですが、出来ません。 エキサイトの翻訳ページに、[韓国語の表示の仕方]が出ていたので、その通りの作業をしたのですが、デスクトップ上の[あ般IMEパッド]などの表示があるバーに、風船?みたいな言語変換アイコンが出ません。 意味不明な説明で、申し訳ありませんが、どうしたら良いでしょうか? 随時、補足を入れますので、宜しくお願いします。

  • 多言語対応するには?

    Webサイトを構築しているのですが、多言語対応したいともっています。 よくページ上で国を選ぶと、表示文字がその国の言語になるWebサイトがありますが、ああいった機能はどのように実現しているのでしょうか? その国ごとにDBやhtmlを持っているのでしょうか? それとも、それらは一緒で、レスポンス返すときにMicrosoftなどが提供している翻訳APIなどを通して表示内容を変化させているのでしょうか? 以上、よろしくお願い致します。

  • 浅炼一下とはどういう意味ですか?

    Twitterで浅炼一下と引用リツイートをされたのですが、Googleで翻訳したところ「少し練習する」と出てきました。 ツイートにそのようなことを言われる内容はなかったので、恐らく翻訳が間違ってるのかなと思うのですが、実際はどういう意味なのでしょうか?

  • サイトがコピーされているのか判断できません。

    私はサイトを運営しています。 アクセス解析をしていたら、知らないタイトルのページがあったので調べたところ、日本語以外の言語に翻訳されたページが出現しました。ページデザインは、私が作ったサイトのものと同じです。 「きっと、誰かが翻訳したものだろう」と、最初は気にしなかったのですが、それから二ヶ月たった昨日調べたら翻訳されているページが増えていました。簡単な検索避けはしているのですが、これはコピーされているのでしょうか? それとも違うのでしょうか。 だんだん不安になってきてしまったので、独自に調べてみたのですが手詰まりになってしまっています。 以下に、その翻訳されたページのアドレスの1つを載せます。(●や■の部分は、私のサイトのURLです。) 【http://translate.google.com/translate?hl=ko&rurl=translate.google.co.kr&sl=ja&tl=ko&u=http://■■/●●/■■.html】 google翻訳されたものが記録されて残ってしまっている…ということでもあるのでしょうか? どうか、よろしくお願いします。

  • google翻訳 apiで pdfを翻訳する方法

    google翻訳 apiで pdfを翻訳する方法 いつもお世話になります。 google翻訳 api を使ってpdfを翻訳できるということを知り試してみました。 pdfファイルのurlを http://translate.google.co.jp/#ja|en| へ、ドラッグするとできました。 ここで、質問です。 上記の機能を自作のWEBページに実装することはできないでしょうか。 つまり、あるボタンをクリックすると、翻訳されたpdfのページが表示される。 または、自作のWEBページでボタンをクリックすると、 pdfのurlをgoogoleの上記翻訳ページへ送信して、自動的に翻訳されたpdfのページが開かれる。 と、いう方法でも構いません。 よろしくお願いいたします。

  • 韓国語のページを翻訳したいです

    別のパソコンで開くと、上の方にグーグルのバーが出てきてところどころですが自動翻訳してくれます。このパソコンにはそれが入っていないようです。 グーグルを検索してみてみると、ツールバーをダウンロードというのがありましたが、ツールバーというのは窓の枠そのものが変わってしまうのでは?と心配になりました。 できれば、窓をグーグルには変えたくなく(今のシンプルなデザインが気に入っているので)、翻訳だけを自動でしてくれるようなものを探しています。 あと、グーグルの翻訳は半分程度しかしてくれないし完璧ではないのですが、これは仕方のないことなのでしょうか? 完璧とは言わなくても韓国語のページ全体を大体で良いので翻訳できる良いツールがもしありましたら教えてください。

  • jQueryアコーディオンでリストウィジェット表示

    jQuery UI Accordionというjavascriptを使用しているのですが、Twitterのリストウィジェットを入れるとウィジェット内のリンクが機能しなくなってしまいます。 どのようにしたら良いでしょうか。 http://jqueryui.com/demos/accordion/ 上記のサイトの一番上にあるアコーディオンを使いました。 下記のページをiframeで表示しています。 http://www.seraphen.com/ff14/accordion.html

  • 音声投稿サーバーについて

    はじめまして 私今ボイスアプリ企画しています。 スマートフォンで録音して、TwitterやFacebookなどへ投稿できるアプリです。 TwitterやFacebookなどボイスの投稿できないため、 レンタルサーバーにデータベース作成して、PHP言語で送信/受信ファイル作成必要ですが 私サーバー系のスキル持っていないです。どちら様教えて頂けないでしょうか? また、無料のAPIなどあれば、教えてください。

  • 静的サイト 多言語化 /ja /en について

    お世話になります。 現在、静的ホームページにて、多言語化の処理をしようとしております。 ルートディレクトリには、index.htmlを用意し、英語圏用のコンテンツとなっています。 その下の階層には、 /en と /ja というフォルダがあり、そこに、 /en → 英語圏用ページファイル一式 /ja → 日本語圏用ページファイル一式 が入っています。 今回、各閲覧者の言語環境にて、 上記ディレクトリのファイルを表示させることを検討しております。 ウェブ上で調べたところ、 .htaccess を使用することで、 index.html.ja index.html.en への 分岐ができることは、記載があったのですが、上記ディレクトリのような、分岐の方法については、 私の力不足か、情報を見つけることができませんでした。 なんとか、上記内容にて、ホームページを構築したく思っております。 何卒ご教示のほど、よろしくお願いいたします。

    • ベストアンサー
    • HTML

専門家に質問してみよう