バージョン選択

フォーラム

メニュー

オンライン状況

32 人のユーザが現在オンラインです。 (21 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 32
もっと...

サイト内検索

質問 > その他 > フロント画面で表示言語の切り替えが可能か

その他

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
liehuo
投稿日時: 2020/12/30 0:49
対応状況: −−−
新米
登録日: 2020/12/30
居住地:
投稿: 5
フロント画面で表示言語の切り替えが可能か
お客様に見えるフロント画面で閲覧するお客様が自分に合った言語を選択し、表示言語を切り替えられることが可能でしょうか?やり方をご教授お願い致します。
468
投稿日時: 2020/12/30 13:39
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 3217
Re: フロント画面で表示言語の切り替えが可能か
今はGoogle ウェブサイト翻訳ツールがサービスが終了してしまった為、
商品情報を含めてユーザー側で複数言語の表示切替を行えるようにするには、かなりのカスタマイズが必要となります。

残念ながら、とてもじゃないですがここでやり方を教える事が出来るようなボリュームではないと思います。


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

liehuo
投稿日時: 2020/12/30 18:45
対応状況: −−−
新米
登録日: 2020/12/30
居住地:
投稿: 5
Re: フロント画面で表示言語の切り替えが可能か
468さま

ご連絡ありがとうございます。

ちなみにtwigにtransフィルタを使用しているが、日本語のままで表示されるのは、「Google ウェブサイト翻訳ツールがサービスが終了」の原因でしょうか?

例:
{ '配送情報'|trans }}
ご注文手続き画面で日本語「配送情報」が表示されます。

.envの設定
ECCUBE_LOCALE=en
468
投稿日時: 2020/12/30 20:24
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 3217
Re: フロント画面で表示言語の切り替えが可能か
.envの設定がサーバにキャッシュされているのではないでしょうか?
管理画面>コンテンツ管理>キャッシュ削除を実行するとenの言語が反映されるのではないでしょうか?
(envの設定はサーバ単位に反映されると思いますのでサイトにアクセスしてきたユーザーに合わせて言語を切り替えるという事はできないと思います。
リクエストヘッダーのAccept-Languageに合わせてサイトの言語を切り替えるにはカスタマイズが必要になるかと思います)


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

liehuo
投稿日時: 2020/12/31 9:45
対応状況: −−−
新米
登録日: 2020/12/30
居住地:
投稿: 5
Re: フロント画面で表示言語の切り替えが可能か
ご返信ありがとうございます。
envの設定はサーバ単位に反映されることを理解しました。

ちなみに教えて頂いたやり方でキャッシュを削除しても、twigに記載した日本語(<label>{{ '配送方法'|trans }}</label>)がenの言語に反映されないようです。一部PHPコードで埋めた日本語がenに変わりました。
468
投稿日時: 2020/12/31 10:37
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 3217
Re: フロント画面で表示言語の切り替えが可能か
すみません。勘違いしていました。
twigファイル内の記述は以下のようにメッセージIDを引数で渡す形に書き換える必要があるのではないかと思います。
<label>{{ 'front.mypage.delivery_provider'|trans }}</label>

/src/Eccube/Resource/locale/以下の
messages.ja.yamlと
validators.ja.yaml
でメッセージIDを確認できます。


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

liehuo
投稿日時: 2020/12/31 10:59
対応状況: −−−
新米
登録日: 2020/12/30
居住地:
投稿: 5
Re: フロント画面で表示言語の切り替えが可能か
ご返信ありがとうございます。

標準機能のtwigに「<label>{{ '配送方法'|trans }}</label>」のように直接日本語で定義した箇所が多く存在しています。かなりのカスタマイズが必要となりますね。
DELIGHT
投稿日時: 2021/1/4 18:35
対応状況: −−−
仙人
登録日: 2010/2/3
居住地: 熊本県・九州・長野県・関東甲信越
投稿: 572
Re: フロント画面で表示言語の切り替えが可能か
こんにちは。

少し長いですがご容赦ください

僕ができたやり方ですが
localeにあるmessages.〇〇.yamlの言語切り替え({{'hoge'|trans}}の言語切り替え)は

EventListener.php
<?php

~(割愛)
use Symfony\Component\DependencyInjection\ContainerInterface;
use Eccube\Common\EccubeConfig;
use Symfony\Component\HttpKernel\KernelEvents;
~(割愛)
private $container;

private $eccubeConfig;

public function __construct(
  EccubeConfig $eccubeConfig,
  ContainerInterface $container
){
  $this->eccubeConfig = $eccubeConfig;
  $this->container = $container;
}
public static function getSubscribedEvents()
{
  return [KernelEvents::REQUEST => 'onKernelRequest'];
}

public function onKernelRequest(GetResponseEvent $event)
{
  $request = $event->getRequest();
  $lang = $request->get('lang'); //<-フロントのinput name="lang"のvalue 例)'en'や'ja'など
  $request->setDefaultLocale($lang); 
}

という形でできました。
※参考にした記事があったのですが見つかりませんでした・・

また商品名(など)を多言語にするのであれば
https://panda-telecoms.github.io/2020/06/26/%E3%80%90EC-CUBE4%E3%80%91DoctrineExtensions%E3%81%A7EC-CUBE%E3%81%AEDB%E3%82%92%E5%A4%9A%E8%A8%80%E8%AA%9E%E5%8C%96%E3%81%99%E3%82%8B/
を参考にするといいと思います。

また、プラグイン開発が前提(挫折しました)でしたので他の実装の挙動の兼ね合いがありバージョンはeccube4.0.4~4.0.5?でのみでしか動作を確認できておりません。

いずれにしても全て多言語対応させるとなるとかなりのカスタマイズが必要になりますが少しでも参考になれば幸いです

追記)不要な記述が多かったので修正しました


----------------
+ DAISY inc. -------------------- +
EC-CUBE構築・カスタマイズサービス
EC・WEB構築などお気軽にご相談ください。

デイジー株式会社
http://daisy.link/

liehuo
投稿日時: 2021/1/4 18:58
対応状況: −−−
新米
登録日: 2020/12/30
居住地:
投稿: 5
Re: フロント画面で表示言語の切り替えが可能か
明けましておめでとうございます。
とてもありがたいアドバイスを頂き、ありがとうございます。

このやり方を参考させて頂きこれからカスタマイズしてみます。
ありがとうございました。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,923名です
総投稿数は110,012件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1296
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.