Labo

[EC-CUBE 2.12.3] 商品ステータス別に新着商品を表示したい

2013年03月02日 / 投稿者名:fukap


商品ステータスは、管理画面>システム設定>マスターデータ管理>mtb_status から
追加・修正が出来るので、商品に任意の属性やフラグを与えるのに結構便利だったりします。
今回はそんな商品ステータスごとに新着商品を表示するプラグインのご紹介です。

 

商品ステータス別新着表示ブロック Ver.1.0
http://www.ec-cube.net/products/detail.php?product_id=468

 

 

まずは、他のプラグインと同様に、管理画面>オーナーズストア>プラグイン管理 から、プラグインをインストールし、有効にします。
「プラグイン設定」リンクから、表示ブロックのタイトルや表示件数、表示対象日数を設定します。(デフォルトのままでもOK)

 

 

そうすると、管理画面>デザイン管理>PC>レイアウト設定 で、以下のような未使用ブロックが追加されています。

 

 

例えば、商品ステータス別新着商品(NEW)のブロックを、中央カラムの新着情報ブロックの下に配置すると、以下のように表示されます。

 

 

プラグイン設定条件に適合した商品が1件もない場合は、ブロック自体が表示されませんので、
一度、管理画面>オーナーズストア>プラグイン管理 の、当プラグインの「プラグイン設定」で、
表示対象日数を30日や180日などに伸ばすと良いでしょう。

 

あるいは、選択した商品ステータスに該当する商品がない場合も考えられますので、
この場合でしたら、商品ステータスが「NEW」になっている商品がちゃんと存在しているか確認してみると良いと思います。

[EC-CUBE 2.12.3] 商品ステータス別に新着商品を表示したい への10件のコメント

  1. acc より:

    便利なプラグインありがとうございます。
    質問なのですが、新着商品をクリックしたリンク先のURLに商品IDではなく商品コードを使っているのですが、product_idをproduct_codeに変更するだけではうまくリンクしません。
    どのように修正すればいいか教えていただけませんでしょうか?

  2. chiharu より:

    返信が遅くなり申し訳ありません。

    ご質問いただいている内容としては「デザイン管理>PC>ブロック設定」で
    product_id を product_code に変更しても product_code が表示されない
    ということかと存じます。

    こちらに関してですが、同一の商品が規格やステータスによって、複数の
    表示をされないように SQLの Group By を行っています。
    その際に取得する項目として product_code を含んでいないためかと存じます。

    変更して頂く場合、以下のファイルの関数にてデータを取得しておりますので、
    この関数を変更して product_code を取得するようにすれば良いかもしれません。

    ファイル
     /data/downloads/plugin/NakwebBlocNewProductStatus
    関数
     lfGetProductStatusNew

  3. acc より:

    お返事ありがとうございます。
    教えていただいた関数に、

    $col、$groupby、にp.product_code,を、追加してみたのですが、エラーがでて駄目みたいでした。
    product_idをproduct_codeに置換してももちろん駄目でした。。。

    取得の方法をもう少し教え手いただけると助かります。お手数をおかけして申し訳ありませんが、よろしくお願いします。

  4. fukap より:

    この場合、p.product_code の p とは、dtb_products の別名です。
    product_code は dtb_product_class に含まれるはずですので、
    修正コードを再検討ください。

  5. acc より:

    ありがとうございます。できました!

  6. rdl より:

    プラグイン利用させていただいております。
    通常価格も出そうと、単純にとしたのですが、0が表示されてしまいます。なぜでしょうか?
    通常価格はもちろん入力してあります。

  7. rdl より:

    すみません。消えてしまいました。

    <!--{$price02|sfCalcIncTax:$arrInfo.tax:$arrInfo.tax_rule|number_format}-->

    上記のように入力しました。

  8. chiharu より:

    お問い合わせ有難うございます。
    ご質問いただきました内容についてご返答させて頂きます。

    当プラグインでは元々の機能として、通常価格に値する “price01” を取得していないためかと存じます。
    対応方法として以下のフォルダの lfGetProductStatusNew にて取得する項目に “price01” を追加して頂ければ、
    ご要望の項目が出るのではないかと存じます。
    /data/downloads/plugin/NakwebBlocNewProductStatus/plg_NakwebBlocNewProductStatus_LC_Page_FrontParts_Bloc_Plugin.php

    なお、項目追加は “price02_min”, “price02_max” に準拠して頂ければ大丈夫かと存じます。
    一度お試し下さい。

  9. me より:

    かなり昔のプラグインに対しての質問失礼いたします。
    今回このプラグインを導入し、スタイルをカスタマイズしようと思いブロック設定より修正したのですが、反映されないよなので、どちらでスタイルの変更を行えばいいか教えていただくことは可能でしょうか?

  10. fukap より:

    ブロック設定で、直接スタイル記述してみてはどうでしょうか?

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

* Copy This Password *

* Type Or Paste Password Here *

*

コメント欄にコードを挿入したい場合は、[php][/php] を使ってください。