私も企業サイトで、日本語のほかに英語と中国語に対応したことがあります。
hisa813さんと同じような考え方でした。
カテゴリに英語(english)と中国語(chinese)を持たせて、
英語ページを表示する際には、
wp-head('english');
とすることで header-english.php が呼ばれる、というかんじです。
フッタやサイドも同様です。
トップページ(index.php)だけは、URLに言語のパラメータを持たせて対応しました。
私も正しいのかどうかわからないですが、うまく運用できてます。
qTranslateのような、多国語化プラグインもありますよ。
Multilingual WordPress(@wordpress.org 英文)なども参考にするとよいかと。
テンプレートで自前で処理する方法が良いこともあるかと思いますが、
今後、ページ・投稿を増やす場合に、誰がアップ(入力)するのか、
ページ数はどれくらいか、外国語サイトがどれくらい重要か、
Wordpressのメンテナンスを誰かに引き継ぐようなことはないか
など、じっくり考えた方が良いかと。
私の場合は、和文と英文だけでしたが、英文が必要なページも数ページだけで、
今後管理を引き継ぐ可能性があったので、いろいろと検討した結果、
wordpressには(プラグインも含めて)特に何もせずに、
英文の必要なページは、単純に日本語の下に同じ意味の英文を
掲載して、メニューに和文・英文併記しただけで済ませました。
結果、修正が必要になっても、日本語と一緒に修正できるので、片方だけ修正
し忘れたりすることもなく、管理上も楽ですし、私の場合は、
英文しか読めない方が少なかった(基本的に日本にいる外人の方しか見ない)ので、英語があって親切だとは聞きますが、特段不自由だという話は聞きません。
ご参考までに・・・
こんにちは 私も今英語のページを作っています。hisa813さんと同じでしょうか?ひとつのカテゴリを英語で作ります。
翻訳会社の担当者に以下のアドバイスをいただきましたので、ご参考になりますでしょうか?と思い、投稿いたします。
- メンテナンスを考えて日本語の本体のページとかけはなれた、デザインのものはやめたほうがよい。
- ぱんくずリストなど、ナビゲーションを有効に利用しなさい。
ヘッダは英語もはいっているので本体といっしょにして、single.phpだけ英語用に作って、そこにサイドもhtmlでいれての簡易バージョンで作っています。
英語圏の方になじみのよい(こんなデザイン見たことないというのは避けたい)ものを作りたくて、悪戦苦闘中です。お互い頑張りましょう!!
皆様お返事ありがとうございます。
>sysbirdさん
そうですか、同じ方法で取り組みやすいと思いました。良かったです。
ありがとうございます!!
因みにですが、
”トップページ(index.php)だけは、URLに言語のパラメータを持たせて対応しました。”
とありましたが、どういった形でしょうか??
もし、よければご回答頂けますと、助かります。
>aimaimさん
有難うございます、今回中国語もあり、プラグイン導入で解決出来るかわかりません。
ただ、素敵なプラグインでしたので、次回、別の言語を対応させるサイトを作る際には、
利用していきたいと思います。
>torikumoさん
同じ状況です。あと、中国語も御座います(汗)
ヘッダは英語もはいっているので本体といっしょにして、single.phpだけ英語用に作って、そこにサイドもhtmlでいれての簡易バージョンで作っています。
こんなやり方あるんですね!!参考になります。
お互い頑張りましょう!!有難うございます。
因みにですが、追加で、もしわかる方がいらっしゃったらご教授お願い出来ますでしょうか?意味が理解出来ずにおります。
<?php
$categories=wp_list_categories('style=none&child_of=13&echo=0&depth=1&hide_empty=0&orderby=ID&show_count=true&title_li=');
$tmp_categories = split("<br />\n\t", $categories);
foreach($tmp_categories as $tmp_val){
preg_match_all("/((<a href=\")([^']*)(\/\?cat=))((\d{1,3})(\"[^>]*)(>.*?))(<\/a>)( \(\d+\))/", $tmp_val, $Arrlinks, PREG_SET_ORDER);
if($Arrlinks[0][6] == $_GET['cat']){
echo("<li>".$Arrlinks[0][1].$Arrlinks[0][6]."\" class=\"Active".$Arrlinks[0][7].$Arrlinks[0][8].$Arrlinks[0][10].$Arrlinks[0][9]."</li>");
}else{
echo("<li>".$Arrlinks[0][1].$Arrlinks[0][6].$Arrlinks[0][7].$Arrlinks[0][8].$Arrlinks[0][10].$Arrlinks[0][9]."</li>");
}
}
?>
私の場合はトップページから日本語、英語、中国語に分ける必要があったので、
URLにパラメータを持たせることで、トップページに何語のメニューと記事一覧を表示するかを判断しました。
今思えば英語カテゴリがあるのだから英語のトップページは /en/ でよかったのかな?
single.phpではカテゴリを見れば言語が特定できますので、ひとつですみました。
sysbirdさん
ありがとうございます。
因みにですが、別の方法として、
example.com/english/ にWordpressをダウンロードして、それを全て英語にする事
って可能ですか?
元サイトが example.com
ダッシュボード example/wp-admin
英語中国語それぞれのディレクトリを作って
example/english/.com、example/chinese/.com
ダッシュボード example/english/wp-admin example/chinese/wp-admin
上記のような方法って可能でしょうか?
何しろ、初心者で、コードが解読出来ずに、現在の方法ですと、
カテゴリーが出力出来ない事がありまして(汗)
言語ごとに別サイトとして構築する方法も可能です。
私も考えたことがありますが、
テーマやプラグインなどメンテナンス性が悪くなる、
ユーザの混乱をまねく(言語ごとにダッシュボードが別なのがわかりずらい)の理由から、
やはりシングルサイトで対応しました。
どのように運用したいか、ユーザさんと相談するとよいかもしれません。