601からまでを表示 (計959) |
言語によってコードを変えたいのですがどうやればできるでしょうか。
なぜそんなことがしたいかといいますと、日本向けに作った拡張フォームですが、郵便番号の検索機能とかは海外では不要なので、日本かどうかの判定をして、海外向けに使う場合、デフォルトではそのメニューが出ないようにしたいのです。
#英語で作ったフォームでも日本向けの場合、機能はあってもいいですよね。となると、海外で使う場合も機能は残すが、表示は英文というのもあるなあ。と思うので、その機能も使えるようにはしてもいいかなと思ったり。
Posted on 12月 10, 2011 at 4:56 午後
|
にわか教えてもらったばかりのやり方ですが、あとに続く開発者の為に、やりかた書いたページを作りました。というか私の備忘録ですが。
ご参考に
http://concrete5.tomo.ac/developer/message-mo/
Posted on 12月 10, 2011 at 4:42 午後
|
機嫌良く作業していると悩ましい問題にあたりました。
poeditを使うことで、問題は解決しますでしょうか。
1つは、ソースコードに埋め込むのは英文ですが、その英文が怪しい。ひとつひとつ確認とかしていたらとっても作業が終わらない。
ええい!とりあえず変な英語でもいいや!、と作業を続けたものの、結構多量にあるので後からも見直すのも大変。ええい!、英語もmessage.poをつくって、怪しい英語と怪しくない英語の変換をするか。ということで作業してます。
2つ目は、一旦、ソースを修正してt()を入れて、message.po を作っていますが、その後新しい機能をつけて、その際、t()でメッセージを入れていって、最後に再び、message.poを作る場合、いままで作った対訳のファイルがクリアされ、再度、ひとつひとつ埋め込まないといけないのでしょうか。
なければ、先にそのようなツールを開発しないとなあ。。。
Posted on 12月 10, 2011 at 4:30 午後
|
結局、5.4.2.2.jaを、新規にインストールした環境で試したらうまく行きました。
ありがとうございました。おかげで、モチベーションが復活しました。
実はここ1週間くらい、いろいろおかしいなあと思って、悩んだり弄くっていたのでおかしくなったのかもしれません。
拡張フォームの埋め込んでいた日本語のメッセージを全部英文に変えて、message.po|moで日本語になるようにしてみます。
xgettextやmsgfmtのエラーもでなくなりました。
Posted on 12月 10, 2011 at 2:24 午後
|
poファイルを作るときにも発生しますが、messages.poは問題なく作れているようです。
poeditで保存しようとすると、ヘッダーの設定が足らないみたいなエラーが出てmoが作れませんでした。
でもいろいろ設定をしていたら保存されるようになりました。
しかし結果は同じです。
エラーが出ますが、ファイルはうまくできているように感じます。
要は、パッケージが、そのパッケージのlanguages以下のmoを参照してくれてないように思います。
Posted on 12月 10, 2011 at 10:58 午前
|
追伸
実はコマンド実行で、以下のエラーメッセージが多量に出ます。
これが影響しているのでしょうかね。
xgettext: 現在の文字セット "CHARSET" は可搬性のあるエンコーディング名ではありません
/var/www/httpdocs/concrete5.4.2.2.ja_devel/packages/form_tomoac/languages/ja_JP.UTF8/LC_MESSAGES/messages.po: 警告: 文字セット "CHARSET" は汎用のエンコーディグ名ではありません.
ユーザの文字セットへのメッセージの変換はうまく働かないかも知れません.
xgettext: 現在の文字セット "CHARSET" は可搬性のあるエンコーディング名ではありません
Posted on 12月 10, 2011 at 9:03 午前
|
以前にも質問しましたが、途中で断念していました。
再び挑戦意欲が出てきたので、フォームメッセージのローカライズの方法を調べていますが、以下の点で悩んでいます。
日本語化の方法は、以下の本家に書いてありましたので、記載内容にしたがって作ってみました。
http://www.concrete5.org/documentation/developers/system/localization
具体的には、
/packeges/forms_for_tomoac/languages/ja_JP.UTF8/LC_MESSAGES/message.poとmo
を、作りました。
しかし、そのフォームの日本語への変換は、このローカルのmessage.moが参照されず、元々の/languages/ja_JP.UTF8/MESSAGES/message.po|moが参照されています。
どうすれば、特定のパッケージ専用のmessage.po|moが参照されるようになるのかわかりませんでしょうか。
Posted on 12月 10, 2011 at 8:55 午前
|
CentOS5の最新版が搭載されたXenによるVPSサーバーです。
http://www.saases.jp/hosting/hos_007.html
VPSなのでぜーんぶ、自分でサーバーの設定を行う必要がありますが、その分安いです。
月額450円(初期費が3000円いりますが)で、50GBのHDDが使えます。
最近ここに移設したところ、Concrete5のサイトがスカスカ動くようになりました。
ただ、移設前は5年以上前に契約して使っていたサーバーだったので、余計にそう感じるのかもしれません。
Posted on 12月 10, 2011 at 7:02 午前
|
ついでにもうひとつ。
ページタイプを作って、一旦コンポーザーに結びつけると、結びつきを切ってもそのページタイプが削除できなくなります。
エラーメッセージは、作ったページタイプを使ったページが存在するので、削除できない!と出るのですが、ホーム以外ぜーーんぶ消しても、ついでにそのホームを消しても削除できません。もっともホームは削除しても自動復活しますが。
これもコンポーザがらみですから、正式版ではなおるものと思いますが。
Posted on 12月 04, 2011 at 2:56 午後
|
やっぱりおかしい。
「設定」ボタンでページタイプで左フレームを選択し、確認しても確かに左フレームにチェックがあるのですが、「デフォルト」ボタンでブロックの編集画面のレイアウトは、右フレームのレイアウトになります。
もともとのテーマが、右フレームのテーマなのでその影響と思われます。
つまり、元々のテーマーが右フレームのテーマであれば、ページタイプで左フレームを指定しようが全幅を指定しようが、右フレームになりますので、「設定」でページタイプを指定しても意味がないようです。
「デフォルト」の編集画面で、ページタイプを変更できないのも残念。
どこかの不具合か、まだ実装されていないのか、、、β版であればそういうものかと。
せっかく勉強して、やっと分かって本式に使ってみようとしましたが、おあずけとなりました。
Posted on 12月 04, 2011 at 2:50 午後
|