バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > ログイン前の規格商品がカートにうまく入らない

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
fashionbas
投稿日時: 2015/7/2 11:30
対応状況: −−−
半人前
登録日: 2012/10/24
居住地:
投稿: 26
ログイン前の規格商品がカートにうまく入らない
[EC-CUBE] 2.11.2
[PHP] PHP 5.3.3
[データベース] MySQL 5.1.69-log

ログインをしていない状態の規格商品が正常にカートに入りません。
規格1の商品に関しては選択ができるのですが、規格が1,2,3とあった場合、
3を選択しカートに入れると、カート詳細は1が入ってしまいます。
規格2の商品に関しては、規格1は表示出来ているのですが、規格2が空白になり、
カートが入らない状況です。

ログイン後は正常に規格商品がカートに入ります。
どこかのjavascriptだと考えられますが、
ログインによって挙動しどのtplなのか見当がつきませんので、
ご指南頂きたいと思っております。
kitagawa
投稿日時: 2015/7/3 11:13
対応状況: −−−
半人前
登録日: 2015/4/1
居住地:
投稿: 28
Re: ログイン前の規格商品がカートにうまく入らない
fashionbas 様

その現象が起こるページやカスタマイズの状況などの詳細が不明なためデフォルトの設定で話しますが、
商品個別ページの場合/data/Smarty/templates/default/products/detail.tpl
商品リストページの場合/data/Smarty/templates/default/products/list.tpl
にて表示を
html/js/products.jsにてスクリプトを記述しています。

まずは<head>タグ内のjavascriptにてclassCategoriesに規格のjsonデータが挿入されていること、products.jsで操作されるフォームのid,name等がそろっていること、規格を変更した場合にid=product_class_idのinputタグのvalueが正しく変更されているのかを確認されるとよいかと思います。

より詳細な状況を記述いただくとより詳細なアドバイスができるかもしれません。


----------------
****************************************
株式会社システムフレンド
北川 浩也(Hiroya Kitagawa)
改造専門店・EC-CUBE工房
****************************************

fashionbas
投稿日時: 2015/7/3 13:24
対応状況: −−−
半人前
登録日: 2012/10/24
居住地:
投稿: 26
Re: ログイン前の規格商品がカートにうまく入らない
ご返信ありがとうございます。
その現象が起こる個所は、ログインしていない商品一覧ページと、詳細ページになります。
現象詳細は規格1をかごに入れた時、どれも同じ規格商品が入ってします。(選択肢は表示されます。)
規格2についてはかごに入らず表示もされません。規格1は表示はされます。規格2は白のままです。


list.tpl
<script type="text/javascript">//<![CDATA[
function fnSetClassCategories(form, classcat_id2_selected) {
var $form = $(form);
var product_id = $form.find('input[name=product_id]').val();
var $sele1 = $form.find('select[name=classcategory_id1]');
var $sele2 = $form.find('select[name=classcategory_id2]');
setClassCategories($form, product_id, $sele1, $sele2, classcat_id2_selected);
}
</script>

detail.tpl
<script type="text/javascript">//<![CDATA[
// 規格2に選択肢を割り当てる。
function fnSetClassCategories(form, classcat_id2_selected) {
var $form = $(form);
var product_id = $form.find('input[name=product_id]').val();
var $sele1 = $form.find('select[name=classcategory_id1]');
var $sele2 = $form.find('select[name=classcategory_id2]');
setClassCategories($form, product_id, $sele1, $sele2, classcat_id2_selected);
}
//]]>
</script>

となっております。

また<head>のscriptをログイン前、ログイン後と検証したところ、
ログイン後はclassCategoriesに規格のjsonデータが挿入されているようであり、ログイン前はscriptがありませんでした。

よろしくお願いいたします。
kitagawa
投稿日時: 2015/7/3 14:31
対応状況: −−−
半人前
登録日: 2015/4/1
居住地:
投稿: 28
Re: ログイン前の規格商品がカートにうまく入らない
script自体が存在しないのであれば
/data/Smarty/templates/default/site_frame.tpl

<script type="text/javascript">//<![CDATA[
<!--{$tpl_javascript}-->
$(function(){
<!--{$tpl_onload}-->
});
//]]>
</script>
がログイン済みの場合のみ表示するif文内になっている可能性があります。


----------------
****************************************
株式会社システムフレンド
北川 浩也(Hiroya Kitagawa)
改造専門店・EC-CUBE工房
****************************************

fashionbas
投稿日時: 2015/7/6 18:09
対応状況: −−−
半人前
登録日: 2012/10/24
居住地:
投稿: 26
Re: ログイン前の規格商品がカートにうまく入らない
確認しましたところ、記述通りif文が見つかりましたので、
修正したところ、ログイン前でも規格商品が正常にかごに入るようになりました。
ありがとうございました。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は88,685名です
総投稿数は109,932件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1638
8
red
1569
9
mcontact
1279
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.