バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > 2.11.1系で、新着商品を表示させたい。

フロント機能

新規スレッドを追加する

| 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
krokuta
投稿日時: 2011/10/24 0:32
対応状況: −−−
新米
登録日: 2011/10/24
居住地:
投稿: 2
Re: 2.11.1系で、新着商品を表示させたい。
現在ECCUBEのカスタマイズをしており、こちらの記事のおかげで大変助かりました。ありがとうございます。一つ気づいた事があったので、書いておきます。

複数の規格を登録した場合に、有効になっていない規格も読み込んでしまっているらしく、価格の最小値が正しく表示できなかったので、以下のように変更したところうまくいきました。

$where = "dtb_product_status.product_status_id = ? AND dtb_products.del_flg = 0 AND dtb_products_class.del_flg = 0 AND dtb_products.status = 1";


ECCUBE初心者のため見当違いでしたらご指摘ください。
shutta
投稿日時: 2011/10/24 12:53
対応状況: −−−
仙人
登録日: 2010/2/4
居住地: 関西
投稿: 835
Re: 2.11.1系で、新着商品を表示させたい。
krokutaさん、こんにちは。

以下は、どの画面の、どのファイルの、どの部分を書き換えたものでしょうか?
もう少し詳しく教えてもらえると嬉しいです。
せっかく頂いた情報なので、検証してバグがあるようなら、修正を取り込んでいきたいですので、すみませんがご協力お願いできれば幸いです。

引用:

krokutaさんは書きました:
現在ECCUBEのカスタマイズをしており、こちらの記事のおかげで大変助かりました。ありがとうございます。一つ気づいた事があったので、書いておきます。

複数の規格を登録した場合に、有効になっていない規格も読み込んでしまっているらしく、価格の最小値が正しく表示できなかったので、以下のように変更したところうまくいきました。

$where = "dtb_product_status.product_status_id = ? AND dtb_products.del_flg = 0 AND dtb_products_class.del_flg = 0 AND dtb_products.status = 1";


ECCUBE初心者のため見当違いでしたらご指摘ください。



----------------

リゾート会員権(エクシブ等)の売買・仲介

aska824
投稿日時: 2011/10/24 20:49
対応状況: −−−
長老
登録日: 2010/2/20
居住地: 静岡県
投稿: 185
Re: 2.11.1系で、新着商品を表示させたい。
全く別で、最近気付いたんですが、
この方法、よく見るとアップデートした時一番上に表示される仕組みなんですよね^^;

なんで、dtb_products.update_date($groupby内と$order)を
dtb_products.create_date
にしてみました><

なんか横入りですいません^^;


----------------
-----------情報-----------
自分の分かる範囲でお答えします。

Shop Mate

krokuta
投稿日時: 2011/10/25 4:19
対応状況: −−−
新米
登録日: 2011/10/24
居住地:
投稿: 2
Re: 2.11.1系で、新着商品を表示させたい。
shutta様

修正したファイルですが、以下のファイルです。
/data/class/pages/frontparts/bloc/LC_Page_FrontParts_Bloc_ProductFlag.php

2011-8-31 11:25にthreetails様が投稿されている箇所と同じ箇所になります。あまりちゃんと分かってやっているわけではないので、参考程度におねがいします。
have
投稿日時: 2011/11/8 20:11
対応状況: −−−
一人前
登録日: 2010/11/4
居住地: 東京都
投稿: 83
Re: 2.11.1系で、新着商品を表示させたい。
出来ましたが、どうやって管理画面→コンテンツ管理→おすすめ商品管理のような 新着商品管理画面も作れますか?
ご教示していただけませんでしょうか?

EC-CUBE] 2.11.4
[レンタルサーバ] さくらスタンダード
[OS] FreeBSD 7.1-RELEASE-p15 i386
[PHP] PHP5.3.8
[データベース]MySql 5.1
[WEBサーバ] Apache/1.3.42
tapee
投稿日時: 2011/11/13 2:00
対応状況: −−−
新米
登録日: 2011/11/13
居住地: 埼玉県
投稿: 2
Re: 2.11.1系で、新着商品を表示させたい。
初めて投稿いたします。
PHPも初心者ですがよろしくお願いします。

こちらのスレッドを参考にして新着商品を表示することができました。

現状の仕様では商品のステータス1〜5のいずれかを指定する必要があるのですが、これをステータスに関係なく、商品の登録日付順に表示させるにはどのように変更すればいいのでしょうか。

/data/class/pages/frontparts/bloc/
LC_Page_FrontParts_Bloc_ProductFlag.php
は、現状下記のようになっています。

このファイルの$productFlagを消したりしているのですが
うまくいきません。

どなたかご教授いただければ幸いです。
よろしくお願いします。

引用:

<?php

