バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

 > フロント機能 > 最近チェックした商品の履歴表示

フロント機能

新規スレッドを追加する

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
Doll
投稿日時: 2007/7/27 12:16
対応状況: −−−
新米
登録日: 2007/7/26
居住地:
投稿: 1
最近チェックした商品の履歴表示
EC-CUBE使わせて頂いてます。
最近チェックした商品の履歴を表示する機能が必要だったので作ってみました。

detail.phpを見ると、DBに履歴を保存するよう機能追加予定(?)のようですが、
こちらは、「詳細」まで見た商品の履歴をセッションに保存しています。
よって、ブラウザを再起動したら、履歴はリフレッシュされます。会員ログインは必要ありません

html/products/detail.php の最後に以下を追加
//いま見ている商品のID
$Item_id = $_GET['product_id'];

//「最近チェックした商品」用のセッションがある時
if( is_array($_SESSION['arrChkItemNum']) ){
	//その商品がセッションになければ追加.
	if( !(in_array( $Item_id, $_SESSION['arrChkItemNum'] ))){
			$_SESSION['arrChkItemNum'][] = $Item_id;
			$_SESSION['arrChkItemDat'][] = $arrRet[0];
			//4つ使い切ってれば、頭ひとつ取る
			if( $_SESSION['arrChkItemNum'][4] != "" ){
				array_shift($_SESSION['arrChkItemNum']);
				array_shift($_SESSION['arrChkItemDat']);
			}
	}
}
//セッション自体が無ければ作る
else{
	$_SESSION['arrChkItemNum'][] = $Item_id;
	$_SESSION['arrChkItemDat'][] = $arrRet[0];
}


管理画面から「デザイン編集」→新規ブロック作成
作ったtplファイルに以下のコードをペースト
<!--{if $smarty.session.arrChkItemDat}-->
<!--▼履歴情報ここから-->
<table width="400" border="0" cellspacing="0" cellpadding="0" summary=" ">
	<tr valign="top">
		<td colspan="3">最近チェックした商品</td>
	</tr>
	<tr>
		<td colspan="3" height="10"></td>
	</tr>
	<!--{section name=cnt start=0 loop=4 }-->
		<!--{math assign="i" equation="x - y" x="3" y=$smarty.section.cnt.index}-->
		<!--{if $smarty.session.arrChkItemDat[$i]}-->
			<tr valign="top">
				<td width="90" align="left" valign="middle">
					<span style=margin-left:20;><a href="<!--{$smarty.const.URL_DIR}-->products/detail.php?product_id=<!--{$smarty.session.arrChkItemDat[$i].product_id}-->">
					<img src="<!--{$smarty.const.SITE_URL}-->resize_image.php?image=<!--{$smarty.const.IMAGE_SAVE_DIR}-->/<!--{$smarty.session.arrChkItemDat[$i].main_image|sfRmDupSlash}-->&width=60&height=60" alt=""></a></span>
				</td>
				<td width="310">
					<span class="fs12"><a href="<!--{$smarty.const.URL_DIR}-->products/detail.php?product_id=<!--{$smarty.session.arrChkItemDat[$i].product_id}-->">
					<font size=-1><!--{$smarty.session.arrChkItemDat[$i].name}--></font></a>
					<a href="<!--{$smarty.const.URL_DIR}-->products/detail.php?product_id=<!--{$smarty.session.arrChkItemDat[$i].product_id}-->"></a></span><br>
					<font size="-1"><!--{$smarty.session.arrChkItemDat[$i].main_comment|truncate:200}--></font>
				</td>
			</tr>
		<!--{/if}-->
	<!--{/section}-->
</table>
<!--▲履歴情報ここまで-->
<!--{/if}-->
tpl側は配置する場所によってデザイン等書き換えてください。
$smarty.session.arrChkItemDat[]には詳細で表示されるデータは大概入っていますので、
表示したいデータもある程度簡単に変えることが出来ると思います。
homan
投稿日時: 2007/7/27 13:59
対応状況: −−−
仙人
登録日: 2007/7/2
居住地: 宮崎県宮崎市
投稿: 633
Re: 最近チェックした商品の履歴表示
こんにちわ

