バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > カートに入れる部分に発売前の商品ですと記載したい

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
pon-suke
投稿日時: 2009/6/25 21:47
対応状況: −−−
半人前
登録日: 2007/10/22
居住地:
投稿: 25
カートに入れる部分に発売前の商品ですと記載したい
個人的に欲しい機能ですのでお時間がある方わかる方でよければでいいのですが、
商品ページで在庫があるときはカートボタンが出ていて、在庫が0になると現在在庫はありませんと出ますが、発売前の商品と登録して、在庫数をたとえば99とかに設定した場合のみ、
「この商品は発売前です」
などと表示できればなと思っているのですが、もちろん他にいい方法があればそれでもいいのですが、

<!--{if $tpl_stock_find}-->
カゴに入れる
<!--{else}-->
現在在庫はありません。
<!--{/if}-->

こちらの構文で在庫が99の時にはというelse if 文というのはありえますでしょうか?

よろしくお願いします。
AMUAMU
投稿日時: 2009/6/26 0:35
対応状況: −−−
登録日: 2009/5/2
居住地: 東京都
投稿: 2712
Re: カートに入れる部分に発売前の商品ですと記載したい
お考えのように在庫数に応じた if〜else文 で表示の制御が可能だと思います。
テストしたわけじゃないですが、簡単な内容なので多分動くと思います。

<!--{if $arrProduct.stock_min == 99}-->
この商品は発売前です
<!--{/if}-->

こんな感じです。

まぁこれですと、1個売れただけで表示されなくなりますし規格がある時は変わるので、後はSmartyのマニュアル等も参考にカスタマイズするのが良いと思います。
在庫が一定数以上の時は、Aと表示し、一定数を下回ったらBと表示するような文が可能です。

Smarty マニュアル

※間違いがあったので一回書き直しました、すいません。


----------------
EC-CUBE公式エヴァンジェリスト
EC-CUBEインテグレートパートナー (株)スピリット・オブ
移転・拡張・高速化・問題解決
各種カスタマイズ・支援依頼承ります。

[url=h

pon-suke
投稿日時: 2009/6/26 1:04
対応状況: −−−
半人前
登録日: 2007/10/22
居住地:
投稿: 25
Re: カートに入れる部分に発売前の商品ですと記載したい
早速のご返信ありがとうございます。
後ほど試してみます。
またご提案のA以上もトライしてみますね。

ありがとうございます。
hakaselab
投稿日時: 2009/6/26 15:58
対応状況: −−−
半人前
登録日: 2008/9/4
居住地: 広島
投稿: 28
Re: カートに入れる部分に発売前の商品ですと記載したい
お世話になっております。高橋@株式会社システムフレンドです。
一部 AMUAMU 様のコードを拝借しますが、簡易には、カート表示とあわせる場合は以下のようなイメージになるかと思います。


<!--{if $arrProduct.stock_min == 99}-->
発売前
<!--{elseif !$tpl_stock_find}-->
品切れ
<!--{else}-->
カート
<!--{/if}-->


ただし、在庫処理も使用される場合は「99」の値は在庫数が絶対にその数を超えないという保証がないと、途中で「99」になったときに購入できなくなってしまいます。ご注意下さい。

以上よろしくお願いします。


----------------
-------------------------------
株式会社システムフレンド
高橋純一

EC-CUBE工房
http://ec-cube.systemfriend.co.jp/
-------------------------------

homan
投稿日時: 2009/6/26 16:29
対応状況: −−−
仙人
登録日: 2007/7/2
居住地: 宮崎県宮崎市
投稿: 633
Re: カートに入れる部分に発売前の商品ですと記載したい
このような場合は、
本当は在庫数で判断させるよりも、
別のフラグなりなんなりで管理した方が良いとは思いますが・・・、
まだPHPやデータベースをカスタマイズするのが苦手な場合は、
テンプレート側の処理を工夫して実現することになりそうですね。

商品ステータスを使えば、PHPのカスタマイズ無しでもいけるかもしれません。


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

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

seasoft
投稿日時: 2009/6/26 20:45
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7367
Re: カートに入れる部分に発売前の商品ですと記載したい
homan 様の、商品ステータス案は、まさに妙案だと思いますね。

カスタマイズ無しの EC-CUBE のスキームでは、パラメータ「mtb_status」と「mtb_status_image」で拡張します。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

ramrun
投稿日時: 2009/6/26 22:26
対応状況: −−−
仙人
登録日: 2006/11/3
居住地:
投稿: 789
Re: カートに入れる部分に発売前の商品ですと記載したい
商品の詳細-メインコメントの欄に

 ほげほげ
 商品説明を書いてみました
 この商品は::発売前::です

みたいにオレオレタグを書き込んで、regex_replaceでその部分を変数に格納して、その内容をifの条件に使うとか。

<!--{assign var=before_release value=$arrProduct.main_comment|regex_replace:"/^.*?::|::.*?$/s":""}-->
<!--{if $before_release == "発売前"}-->
    :
   中略
    :
<!--{/if}-->


で、発売するときはコメント欄から::発売前::を消します。

本当はwiki書式とか独自タグの機能があったらなぁと思ってます。
seasoft
投稿日時: 2009/6/27 4:35
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7367
Re: カートに入れる部分に発売前の商品ですと記載したい
自己レスです。

商品ステータスを使った場合の判定ロジックは、下記の感じになると思います。(動作未検証。商品詳細テンプレート向けのつもりです。)

<!--{if $arrProduct.product_flag[**] == "1"}-->
    発売前
<!--{else}-->
    カゴに入れる
<!--{/if}-->


** が「mtb_status」や「mtb_status_image」で指定した ID になります。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

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


 



ログイン


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

統計情報

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

投稿数ランキング

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
1285
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.