// {{{ requires
require_once CLASS_REALDIR . 'pages/frontparts/bloc/LC_Page_FrontParts_Bloc.php';
/**
* productStatus のページクラス.
*
* @package Page
*/

class LC_Page_FrontParts_Bloc_ProductFlag extends LC_Page_FrontParts_Bloc {

// }}}
// {{{ functions

/**
* Page を初期化する.
*
* @return void
*/
function init() {
parent::init();
$bloc_file = 'product_flag.tpl';
$this->setTplMainpage($bloc_file);
}

/**
* Page のプロセス.
*
* @return void
*/
function process() {
$this->action();
}

function action() {

// 基本情報を渡す
$objSiteInfo = SC_Helper_DB_Ex::sfGetBasisData();

//新着商品表示
$this->arrProductFlag = $this->lfGetProductFlag();
}

/**
* デストラクタ.
*
* @return void
*/
function destroy() {
parent::destroy();
}

function lfGetProductFlag() {
$objView = new SC_SiteView();
$objQuery = new SC_Query();

//検索したい商品のステータスを設定
//NEW→1, 残りわずか→2, ポイント2倍→3, オススメ→4, 限定品→5
$productFlag = 1;

//検索する商品のステータスをランダムに決定し、表示させたい場合は以下のコメントを外してください。
//$id_count = $objQuery->count(mtb_status);
//$productFlag = rand(1,$id_count);

$this->statusName = $objQuery->get("name", "mtb_status_image", "id = ? ", array($productFlag));

//表示する商品の件数
$listCount = 8;




$col = "dtb_products.product_id, dtb_products.name, dtb_products.main_image, MIN(dtb_products_class.price02) AS price02_min, MAX(dtb_products_class.price02) AS price02_max";
$from = "dtb_products INNER JOIN dtb_products_class ON dtb_products.product_id = dtb_products_class.product_id INNER JOIN dtb_product_status ON dtb_products.product_id = dtb_product_status.product_id";
$where = "dtb_product_status.product_status_id = ? AND dtb_products.del_flg = 0 AND dtb_products_class.del_flg = 0 AND dtb_products.status = 1";
$groupby = "dtb_products.product_id, dtb_products.name, dtb_products.main_image, dtb_product_status.product_id, dtb_products.create_date";
$this->groupby=$objQuery->setGroupBy($groupby);

//商品の表示はcreate_dateが新しい順
$order = "dtb_products.create_date DESC";
$this->order=$objQuery->setOrder($order);

$arrFlagList = $objQuery->select($col, $from, $where, array($productFlag));

//商品の表示をランダムに抽出する場合は以下のコメントを外してください。
//srand((double)microtime()*1000000); //乱数生成器を初期化
//shuffle($arrFlagList);

$this->arrFlagProducts = array_slice($arrFlagList, 0, $listCount);

$objView->assignobj($this);
$objView->display($this->tpl_mainpage);
}
}

?>
seasoft
投稿日時: 2011/11/14 1:57
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7367
Re: 2.11.1系で、新着商品を表示させたい。
最低でも、赤字箇所は不要かと。

$where = "dtb_product_status.product_status_id = ? AND dtb_products.del_flg = 0 AND dtb_products_class.del_flg = 0 AND dtb_products.status = 1";

$arrFlagList = $objQuery->select($col, $from, $where, array($productFlag));

他にも、いらない処理が色々ありそうですが・・・


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

tapee
投稿日時: 2011/11/15 18:27
対応状況: −−−
新米
登録日: 2011/11/13
居住地: 埼玉県
投稿: 2
Re: 2.11.1系で、新着商品を表示させたい。
ご連絡ありがとうございました。
試してみましたがうまくいきませんでした。。
自分でも色々試してみますので、引き続き宜しくお願いいたします。
ytk
投稿日時: 2012/1/30 21:02
対応状況: −−−
仙人
登録日: 2009/12/7
居住地:
投稿: 349
Re: 2.11.1系で、新着商品を表示させたい。
NEW以外のをブロックにしてアップするにはどうしたらよいですか??
限定商品ブロックとか作りたいです。。。


----------------
EC-CUBE 3.0.17
サーバーOS Linux
DBサーバー MySQL
WEBサーバー Apache
PHP 7.1.5

Leon
投稿日時: 2012/4/26 10:58
対応状況: −−−
半人前
登録日: 2011/4/13
居住地:
投稿: 16
Re: 2.11.1系で、新着商品を表示させたい。
新着商品のコメント欄に入れたいが、どうやったら入れることは出来ますか?
おすすめ商品のプログラムの中にコメント欄に、プログラムを移植してもうまく動きません。
誰かご教授お願いします。

<p class="mini comment"><!--{$arrProduct.main_comment|nl2br_html}--></p>

どこかの間違いとかありましたら、教えてください。

よろしくお願いします。
« 1 2 3 4 (5) 6 »
| 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

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

投稿数ランキング

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