バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > 管理機能 > 同じIDでログインさせるけど、カートは分けたい

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
zakey
投稿日時: 2024/4/16 14:09
対応状況: 開発中
一人前
登録日: 2011/2/8
居住地: 兵庫県神戸市
投稿: 150
同じIDでログインさせるけど、カートは分けたい
▼テンプレート
[EC-CUBE] 4.2.2

お客様がログインするIDはみんなが同じものを使用するけど、カート部分はIPもしくはブラウザ毎で分けたいんですが、可能でしょうか?

カート情報永続化の部分を切れば実現できそうですが、カスタマイズする箇所を教えていただきたいです。
tattsu
投稿日時: 2024/4/16 14:25
対応状況: −−−
長老
登録日: 2023/12/23
居住地:
投稿: 214
Re: 同じIDでログインさせるけど、カートは分けたい
3系と同じようにセッションに保存したカートのIDだけすることになりそうですね。
(正確にはセッションに保存されているカートのキーだけ見てログイン時にマージしなければ良い?)

主にsrc/Eccube/Service/CartService.phpです。


----------------
-------------------
EC-CUBEカスタマイズ・バージョンアップ・不具合修正 
気軽にご相談ください。ゴールドランクパートナー。

zakey
投稿日時: 2024/4/16 15:37
対応状況: −−−
一人前
登録日: 2011/2/8
居住地: 兵庫県神戸市
投稿: 150
Re: 同じIDでログインさせるけど、カートは分けたい
src/Eccube/Service/CartService.php


if ($this->getUser()) {
            //$this->carts = $this->getPersistedCarts();
            $this->carts = $this->getSessionCarts();
        } else {
            $this->carts = $this->getSessionCarts();
        }


//$persistedCarts = $this->getPersistedCarts();
        $persistedCarts = $this->getSessionCarts();


に変えてみたんですが、うまくいかずです。
どこを変えるといいでしょうか?
zakey
投稿日時: 2024/4/16 15:41
対応状況: −−−
一人前
登録日: 2011/2/8
居住地: 兵庫県神戸市
投稿: 150
Re: 同じIDでログインさせるけど、カートは分けたい
引用:
正確にはセッションに保存されているカートのキーだけ見てログイン時にマージしなければ良い?


この形が合ってそうなんですが、わからずで。。。
tattsu
投稿日時: 2024/4/16 15:56
対応状況: −−−
長老
登録日: 2023/12/23
居住地:
投稿: 214
Re: 同じIDでログインさせるけど、カートは分けたい
mergeFromPersistedCartではないですかね

それを呼んでいるEccube\EventListener\SecurityListenerか。


----------------
-------------------
EC-CUBEカスタマイズ・バージョンアップ・不具合修正 
気軽にご相談ください。ゴールドランクパートナー。

tattsu
投稿日時: 2024/4/16 15:59
対応状況: −−−
長老
登録日: 2023/12/23
居住地:
投稿: 214
Re: 同じIDでログインさせるけど、カートは分けたい
そもそも同一会員の複数カートが登録されていてうまく動くのかどうか、
他の機能への影響なども考えると
かなり考えることが多くて難しいカスタマイズだと思います。
簡単ではないですね。


----------------
-------------------
EC-CUBEカスタマイズ・バージョンアップ・不具合修正 
気軽にご相談ください。ゴールドランクパートナー。

zakey
投稿日時: 2024/4/16 17:51
対応状況: −−−
一人前
登録日: 2011/2/8
居住地: 兵庫県神戸市
投稿: 150
Re: 同じIDでログインさせるけど、カートは分けたい
mergeFromPersistedCart あたりを色々と触ってるんですが、同一セッションになってカートは同期してしまいます。

便利機能ですが、ECCUBE 4系に入ってる「カート永続化機能」を切りたいだけなんです。
tattsu
投稿日時: 2024/4/16 20:26
対応状況: −−−
長老
登録日: 2023/12/23
居住地:
投稿: 214
Re: 同じIDでログインさせるけど、カートは分けたい

データベースに保存されることは避けがたいので、
カートがマージされないようにしてセッションに保存してあるカートのキーだけを常時使うようにするという方針でいいんじゃないかと思います。

ここで詳しい説明はできませんが、一応、カートのキーが入れ替わらないようにするのがポイントではないかと思います。

なお、カートの挙動を上書きするプラグインが入っていると話は変わってくるのでご注意ください。商品オプション系など。


----------------
-------------------
EC-CUBEカスタマイズ・バージョンアップ・不具合修正 
気軽にご相談ください。ゴールドランクパートナー。

zakey
投稿日時: 2024/4/17 19:34
対応状況: 解決済
一人前
登録日: 2011/2/8
居住地: 兵庫県神戸市
投稿: 150
Re: 同じIDでログインさせるけど、カートは分けたい
こちら個別でtattsuさんにお願いすることになりましたので、解決済みに変更しておきます。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は88,922名です
総投稿数は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.