ITOBEN STYLE > EC-CUBEデザインテンプレート > EC-CUBE:割引クーポンを追加する 2012年3月16日カテゴリー: EC-CUBEデザインテンプレート EC-CUBE:割引クーポンを追加する 下記書籍をもとに書いています。詳しくは、本をお読みください。 「クーポン情報」ブロックを作成し、トップページなどでクーポン情報をお知らせできるようにする。 ▼PCで表示 ▼携帯で表示 ▼スマートフォンで表示 1 データベースに新規テーブルを登録する。 (1)クーポンを登録するdtb_couponテーブルを作成する。 ——————————————- CREATE TABLE dtb_coupon( coupon_id INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT, title text, discount DECIMAL NOT NULL DEFAULT 0, exp_start_date DATETIME, exp_end_date DATETIME, create_date DATETIME, update_date DATETIME, del_flg INT(2) NOT NULL DEFAULT 0 ); ——————————————- (2)使用したクーポンを登録するためのdtb_customer_couponテーブルを作成する。 ——————————————- CREATE TABLE dtb_customer_coupon( customer_coupon_id INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT, customer_id INT(11) NOT NULL, coupon_id INT(11) NOT NULL, order_id INT(11) NOT NULL, create_date DATETIME, update_date DATETIME, del_flg INT(2) NOT NULL DEFAULT 0 ); ——————————————- (3)クーポン情報を一時受注テーブルに登録可能にするために、dtb_order_tempにカラムを追加する。 ——————————————- フィールド:coupon 種別:TEXT ——————————————- 2 管理画面からクーポンを登録できるようにする。 (1)下記ファイルを新規作成 ① ■html/admin/contents/coupon.php [php] init(); $objPage->process(); ?> [/php] ② ■data/class_extends/page_extends/admin\contents/LC_Page_Admin_Contents_Coupon_Ex.php [php] [/php] ③ ■data/class/pages/admin/contents/LC_Page_Admin_Contents_Coupon.php ④ ■data/Smarty/templates/admin/contents/coupon.tpl (2)■data/Smarty/templates/admin/contents/subnavi.tplに追加する。 [php] class=”on” id=”navi-contents-coupon”>(1)■data/class/helper/SC_Helper_DB.phpの最下部sfHasProductClassの次に、getCustomerCouponメソッドを追加する。 [php] function getCustomerCoupon($customer_id) { $objQuery = new SC_Query(); // 使用可能なクーポンを取得する // dtb_customer_couponに使用された(del_flg=0)クーポンが登録されていないか // 削除されたクーポンでないか $col = “dtb_coupon.*”; $from = “dtb_coupon”; $where = “”; $where .= SC_Utils_Ex::sfCouponExpDate(‘dtb_coupon.’,1); $where .= ” “; $where .= “AND “; $where .= “dtb_coupon.del_flg = 0 “; $where .= “AND “; $where .= “dtb_coupon.coupon_id “; $where .= “NOT IN “; $where .= “( “; $where .= “SELECT “; $where .= “coupon_id “; $where .= “FROM “; $where .= “dtb_customer_coupon “; $where .= “inner join “; $where .= “dtb_customer “; $where .= “on dtb_customer.customer_id = dtb_customer_coupon.customer_id “; $where .= “WHERE “; $where .= “dtb_customer.customer_id = ? and dtb_customer_coupon.del_flg = 0”; $where .= “) “; $arrval = array($customer_id); $where_all = $where; $arrAll = $objQuery->select($col, $from, $where_all, $arrval); return $arrAll; } //クーポンの情報を取得する function getCoupon($coupon_id){ $objQuery = new SC_Query(); $coupon = $objQuery->select(“title,discount”,”dtb_coupon”,”coupon_id = ? and del_flg = 0″,array($coupon_id)); return $coupon[0]; } [/php] (2)■data/class/helper/SC_Helper_Purchase.php 851行目あたり 「新規受付の場合は対応状況・・・」のコメントアウトの前に追加 [php] // 使用したクーポンをdtb_customer_couponテーブルに登録する // POSTされるクーポンIDはカンマ区切りの文字列なので、カンマで分割 $coupon = explode(‘,’,$arrParams[‘coupon’]); foreach($coupon as $val){ if($val != “”){ $sqlval[‘customer_id’] = SC_Utils_Ex::isBlank($arrValues[‘customer_id’]) ? 0 : $arrValues[‘customer_id’]; $sqlval[‘coupon_id’] = $val; $sqlval[‘order_id’] = $order_id; $sqlval[‘create_date’] = “now()”; $sqlval[‘update_date’] = “now()”; $objQuery->insert(“dtb_customer_coupon”,$sqlval); } } [/php] (3)■data/class/util/SC_Utils.php 721行目あたり /* 規格分類の件数取得 */function sfGetClassCatCountメソッドの後に追加 [php] /* * クーポンが使用できる期間内にあるか判定 * */ public static function sfCouponExpDate($prefix = ‘dtb_coupon.’,$check = 0) { //check == 0 ならnow()判定 //check == 1 ならcurrent_date判定 if($check == 0){ return ” CASE WHEN {$prefix}exp_start_date IS NOT NULL AND {$prefix}exp_end_date IS NOT NULL THEN now() BETWEEN {$prefix}exp_start_date AND {$prefix}exp_end_date ELSE 1=1 END “; }else{ return ” CASE WHEN {$prefix}exp_start_date IS NOT NULL AND {$prefix}exp_end_date IS NOT NULL THEN current_date() BETWEEN {$prefix}exp_start_date AND {$prefix}exp_end_date ELSE 1=1 END “; } } [/php] 4 お支払い方法・お届け時間等の指定画面でクーポンを利用できるようにする。 下記ファイルにクーポン関連のコードを追加する ① ■data/class/pages/shopping/LC_Page_Shopping_Payment.php ② ■data/class/pages/shopping/LC_Page_Shopping_Confirm.php ③ ■data/Smarty/templates/default/shopping/payment.tpl(PC) ④ ■data/Smarty/templates/default/shopping/confirm.tpl(PC) ⑤ ■data/Smarty/templates/mobile/shopping/payment.tpl(携帯) ⑥ ■data/Smarty/templates/mobile/shopping/confirm.tpl(携帯) ⑦ ■data/Smarty/templates/sphone/shopping/payment.tpl(スマートフォン) ⑧ ■data/Smarty/templates/sphone/shopping/confirm.tpl(スマートフォン) 5 割引後の合計金額の計算。手数料と送料を割引の対象にしない。 ■data/class/SC_CartSession.php 666行目あたり [php] // 合計を計算 $results[‘total’] = $results[‘subtotal’]; $results[‘total’] += $results[‘deliv_fee’]; $results[‘total’] += $charge; $results[‘total’] -= $discount; ↓(変更) // 合計を計算 // 割引後の金額が0円以下になった場合0に修正 $results[‘total’] = $results[‘subtotal’]; $results[‘total’] -= $discount; if($results[‘total’] < 0) $results['total'] = 0; $results['total'] += $results['deliv_fee']; $results['total'] += $charge; [/php] 6 MYページでクーポンを表示する。 下記ファイルにクーポン関連のコードを追加する ① ■data/class/pages/mypage/LC_Page_Mypage.php ② ■data/Smarty/templates/default/mypage/index.tpl(PC) ③ ■data/Smarty/templates/mobile/mypage/index.tpl(携帯) ④ ■data/Smarty/templates/sphone/mypage/index.tpl(スマートフォン) 7 受注管理で金額表示。キャンセル時にクーポンの履歴を戻す。 (1)■data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php ①下記を変更 [php] // 合計 $arrValues[‘total’] = $subtotal – $arrValues[‘discount’] + $arrValues[‘deliv_fee’] + $arrValues[‘charge’]; ↓(変更) // 割引 $arrValues[‘total’] = $subtotal – $arrValues[‘discount’]; //割引後の金額がマイナスになった場合0に戻す if($arrValues[‘total’] < 0) $arrValues['total'] = 0; // 合計 $arrValues['total'] += $arrValues['deliv_fee'] + $arrValues['charge']; [/php] ② 「// 受注テーブルの更新 $order_id = $objPurchase->registerOrder($order_id, $arrValues);」の次に追加 [php] //キャンセル時には使用したクーポン履歴を論理削除 //再度キャンセル以外のステータスに戻してもクーポンは使用状態にはならないので注意 if($arrValues[‘status’]==3){ //同じorder_idのクーポン履歴を削除 $sqlVal[‘del_flg’] = 1; $where = ‘order_id = ?’; $objQuery->update(‘dtb_customer_coupon’,$sqlVal,$where,array($arrValues[‘order_id’])); } [/php] (2)■data/class/pages/admin/order/LC_Page_Admin_Order_Status.php 217行目あたりに追加 [php] //キャンセル時には使用したクーポン履歴を論理削除 //再度キャンセル以外のステータスに戻してもクーポンは使用状態にはならないので注意 if($statusId == 3){ //同じorder_idのクーポン履歴を削除 $sqlVal[‘del_flg’] = 1; $where = ‘order_id = ?’; $objQuery->update(‘dtb_customer_coupon’,$sqlVal,$where,array($orderId)); } [/php] 8 クーポン情報をお知らせするブロックを作成する (1)拡張ファイル等の作成 ① ■html/frontparts/bloc/coupon.php [php] blocItems = $params[‘items’]; register_shutdown_function(array($objPage, “destroy”)); $objPage->init(); $objPage->process(); ?> [/php] ② ■data/class_extends/page_extends/frontparts/bloc/LC_Page_FrontParts_Bloc_Coupon_Ex.php [php] [/php] ③ ■data/class/page/frontparts/bloc/LC_Page_FrontParts_Bloc_Coupon.php [php] action(); $this->sendResponse(); } /** * Page のアクション. * * @return void */ function action() { // データベースから取得 $objQuery = SC_Query_Ex::getSingletonInstance(); $this->arrRet = array(); //クーポン情報を取得 $arrRet = $objQuery->select(‘*’,’dtb_coupon’,’del_flg = 0 and exp_end_date >= current_date’); //データベースから取得できたか if(isset($arrRet)){ $this->arrRet = $arrRet; } } /** * デストラクタ. * * @return void */ function destroy() { parent::destroy(); } } ?> [/php] (2)テンプレートの作成 ① PC用 ■data/Smarty/templates/default/frontparts/bloc/coupon.tpl [php] クーポン情報 割引額:円 期間:~ 会員の方は、お買い物の際、クーポンがご利用になれます。 MYページで利用可能なクーポンをご確認いただけます。 [/php] ② 携帯用 ■data/Smarty/templates/mobile/frontparts/bloc/coupon.tpl [php] クーポン情報 割引額:円 期間:~ 会員の方は、お買い物の際クーポンがご利用になれます。 MYページで利用可能なクーポンをご確認いただけます。 [/php] ③ スマートフォン用 ■data/Smarty/templates/sphone/frontparts/bloc/coupon.tpl [php] クーポン情報 割引額:円 期間:~ 会員の方は、お買い物の際クーポンがご利用になれます。 MYページで利用可能なクーポンをご確認いただけます。 [/php] (3)CSSに追加 ① PC用 ■html/user_data/packages/default/css/bloc.css [php] /* =============================================== ▼クーポン情報 =============================================== */ #coupon_area { margin-bottom:20px; } #coupon_area h2 { color:#E75019; padding:4px 10px; border-top:#F90 1px solid; border-left:#F90 10px solid; border-right:#ccc 1px solid; background-color:#FEE39E; } #coupon_area .bloc_body { padding:10px; } #coupon_area .title { color:#FFF; background-color:#E75019; padding:2px 4px; margin-bottom:5px; } #coupon_area .discount { margin-bottom:5px; } #coupon_area .date { margin-bottom:5px; } #coupon_area .comment { background-color: #FFEBD7; border:#ddd 1px solid; padding:5px; margin-bottom:5px; } [/php] ② スマートフォン用 ■html/user_data/packages/sphone/css/bloc.css [php] /*———————————————– クーポン情報 ———————————————– */ #coupon_area{ margin-bottom: 20px; } #coupon_area ul{ } #coupon_area li, #coupon_area .comment { display:block; clear:both; padding:10px; line-height:1.3; background-color:#FEFEFE; background: -moz-linear-gradient(center top, #FEFEFE 0%,#EEEEEE 100%); background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #FEFEFE),color-stop(1, #EEEEEE)); border-top:#FFF solid 1px; border-bottom:#CCC solid 1px; } #coupon_area .coupon_date{ clear:both; font-size:12px; letter-spacing:0.1em; } [/php] (4)データベースのdtb_blocにPC用(device_type_id=10)、携帯用(device_type_id=1)、スマートフォン用(device_type_id=2)のブロックを登録する。 PC用 —————————————— device_type_id:10 bloc_id:13(環境に応じて) bloc_name:クーポン情報 tpl_path:coupon.tpl filename:coupon create_date:作成日時 update_date:作成日時 php_path:frontparts/bloc/coupon.php deletable_flg:0 —————————————— 携帯用 —————————————— device_type_id:1 bloc_id:8(環境に応じて) bloc_name:クーポン情報 tpl_path:coupon.tpl filename:coupon create_date:作成日時 update_date:作成日時 php_path:frontparts/bloc/coupon.php deletable_flg:0 —————————————— スマートフォン用 —————————————— device_type_id:2 bloc_id:11(環境に応じて) bloc_name:クーポン情報 tpl_path:coupon.tpl filename:coupon create_date:作成日時 update_date:作成日時 php_path:frontparts/bloc/coupon.php deletable_flg:0 ——————————————
下記書籍をもとに書いています。詳しくは、本をお読みください。
「クーポン情報」ブロックを作成し、トップページなどでクーポン情報をお知らせできるようにする。
▼PCで表示
▼携帯で表示
▼スマートフォンで表示
1 データベースに新規テーブルを登録する。
(1)クーポンを登録するdtb_couponテーブルを作成する。
——————————————-
CREATE TABLE dtb_coupon(
coupon_id INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
title text,
discount DECIMAL NOT NULL DEFAULT 0,
exp_start_date DATETIME,
exp_end_date DATETIME,
create_date DATETIME,
update_date DATETIME,
del_flg INT(2) NOT NULL DEFAULT 0
);
——————————————-
(2)使用したクーポンを登録するためのdtb_customer_couponテーブルを作成する。
——————————————-
CREATE TABLE dtb_customer_coupon(
customer_coupon_id INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
customer_id INT(11) NOT NULL,
coupon_id INT(11) NOT NULL,
order_id INT(11) NOT NULL,
create_date DATETIME,
update_date DATETIME,
del_flg INT(2) NOT NULL DEFAULT 0
);
——————————————-
(3)クーポン情報を一時受注テーブルに登録可能にするために、dtb_order_tempにカラムを追加する。
——————————————-
フィールド:coupon
種別:TEXT
——————————————-
2 管理画面からクーポンを登録できるようにする。
(1)下記ファイルを新規作成
① ■html/admin/contents/coupon.php
[php]
init();
$objPage->process();
?>
[/php]
② ■data/class_extends/page_extends/admin\contents/LC_Page_Admin_Contents_Coupon_Ex.php
[php]
[/php]
③ ■data/class/pages/admin/contents/LC_Page_Admin_Contents_Coupon.php
④ ■data/Smarty/templates/admin/contents/coupon.tpl
(2)■data/Smarty/templates/admin/contents/subnavi.tplに追加する。
[php]
[php]
function getCustomerCoupon($customer_id) {
$objQuery = new SC_Query();
// 使用可能なクーポンを取得する
// dtb_customer_couponに使用された(del_flg=0)クーポンが登録されていないか
// 削除されたクーポンでないか
$col = “dtb_coupon.*”;
$from = “dtb_coupon”;
$where = “”;
$where .= SC_Utils_Ex::sfCouponExpDate(‘dtb_coupon.’,1);
$where .= ” “;
$where .= “AND “;
$where .= “dtb_coupon.del_flg = 0 “;
$where .= “AND “;
$where .= “dtb_coupon.coupon_id “;
$where .= “NOT IN “;
$where .= “( “;
$where .= “SELECT “;
$where .= “coupon_id “;
$where .= “FROM “;
$where .= “dtb_customer_coupon “;
$where .= “inner join “;
$where .= “dtb_customer “;
$where .= “on dtb_customer.customer_id = dtb_customer_coupon.customer_id “;
$where .= “WHERE “;
$where .= “dtb_customer.customer_id = ? and dtb_customer_coupon.del_flg = 0”;
$where .= “) “;
$arrval = array($customer_id);
$where_all = $where;
$arrAll = $objQuery->select($col, $from, $where_all, $arrval);
return $arrAll;
}
//クーポンの情報を取得する
function getCoupon($coupon_id){
$objQuery = new SC_Query();
$coupon = $objQuery->select(“title,discount”,”dtb_coupon”,”coupon_id = ? and del_flg = 0″,array($coupon_id));
return $coupon[0];
}
[/php]
(2)■data/class/helper/SC_Helper_Purchase.php
851行目あたり 「新規受付の場合は対応状況・・・」のコメントアウトの前に追加
[php]
// 使用したクーポンをdtb_customer_couponテーブルに登録する
// POSTされるクーポンIDはカンマ区切りの文字列なので、カンマで分割
$coupon = explode(‘,’,$arrParams[‘coupon’]);
foreach($coupon as $val){
if($val != “”){
$sqlval[‘customer_id’] =
SC_Utils_Ex::isBlank($arrValues[‘customer_id’])
? 0 : $arrValues[‘customer_id’];
$sqlval[‘coupon_id’] = $val;
$sqlval[‘order_id’] = $order_id;
$sqlval[‘create_date’] = “now()”;
$sqlval[‘update_date’] = “now()”;
$objQuery->insert(“dtb_customer_coupon”,$sqlval);
}
}
[/php]
(3)■data/class/util/SC_Utils.php
721行目あたり /* 規格分類の件数取得 */function sfGetClassCatCountメソッドの後に追加
[php]
/*
* クーポンが使用できる期間内にあるか判定
*
*/
public static function sfCouponExpDate($prefix = ‘dtb_coupon.’,$check = 0) {
//check == 0 ならnow()判定
//check == 1 ならcurrent_date判定
if($check == 0){
return ” CASE WHEN {$prefix}exp_start_date IS NOT NULL AND {$prefix}exp_end_date IS NOT NULL THEN now() BETWEEN {$prefix}exp_start_date AND {$prefix}exp_end_date ELSE 1=1 END “;
}else{
return ” CASE WHEN {$prefix}exp_start_date IS NOT NULL AND {$prefix}exp_end_date IS NOT NULL THEN current_date() BETWEEN {$prefix}exp_start_date AND {$prefix}exp_end_date ELSE 1=1 END “;
}
}
[/php]
4 お支払い方法・お届け時間等の指定画面でクーポンを利用できるようにする。
下記ファイルにクーポン関連のコードを追加する
① ■data/class/pages/shopping/LC_Page_Shopping_Payment.php
② ■data/class/pages/shopping/LC_Page_Shopping_Confirm.php
③ ■data/Smarty/templates/default/shopping/payment.tpl(PC)
④ ■data/Smarty/templates/default/shopping/confirm.tpl(PC)
⑤ ■data/Smarty/templates/mobile/shopping/payment.tpl(携帯)
⑥ ■data/Smarty/templates/mobile/shopping/confirm.tpl(携帯)
⑦ ■data/Smarty/templates/sphone/shopping/payment.tpl(スマートフォン)
⑧ ■data/Smarty/templates/sphone/shopping/confirm.tpl(スマートフォン)
5 割引後の合計金額の計算。手数料と送料を割引の対象にしない。
■data/class/SC_CartSession.php 666行目あたり
[php]
// 合計を計算
$results[‘total’] = $results[‘subtotal’];
$results[‘total’] += $results[‘deliv_fee’];
$results[‘total’] += $charge;
$results[‘total’] -= $discount;
↓(変更)
// 合計を計算
// 割引後の金額が0円以下になった場合0に修正
$results[‘total’] = $results[‘subtotal’];
$results[‘total’] -= $discount;
if($results[‘total’] < 0) $results['total'] = 0; $results['total'] += $results['deliv_fee']; $results['total'] += $charge; [/php] 6 MYページでクーポンを表示する。
下記ファイルにクーポン関連のコードを追加する
① ■data/class/pages/mypage/LC_Page_Mypage.php
② ■data/Smarty/templates/default/mypage/index.tpl(PC)
③ ■data/Smarty/templates/mobile/mypage/index.tpl(携帯)
④ ■data/Smarty/templates/sphone/mypage/index.tpl(スマートフォン)
7 受注管理で金額表示。キャンセル時にクーポンの履歴を戻す。
(1)■data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php
①下記を変更
[php]
// 合計
$arrValues[‘total’] = $subtotal – $arrValues[‘discount’] + $arrValues[‘deliv_fee’] + $arrValues[‘charge’];
↓(変更)
// 割引
$arrValues[‘total’] = $subtotal – $arrValues[‘discount’];
//割引後の金額がマイナスになった場合0に戻す
if($arrValues[‘total’] < 0) $arrValues['total'] = 0; // 合計 $arrValues['total'] += $arrValues['deliv_fee'] + $arrValues['charge']; [/php] ② 「// 受注テーブルの更新 $order_id = $objPurchase->registerOrder($order_id, $arrValues);」の次に追加
[php]
//キャンセル時には使用したクーポン履歴を論理削除
//再度キャンセル以外のステータスに戻してもクーポンは使用状態にはならないので注意
if($arrValues[‘status’]==3){
//同じorder_idのクーポン履歴を削除
$sqlVal[‘del_flg’] = 1;
$where = ‘order_id = ?’;
$objQuery->update(‘dtb_customer_coupon’,$sqlVal,$where,array($arrValues[‘order_id’]));
}
[/php]
(2)■data/class/pages/admin/order/LC_Page_Admin_Order_Status.php
217行目あたりに追加
[php]
//キャンセル時には使用したクーポン履歴を論理削除
//再度キャンセル以外のステータスに戻してもクーポンは使用状態にはならないので注意
if($statusId == 3){
//同じorder_idのクーポン履歴を削除
$sqlVal[‘del_flg’] = 1;
$where = ‘order_id = ?’;
$objQuery->update(‘dtb_customer_coupon’,$sqlVal,$where,array($orderId));
}
[/php]
8 クーポン情報をお知らせするブロックを作成する
(1)拡張ファイル等の作成
① ■html/frontparts/bloc/coupon.php
[php]
blocItems = $params[‘items’];
register_shutdown_function(array($objPage, “destroy”));
$objPage->init();
$objPage->process();
?>
[/php]
② ■data/class_extends/page_extends/frontparts/bloc/LC_Page_FrontParts_Bloc_Coupon_Ex.php
[php]
[/php]
③ ■data/class/page/frontparts/bloc/LC_Page_FrontParts_Bloc_Coupon.php
[php]
action();
$this->sendResponse();
}
/**
* Page のアクション.
*
* @return void
*/
function action() {
// データベースから取得
$objQuery = SC_Query_Ex::getSingletonInstance();
$this->arrRet = array();
//クーポン情報を取得
$arrRet = $objQuery->select(‘*’,’dtb_coupon’,’del_flg = 0 and exp_end_date >= current_date’);
//データベースから取得できたか
if(isset($arrRet)){
$this->arrRet = $arrRet;
}
}
/**
* デストラクタ.
*
* @return void
*/
function destroy() {
parent::destroy();
}
}
?>
[/php]
(2)テンプレートの作成
① PC用 ■data/Smarty/templates/default/frontparts/bloc/coupon.tpl
[php]
クーポン情報
会員の方は、お買い物の際、クーポンがご利用になれます。
MYページで利用可能なクーポンをご確認いただけます。
[/php]
② 携帯用 ■data/Smarty/templates/mobile/frontparts/bloc/coupon.tpl
[php]
クーポン情報
割引額:円
期間:~
会員の方は、お買い物の際クーポンがご利用になれます。
MYページで利用可能なクーポンをご確認いただけます。
[/php]
③ スマートフォン用 ■data/Smarty/templates/sphone/frontparts/bloc/coupon.tpl
[php]
クーポン情報
割引額:円
期間:~
会員の方は、お買い物の際クーポンがご利用になれます。
MYページで利用可能なクーポンをご確認いただけます。
[/php]
(3)CSSに追加
① PC用 ■html/user_data/packages/default/css/bloc.css
[php]
/* ===============================================
▼クーポン情報
=============================================== */
#coupon_area {
margin-bottom:20px;
}
#coupon_area h2 {
color:#E75019;
padding:4px 10px;
border-top:#F90 1px solid;
border-left:#F90 10px solid;
border-right:#ccc 1px solid;
background-color:#FEE39E;
}
#coupon_area .bloc_body {
padding:10px;
}
#coupon_area .title {
color:#FFF;
background-color:#E75019;
padding:2px 4px;
margin-bottom:5px;
}
#coupon_area .discount {
margin-bottom:5px;
}
#coupon_area .date {
margin-bottom:5px;
}
#coupon_area .comment {
background-color: #FFEBD7;
border:#ddd 1px solid;
padding:5px;
margin-bottom:5px;
}
[/php]
② スマートフォン用 ■html/user_data/packages/sphone/css/bloc.css
[php]
/*———————————————–
クーポン情報
———————————————– */
#coupon_area{
margin-bottom: 20px;
}
#coupon_area ul{
}
#coupon_area li, #coupon_area .comment {
display:block;
clear:both;
padding:10px;
line-height:1.3;
background-color:#FEFEFE;
background: -moz-linear-gradient(center top, #FEFEFE 0%,#EEEEEE 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #FEFEFE),color-stop(1, #EEEEEE));
border-top:#FFF solid 1px;
border-bottom:#CCC solid 1px;
}
#coupon_area .coupon_date{
clear:both;
font-size:12px;
letter-spacing:0.1em;
}
[/php]
(4)データベースのdtb_blocにPC用(device_type_id=10)、携帯用(device_type_id=1)、スマートフォン用(device_type_id=2)のブロックを登録する。
PC用
——————————————
device_type_id:10
bloc_id:13(環境に応じて)
bloc_name:クーポン情報
tpl_path:coupon.tpl
filename:coupon
create_date:作成日時
update_date:作成日時
php_path:frontparts/bloc/coupon.php
deletable_flg:0
——————————————
携帯用
——————————————
device_type_id:1
bloc_id:8(環境に応じて)
bloc_name:クーポン情報
tpl_path:coupon.tpl
filename:coupon
create_date:作成日時
update_date:作成日時
php_path:frontparts/bloc/coupon.php
deletable_flg:0
——————————————
スマートフォン用
——————————————
device_type_id:2
bloc_id:11(環境に応じて)
bloc_name:クーポン情報
tpl_path:coupon.tpl
filename:coupon
create_date:作成日時
update_date:作成日時
php_path:frontparts/bloc/coupon.php
deletable_flg:0
——————————————