| 質問 > フロント機能 > お勧めのランダム表示 |
フロント機能
| スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
| 投稿者 | スレッド |
|---|---|
| cool |
投稿日時: 2008/12/10 9:47
対応状況: −−−
|
新米 ![]() ![]() 登録日: 2008/12/10 居住地: 投稿: 8 |
お勧めのランダム表示 フロントページで、お勧めをランダム表示したいのですが良くわかりません。
恐らく該当するファイルは2つで、 1)WWWパス/data/class/pages/frontparts/bloc/LC_Page_FrontParts_Bloc_Best5.php 2)WWWパス/data/Smarty/templates/default/bloc/best5.tpl だと思います。 LC_Page_FrontParts_Bloc_Best5.phpの lfGetRanking() にSQL文があって、それを select a.product_id , a.name, a.main_image,main_list_image,b.price02 from dtb_products a, dtb_products_class b where a.product_id =b.product_id; に変更し、 http://xoops.ec-cube.net/modules/newbb/viewtopic.php?viewmode=thread&topic_id=1868&forum=6&post_id=7198#forumpost7198 にある乱数で取得するとできそうな気がするのですが、 $col $from $where $order にどう記述すればいいか教えてください。 |
| kvex2004 |
投稿日時: 2008/12/10 11:30
対応状況: −−−
|
長老 ![]() ![]() 登録日: 2007/10/31 居住地: 埼玉 投稿: 218 |
Re: お勧めのランダム表示 レコード数もたいした数ではないので、戻り値の前でshuffleではダメですか?
shuffle($arrBestProducts); return $arrBestProducts; もっと省略して return shuffle($arrBestProducts); |
| cool |
投稿日時: 2008/12/10 14:46
対応状況: −−−
|
新米 ![]() ![]() 登録日: 2008/12/10 居住地: 投稿: 8 |
Re: お勧めのランダム表示 ありがとうございます
説明が足りなくてすみません。 お勧めは以下の2つのテーブルから抽出しています。 dtb_best_products vw_products_allclass やりたいことはこのテーブルは関係なく、dtb_productの全商品 から無作為にお勧めとして抽出したいです。 恐らく$colのSQL文が書ければいいと思うのですが、書いて いいかわかりません。。。 |
| kvex2004 |
投稿日時: 2008/12/11 15:03
対応状況: −−−
|
長老 ![]() ![]() 登録日: 2007/10/31 居住地: 埼玉 投稿: 218 |
Re: お勧めのランダム表示 $col = "a.product_id , a.name, a.main_image,main_list_image,b.price02";
$from = "dtb_products a, dtb_products_class b"; $where = "a.product_id =b.product_id"; $order = "random()"; こういうことですか? MySQLだったら rand() になるのかな? それとも、ECCUBEが吸収してくれるのかな? |
| kvex2004 |
投稿日時: 2008/12/11 15:09
対応状況: −−−
|
長老 ![]() ![]() 登録日: 2007/10/31 居住地: 埼玉 投稿: 218 |
Re: お勧めのランダム表示 あ。でもでも。
商品点数がたくさんあるとすごいことになってしまいそうなので、リミットを付けたほうが良いかもです。 いま、やってみたけど、とりあず取得できました。 $col = "a.product_id , a.name, a.main_image,main_list_image,b.price02"; $from = "dtb_products a, dtb_products_class b"; $where = "a.product_id =b.product_id"; $order = "random()"; $limit = "5"; $objQuery->setorder($order); $objQuery->setlimit($limit); |
| cool |
投稿日時: 2008/12/11 20:57
対応状況: −−−
|
新米 ![]() ![]() 登録日: 2008/12/10 居住地: 投稿: 8 |
Re: お勧めのランダム表示 kvex2004さん ありがとうございます。できました!
しかも、カテゴリー内だけから抽出できるようにもできました。 ずっと悩んでいたのでとてもとても感謝しています。 ありがとうございました! 一応該当箇所を記載します。 ※以下の例ではカテゴリーを指定しています。 |
| スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |
どうか教えて下さい!





