バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > 商品一覧のページ位置の記憶がしたい

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
pattys-ys
投稿日時: 2015/3/6 9:59
対応状況: −−−
半人前
登録日: 2015/2/16
居住地:
投稿: 11
商品一覧のページ位置の記憶がしたい
お世話になってます。

買い物かごに商品をスムーズに入れられるように、下記のページを参考に毎回買い物かごのページに飛ばないようにしました。
(IP直ですが、とても参考になりました)

ec-cube 購入ボタンを押してもページ偏移させない 2.13
http://158.199.189.212/?p=16

しかし、ページを下のほうにスクロールしたときに買い物かごに入れると、リダイレクトされてページ位置が一番上に戻ってしまいます。

改善しようと”data/Smarty/templates/default/products/list.tpl”に下記のような処理を埋め込みましたが、上手くいきません。


先頭付近

<script type="text/javascript">
<!--
window.scroll($x,$y);
//-->
</script>


242行目付近、<!--★カゴに入れる★--> input〜の上

<script type="text/javascript">
<!--
function getScrollPosition($axis) {
if($axis=='x') {
return document.documentElement.scrollLeft || document.body.scrollLeft;
}else if($axis=='y') {
return document.documentElement.scrollTop || document.body.scrollTop;
}// end if
}// end function
//-->
</script>


どうかお助けいただければ幸いです。
よろしくお願いいたします。
IPLOGIC
投稿日時: 2015/3/9 19:20
対応状況: −−−
一人前
登録日: 2014/12/8
居住地: 東京都
投稿: 96
Re: 商品一覧のページ位置の記憶がしたい
pattys-ys 様

カートに入れるボタンを押したときに、もとの位置にページをスクロールするようにしたい(アンカーリンクを設置したい)とのことでしょうか?

アンカーリンクの場合、php側でonloadするjavascriptをセットする方法があります。

カート投入したあとにスクロールする位置は242行目付近という理解でよろしいでしょうか?


----------------
アイピーロジック株式会社
EC-CUBE専用メール配信サービス「PostCarrier for EC-CUBE」
[url=http://www.rakusite.net/]EC-CUBE専用サイト保守監視サービス「らくらくサイト保守

pattys-ys
投稿日時: 2015/3/10 11:24
対応状況: −−−
半人前
登録日: 2015/2/16
居住地:
投稿: 11
Re: 商品一覧のページ位置の記憶がしたい
IPLOGIC 様

返信ありがとうございます。
開発をほとんどしたことがないので、おかしいことを言っていたらご容赦ください。

アンカーリンクではなく、お客様が「カートに入れる」ボタンを押したときの位置に戻したいと考えています。

現在は、1クリックでカートに入れる動作(買い物かごのページに飛ばない)を実現する処理の最後で、商品一覧ページにリダイレクトしています。
その為、商品一覧ページの下部でカートに入れるボタンを押すと、ブラウザを更新した状態になり、商品一覧ページの一番上まで戻ってしまいます。

よろしくお願いいたします。
IPLOGIC
投稿日時: 2015/3/10 21:07
対応状況: −−−
一人前
登録日: 2014/12/8
居住地: 東京都
投稿: 96
Re: 商品一覧のページ位置の記憶がしたい
pattys-ys 様

商品一覧ページでカート投入したあと、カートページにリダイレクトせずに、もとの商品一覧の位置に戻りたいとのことでしょうか。

まず、LC_Page_Products_List.phpの564行目付近に

      //SC_Response_Ex::sendRedirect(CART_URL, $arrQueryString);
      //SC_Response_Ex::actionExit();
      $this->tpl_onload .= 'location.hash=\'cart_insert_'.$target_product_id.'\';';


のようにカート画面に遷移するロジックの下に上記のようなtpl_onloadを追記してください。

次にlist.tplの148行目付近(<div class="list_area clearfix">の上)に
<a name="cart_insert" id="cart_insert_<!--{$id}-->"></a>


を追記してください。

これでカートに入れるボタンを押したとき、元の位置に戻ると思います。


----------------
アイピーロジック株式会社
EC-CUBE専用メール配信サービス「PostCarrier for EC-CUBE」
[url=http://www.rakusite.net/]EC-CUBE専用サイト保守監視サービス「らくらくサイト保守

pattys-ys
投稿日時: 2015/3/11 12:39
対応状況: 解決済
半人前
登録日: 2015/2/16
居住地:
投稿: 11
Re: 商品一覧のページ位置の記憶がしたい
IPLOGIC 様

ご教示頂いた方法で実現できました。
非常に助かりました。ありがとうございました!



スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

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

投稿数ランキング

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