言語による条件分岐について

2018年6月18日 at 21:54

多言語機能を利用して日本語と英語に対応したサイトを制作中です。
ヘッダーやフッターは「多言語版のグローバルエリアを作成」機能のおかげで要件の大部分を満たせそうなのですが、読み込むファイルを分けた方が管理上望ましいと感じる箇所があります。
例えば日本語ではfooter.php、英語ではfooter-en.phpを読み込むなど、表示中の言語で条件分岐してテンプレートで読み込むファイルを変更する方法はございますでしょうか。


# concrete5 バージョン
8.3.2

# PHP バージョン
7.1.4

# サーバー
エックスサーバー

# クライアント
macOS 10.12 + Firefox 60

タグ:

Re: 言語による条件分岐について

2018年6月19日 at 11:02
標準の Elemental テーマにもあるコードを使えば良いと思います。例:

if (Localization::activeLanguage() == 'ja') {
// 日本語
} else {
// それ以外
}

http://github.com/concrete5/concrete5/blob/3ee14f620cd3b5f7cab3fb840b4299e41a4f649a/concrete/themes/elemental/elements/header_top.php#L3
 

Re: 言語による条件分岐について

2018年6月19日 at 13:17
hishikawa様

ご提案いただきました方法で実現することができました。
Elementalテーマのご指摘の部分は、当方で使用中のheader.phpにも記述されておりました。
これを利用すれば良かったのですね、早々にご回答いただきましてありがとうございました。