デザイン

EC-CUBE新着商品

投稿日:

最近、EC-CUBE+新着商品というキーワードでのアクセスが多いので、ちょっと自分の覚え書の為にも残しておきます。
なお、私はPHPプログラマーではないので、ツッコミどころ満載かもしれません。。
少しでもお役に立てば幸いです。
ちなみにEC-CUBE1.34、PHP5.2.3、PostgreSQL8.2.4という環境です。

まず最初に管理画面から、新規ブロックをnew-item.tplなどと作っておくといいでしょう。

次にnew-item.phpを作ります。

<?php
/*
 * Copyright(c) 2000-2007 LOCKON CO.,LTD. All Rights Reserved.
 *
 * http://www.lockon.co.jp/
 */
class LC_NewitemPage {
	function LC_NewitemPage() {
		/** 必ず変更する **/
		$this->tpl_mainpage = BLOC_PATH . 'new-item.tpl';	// メイン
	}
}

$objSubPage = new LC_NewitemPage();
$objSubView = new SC_SiteView();

//新着商品表示
$objSubPage->arrProducts = lfGetNewItem();

$objSubView->assignobj($objSubPage);
$objSubView->display($objSubPage->tpl_mainpage);

//-----------------------------------------------------------------------------------------------------------------------------------
//新着商品検索
function lfGetNewItem(){
	$conn = new SC_DBConn();
	$sql = "SELECT name,main_list_image,product_id,main_list_comment FROM dtb_products WHERE status = '1' ORDER BY create_date DESC OFFSET 0 LIMIT 12";
	$list_data = $conn->getAll($sql);
	return $list_data;
}

?>

要するにデータベースからSELECT文で持ってきてるだけなんですが。。
(MySQLの場合はLIMITの辺り、書き換えないとダメかも?)
new-item.phpとして保存し、frontparts/bloc/以下にアップロード。

次にテンプレートファイル(new-item.tpl)を編集します。

<!--{*
* Copyright(c) 2000-2007 LOCKON CO.,LTD. All Rights Reserved.
*
* http://www.lockon.co.jp/
*}-->
<div>
<h2>NEW ITEM</h2>
<!--{section name=cnt loop=$arrProducts max=12}-->
<!--{assign var=id value=$arrProducts[cnt].product_id}-->
<!--{assign var=name value="detail`$smarty.section.cnt.iteration`"}-->
<!--商品-->
<div class="section"><a name="product<!--{$id}-->" id="product<!--{$id}-->"></a>
<p class="goodsInfo"><!--{$arrProducts[cnt].main_list_comment|escape|nl2br}--></p>
<h3 class="goodsName"><a href="<!--{$smarty.const.DETAIL_P_HTML}--><!--{$arrProducts[cnt].product_id}-->" class="over"><!--{$arrProducts[cnt].name|escape}--></a></h3>
<div class="goodsPhoto"><a href="<!--{$smarty.const.DETAIL_P_HTML}--><!--{$arrProducts[cnt].product_id}-->"><!--商品写真--><img src="<!--{$smarty.const.IMAGE_SAVE_URL|sfTrimURL}--/>/<!--{$arrProducts[cnt].main_list_image}-->" alt="<!--{$arrProducts[cnt].name|escape}-->" /></a></div>
</div>
<!--商品終わり-->

<!--{/section}-->
<br class="separate" />
</div>

テンプレートはいろんな書き方があると思うのですが、↑のようなのでもいちおう動いてます。
(商品を削除した時はうまく消えません。。。)

最後に、データベースにログインしてnew-item.tplとnew-item.phpを関連付けます。
これをしないと動きません。

-デザイン
-


comment

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

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

Yahoo

Yahoo! JAPANが新デザインのベータ版を公開してますね~。 まぁ、具体的なことはこちらを見て …

ユンボ

今や建設機械もちょーハイテクです。 子供向けサイトですが、Q&Aはかなりハイレベル。(笑) ケンケン …

EC-CUBE

EC-CUBE(オープンソースECサイト構築システム)をXREA(CORESERVER)にインストー …

Meteor Slidesのボタンをセンタリングする

WordPressプラグイン「Meteor Slides」を導入してスライドショーにしてみたわけです …

EC-CUBE新着情報

以前書いたように、EC-CUBE(新着情報で苦闘)のエントリーはバージョンが古くなっていて、2.x系 …

PREV
temptation
NEXT
Eve

カテゴリー

アーカイブ

サイト内検索