バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > 2.11.4でのトップページのランキング表示について(キャッシュが残る、価格が0円表示になる)

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
maruuuuuun
投稿日時: 2012/2/12 16:45
対応状況: −−−
半人前
登録日: 2012/2/12
居住地:
投稿: 22
2.11.4でのトップページのランキング表示について(キャッシュが残る、価格が0円表示になる)
皆さん、こんにちわ。

ご質問です。

ver2.11.4でのランキング表示がどうも上手く実装出来ません。

表示させる事自体は何とか実装出来たのですが、現在

■既に削除した商品が残ってしまう。(非公開も同様)
■価格が0円表示になる

の2点で詰まっています。

その他エラー等はまったく出ておらず、検索しても2.4系の情報で、試してみたものの思い通りになりません。

検索した感じでは「LC_Page_FrontParts_Bloc_Ranking.php」を変更すれば可能な気がするのですが…。

ちなみに現在はこうなっています。

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

<?php
/*
* This file is part of EC-CUBE
*
* Copyright(c) 2000-2010 LOCKON CO.,LTD. All Rights Reserved.
*
* http://www.lockon.co.jp/
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/

// {{{ requires
require_once(CLASS_REALDIR . "pages/frontparts/bloc/LC_Page_FrontParts_Bloc.php");

/**
* ランキング のページクラス.
*/
class LC_Page_FrontParts_Bloc_Ranking extends LC_Page_FrontParts_Bloc {

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

/**
* Page のプロセス.
*
* @return void
*/
function process() {
if (defined("MOBILE_SITE") && MOBILE_SITE) {
$objView = new SC_MobileView();
} else {
$objView = new SC_SiteView();
}
$objSiteInfo = $objView->objSiteInfo;

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

// ランキング表示 2009.05.08追加
$this->arrRanking = $this->lfGetRanking();

$objView->assignobj($this);
$objView->display($this->tpl_mainpage);
//おすすめ商品表示
//$this->arrBestProducts = $this->lfGetRanking();

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

/**
* モバイルページを初期化する.
*
* @return void
*/
function mobileInit() {
$this->tpl_mainpage = MOBILE_TEMPLATE_DIR . "frontparts/"
. BLOC_DIR . 'ranking.tpl';
}

/**
* Page のプロセス(モバイル).
*
* @return void
*/
function mobileProcess() {
$this->process();
}

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

// ランキング検索
function lfGetRanking(){
$objQuery = new SC_Query();

$col = "T1.product_id, T1.product_name as name, T3.main_list_image, COUNT(*) as order_count";
$from = "dtb_order_detail AS T1
INNER JOIN dtb_order AS T2 ON T1.order_id = T2.order_id
INNER JOIN dtb_products AS T3 ON T1.product_id = T3.product_id";
$objQuery->setwhere("T3.status = 1");
$objQuery->setGroupBy("T1.product_id, T1.product_name, T3.main_list_image");
$objQuery->setOrder("order_count DESC");
$objQuery->setLimit(5);

return $objQuery->select($col, $from);
}
}
?>

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

お手数を御掛け致しますが、どうかよろしくお願いいたします。

fukap
投稿日時: 2012/2/12 18:05
対応状況: −−−
仙人
登録日: 2009/7/7
居住地: 滋賀県
投稿: 907
Re: 2.11.4でのトップページのランキング表示について(キャッシュが残る、価格が0円表示になる)
$col = "T1.product_id, T1.product_name as name, T3.main_list_image, COUNT(*) as order_count";
$objQuery->setwhere("T3.status = 1");

を、

$col = "T1.product_id, T1.product_name as name, T3.main_list_image, COUNT(*) as order_count, T1.price";
$objQuery->setwhere("T3.status = 1 AND T3.del_flg = 0");

にしてみてはどうでしょうか。
テンプレ側がわからないので、価格が無事表示されるかはわかりませんが、
削除商品は消えるのではないかと。
maruuuuuun
投稿日時: 2012/2/12 18:14
対応状況: −−−
半人前
登録日: 2012/2/12
居住地:
投稿: 22
Re: 2.11.4でのトップページのランキング表示について(キャッシュが残る、価格が0円表示になる)
早速の返信ありがとございます。

情報通りにしてみたところ、消すことが出来、テストで購入するとバッチリ表示されました!

しかし何故かまだ価格が0円のままになってしまいます。

テンプレートの方もカスタムしたので、どこか必要な部分を削除してしまったのでしょうか?

ちなみにテンプレ内は↓こうなっています。

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

<!--{if count($arrRanking) > 0}-->
<div class="bloc_outer clearfix">
<div id="recommend_area">
<h2><img src="<!--{$TPL_URLPATH}-->img/title/rankitem_title.gif" alt="ランキング" title="ランキング" /></h2>
<div class="bloc_body clearfix">
<!--{foreach from=$arrRanking key=myId item=i}-->
<div class="itembox_block">
<dl class="itembox">
<dt><a href="<!--{$smarty.const.P_DETAIL_URLPATH}--><!--{$i.product_id}-->"><img src="<!--{$smarty.const.IMAGE_SAVE_URLPATH|sfTrimURL}-->/<!--{$i.main_list_image}-->" width="130px" alt="<!--{$i.name}-->"></a> </dt>
<a href="<!--{$smarty.const.P_DETAIL_URLPATH}--><!--{$i.product_id}-->">
<dt>
<!--{assign var=rank value=$myId+1}--><!--{$i.name}-->
</dt>
<dd><!--{$arrProduct.price02_min|sfCalcIncTax:$arrInfo.tax:$arrInfo.tax_rule|number_format}-->円</dd></a>
</dl>
</div>
<!--{/foreach}-->
</div>
</div>
</div>
<!--{/if}-->

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

fukap
投稿日時: 2012/2/12 18:18
対応状況: −−−
仙人
登録日: 2009/7/7
居住地: 滋賀県
投稿: 907
Re: 2.11.4でのトップページのランキング表示について(キャッシュが残る、価格が0円表示になる)
<!--{$arrProduct.price02_min|sfCalcIncTax:$arrInfo.tax:$arrInfo.tax_rule|number_format}-->

がポイントです。
ちょっと考えるとわかると思うので、チャレンジしてみてください。
maruuuuuun
投稿日時: 2012/2/12 19:01
対応状況: −−−
半人前
登録日: 2012/2/12
居住地:
投稿: 22
Re: 2.11.4でのトップページのランキング表示について(キャッシュが残る、価格が0円表示になる)
ありがとうございます。

ランキング表示と合わせて新しく作った「新着商品」も、デフォルトの「おすすめ商品」も同じ表記で大丈夫なのに、ランキングの場合はダメなんですね。

今、まだ分かっていないですが、ポイントを教えていただけたので、考えてチャレンジしてみます。

本当にありがとうございます。
maruuuuuun
投稿日時: 2012/2/13 9:44
対応状況: −−−
半人前
登録日: 2012/2/12
居住地:
投稿: 22
Re: 2.11.4でのトップページのランキング表示について(キャッシュが残る、価格が0円表示になる)
fukap 様

お世話になります。

ランキング設定での価格表示ですが

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

の変更箇所が未だに分かりません。

$arrProduct.price02_minは「通常価格」を表し、その他は税込のような意味合いという事まではわかったのですが…。

お手数の上、ご迷惑をおかけいたしますがご教示くださいますと幸いです。
fukap
投稿日時: 2012/2/13 18:14
対応状況: −−−
仙人
登録日: 2009/7/7
居住地: 滋賀県
投稿: 907
Re: 2.11.4でのトップページのランキング表示について(キャッシュが残る、価格が0円表示になる)
<!--{$arrProduct.price|sfCalcIncTax:$arrInfo.tax:$arrInfo.tax_rule|number_format}-->

で試してみるとどうでしょう?

引用:
ランキング表示と合わせて新しく作った「新着商品」も、
デフォルトの「おすすめ商品」も同じ表記で大丈夫なのに、ランキングの場合はダメなんですね。

テンプレートが同じ表記なのになぜ?ってことですよね。
テンプレートの <!--{$arrProduct...}--> などの部分に入る値は、そのテンプレートと対になる PHPファイルで用意されます。
ですので、テンプレートは同じ表記なのかもしれませんが、PHP側の記述が異なっているのだと思います。
maruuuuuun
投稿日時: 2012/2/13 19:19
対応状況: −−−
半人前
登録日: 2012/2/12
居住地:
投稿: 22
Re: 2.11.4でのトップページのランキング表示について(キャッシュが残る、価格が0円表示になる)
何度もお返事下さり、ありがとうございます!

ご指摘いただいた記述で試してみたのですが、0円表記のまま変化がありません。

もしかするとこの場合はここの記述ではなく、何か他の部分に問題があるのでしょうか?
fukap
投稿日時: 2012/2/14 8:45
対応状況: −−−
仙人
登録日: 2009/7/7
居住地: 滋賀県
投稿: 907
Re: 2.11.4でのトップページのランキング表示について(キャッシュが残る、価格が0円表示になる)
dtb_order_detail を T1 としているので、T1.price で取れそうなんですけどね。
修正すべきテンプレートが別にあるということはありませんか?

また、テンプレートのどこかに、
var_dump($arrProducts);
を記述してみて、出力された文字列の中に目当ての情報があるか
見てみると良いと思います。

PWS
投稿日時: 2012/2/14 8:56
対応状況: −−−
一人前
登録日: 2012/1/23
居住地: Itami Hyogo
投稿: 141
Re: 2.11.4でのトップページのランキング表示について(キャッシュが残る、価格が0円表示になる)
横からちょこっとだけ

PHP側で$arrProductは出てきてないように見えますね〜
(1) 2 »
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は88,856名です
総投稿数は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.