phpLang.inc.php

サマリコンテンツの国際化を補助
リビジョン1.0
対応バージョン1.4.6_alpha
投稿者asari
投稿日2005-09-15 (木) 08:17:12

phpLang を PukiWiki 向けにカスタマイズしました。簡単な多国語サイトの構築の助けになればと思います。

Webブラウザの送る ACCEPT_LANGUAGE という HTTP リクエストヘッダを解釈して、各国語のコンテンツにリダイレクトします。 Cookie と Javascript が有効になっていると、言語環境を記憶してよきにはからいます。たぶん。

ライセンス

phpLangFink が改変したものをさらに改変したものですので、 GPL に従って配布されます。 また、国旗アイコンに関しては、GPLに従って Fink の Web サイトから流用しても問題ないと考えられます。

ダウンロード

スクリプト国旗 をダウンロードしてください。

インストール

phpLang.inc.php を plugin フォルダに、 flags データを skin フォルダに、それぞれコピーしてください。

使用法

#phpLang

ページ名が「.en」や「.ja」などで終わっていない場合、 ブラウザの言語設定とサーバーに存在するページに応じて 「(自分のページ名).en」や「(自分のページ名).ja」などのページにリダイレクトされます。

ページ名が「.en」や「.ja」などで終わっている場合、 自分のページの他の言語版が他にないか判断され、ページ右上にリンクが置かれます。

使用例

たとえば、日本語のページ FrontPage をアラビア語化したいなら…

  1. PukiWiki を UTF-8化する
  2. 国際化したいページ FrontPage を FrontPage.ja と FrontPage.ar にコピーする。
  3. ページ FrontPage を編集し、内容をばっさり消して #phpLang のみにする。
  4. ページ FrontPage.ja と FrontPage.ar の内容の行頭に #phpLang と付け加える。
  5. ページ FrontPage.ar を編集し、ちゃんとアラビア語に翻訳する。

ページ FrontPage は問答無用でリダイレクトされるページになります (編集やプレビューがちょっとしにくくなってしまいます)。
画面右上に登場する国旗をクリックすると、その言語のページに移動します。
Javascript と Cookie を有効にすると、明示的に選んだ国旗を覚えていてくれます。
今回の実装では、実質的にページ名には英語を使うしかないかもしれません。。

ばしばしテストして、修正しちゃってください。

サンプルサイト

実際の動作を下のページでテストしています。
http://fink.sodan.ecc.u-tokyo.ac.jp/manta/

関連ページ

コメント



トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2023-11-21 (火) 23:42:13
Site admin: PukiWiki Development Team

PukiWiki 1.5.4+ © 2001-2022 PukiWiki Development Team. Powered by PHP 8.2.12. HTML convert time: 0.254 sec.

SourceForge