コレ、すごくいいですね!
ますますECサイトっぽくなりそうです。
使わせて頂くかもしれません

この情報をDBに記録していけば、
アクセスランキングみたいなこともできそうですね。


----------------
このコミュニティでの投稿はボランティアの範囲に留めさせていただいています。個別の相談やカスタマイズは有償にて承っておりますのでご相談下さい。

[url=http://www.eccube-school.jp/]EC-CUBE

ゲスト
投稿日時: 2007/8/7 9:31
対応状況: −−−
Re: 最近チェックした商品の履歴表示
手順どおりにやってページに最近チェックした商品の情報は出てくるのですが
商品画像が表示されません。新しく商品登録をしてみましたが現状は、
商品画像ではなく全面灰色の画像が出てくる状態です。他に設定箇所などはあるのでしょうか?

V1.3.4を使っています。
adachi
投稿日時: 2007/8/7 9:56
対応状況: −−−
EC-CUBE開発チーム
登録日: 2007/2/14
居住地: 大阪
投稿: 93
Re: 最近チェックした商品の履歴表示
ゲスト様

開発チームの足立です。

1.3.4から、resize_image.phpはIMAGE_SAVE_DIR以下のファイルのみ表示できるように変更されてます。
ですのでresize_image.phpにはファイル名を渡すようにすれば表示されるかと思います。

修正前
<img src="<!--{$smarty.const.SITE_URL}-->resize_image.php?image=<!--{$smarty.const.IMAGE_SAVE_DIR}-->/<!--{$smarty.session.arrChkItemDat[$i].main_image|sfRmDupSlash}-->&width=60&height=60" alt="">

修正後(上の赤字部分を削除)
<img src="<!--{$smarty.const.SITE_URL}-->resize_image.php?image=<!--{$smarty.session.arrChkItemDat[$i].main_image|sfRmDupSlash}-->&width=60&height=60" alt="">

これでどうでしょうか?
ゲスト
投稿日時: 2007/8/7 20:23
対応状況: −−−
Re: 最近チェックした商品の履歴表示
そのとおり修正したところ正常に表示されるようになりました。
phpはほぼわからないのですが悪戦苦闘しながらやっております。
的確な答えを頂けるとすごく心強いです^^ありがとうございました!
NSX
投稿日時: 2007/8/12 4:30
対応状況: −−−
常連
登録日: 2007/7/31
居住地:
投稿: 61
Re: 最近チェックした商品の履歴表示
お世話になります、
すごくいいですね。
ゲスト
投稿日時: 2007/8/25 11:57
対応状況: −−−
Re: 最近チェックした商品の履歴表示
すみません、これはどのファイルを変更しますか?
knock
投稿日時: 2008/3/3 8:38
対応状況: −−−
半人前
登録日: 2007/12/20
居住地:
投稿: 25
Re: 最近チェックした商品の履歴表示
2系でないのかな?
ゲスト
投稿日時: 2008/3/24 8:46
対応状況: −−−
Re: 最近チェックした商品の履歴表示
2.1.1で対応は出来ないのでしょうか?
SHIGE
投稿日時: 2008/3/26 1:17
対応状況: −−−
半人前
登録日: 2007/7/5
居住地: JAPAN
投稿: 15
Re: 最近チェックした商品の履歴表示
現在友人のお店を作っている最中でこの機能がほしいといわれ
作ろうかと持っています。

ただ自分が作ろうとしているものはデータをセッションに保持
するのではなくクッキーにも持とうかと思ってます。

そうすれば、セッションが切れてもクッキーが消されるまでは
保持し続けれるので。。。

必要であれば、作成後にアップしましょうか?

それにしてもEC-CUBEは相変わらずバグが多いですねww
正式版使ってるのに明らかなデグレと思われる箇所がいくつかありました^^;

開発者の方がんばってください!
フラット表示 前のトピック | 次のトピック


題名 投稿者

 



ログイン


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

統計情報

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

投稿数ランキング

1
seasoft
7365
2
468
3217
3
AMUAMU
2712
4
nanasess
2303
5
umebius
2085
6
yuh
1818
7
h_tanaka
1610
8
red
1567
9
mcontact
1240
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
796
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.