5.7の他言語設定でデフォルトの言語を判断

2015年3月21日 at 17:47

バージョン5.7の多言語設定で、現在の言語をアイコンで表示しようとしてデフォルトの「言語切り替え」ブロックを挿入しました。
デフォルトのカスタムテンプレートを参考にクラスが入るようにしてみましたが、どうもうまく動かずデフォルトのブロックにしましたが、それでもうまく動きません。

if (is_object($defaultLocale) && $defaultLocale->getCollectionID() == $ml->getCollectionID()) { ?> クラス

この部分の$defaultLocale->getCollectionID() を出力しましたが、英語でも日本語でも同じ値が帰ってきてしまいます。
なにか設定が間違っているのか?取る値が間違っているんでしょうか?

タグ:

Re: 5.7の多言語設定でデフォルトの言語を判断

2015年3月23日 at 14:55
すいません。

アゲときます。

ちと、めっちゃ興味あるご質問なんですが、
まだ検証できてない・・・orz
 

Re: 5.7の他言語設定でデフォルトの言語を判断

2015年3月27日 at 0:16
すいません。
もともとの質問なんですが、

これって「言語切り替え」のブロックですよね?

$defaultLocale ですがサイト全体のデフォルト言語の設定のことをおっしゃっているような気がします。その場合は、結果は変わらないですね。

それとも、今いるページの言語がどちらの言語であるかを処理したいのでしょうか。
その場合は、 $locale が現在の言語情報を入れているような気がします。

って答えでいいでしょうか。
 

Re: 5.7の他言語設定でデフォルトの言語を判断

2015年3月27日 at 13:22
返信ありがとうございます。
質問が言葉足らずでしたすいません。

原因がわかりました。
私のサイトの構成が問題なようです。

構成を1対1にしたかったので

グランドトップ
 |- JP(トップへリダイレクト)
  |- アバウト
  |- コンセプト
 |- en
  |- about
  |- cocept

のようななっていて、言語設定で多言語設定では、JPが日本語トップなんでグランドトップは多言語設定がない事になるんですかね?その際は、トップは日本語なんで、トップだったらスタイルを適用するという感じでいいのかな?

日本語のツリーをグランドトップにしたらなんかおかしくなる感じなんで、こういう使い方であってますかね?
 

Re: 5.7の他言語設定でデフォルトの言語を判断

2015年3月30日 at 9:18
> JPが日本語トップなんでグランドトップは多言語設定がない事になるんですかね?

あ、まさにそうです。

JP (トップへリダイレクト) が、いわいる日本語ページのトップになるので、多言語の情報はそちらまでにしか記録されていません。

なので、グランドトップはなんらかの形で強引に日本語トップとしてみせるような仕組みが必要になるかと思います。