私はmagentoバージョン1.3.2.4を使用して多言語サイトをセットアップしましたが、いくつかの奇妙な問題に遭遇しました。私が助けを得ることができることを願っています。
要件は、新しいストアビュー(オランダ語)を追加し、現在のストアのURL構造も維持することでした。そのため、現在のURLにデフォルトのストアコード(fr)を追加するため、管理者構成で「ストアコードをURLに追加」を使用できませんでした。 )。したがって、最終的には次のURL構造が必要でした。
デフォルト言語(fr)のURLスタイル: http: //www.domainname.com オランダ語バージョンのURLスタイル: http: //www.domainname.com/nl
このために、次の手順を実行しました。
- ストアビューを作成しました(コードnl)
nlという名前のフォルダを作成しました
- メインのWebルートから.htaccessとindex.phpをコピーして、このフォルダーに貼り付けました
- index.phpで次のようにコードを変更しました:
Mage :: app()-> getLocale()-> setLocale('nl_NL');
$ mageRunCode='オランダ';
$ mageRunType='ストア';
Mage :: app()-> setCurrentStore(1); //1はnlストアIDです
Mage :: run($ mageRunCode、$ mageRunType);
サイトを立ち上げてhttp://www.domainname.com/nlにアクセスすると、インターフェイスは期待どおりにオランダ語になっていますが、次のタスクを実行するとリダイレクトされます
デフォルトの言語に戻します。
- ログイン
- チェックアウト/カートに移動
- 新規ユーザーのサインアップに移動
DOMのビューソースを確認すると、一部のURLがnl言語ではなくデフォルト言語を指していることがわかりました。たとえば、ログインフォームのアクション属性はhttp://www.domain.com/customer/account/loginPost/であり、http: //www.domain.com/nl/customer/account/loginPost/ではありません。
敬具、