« MTなどの圧縮ファイルをサーバー上で解凍する方法 | メイン | 【MovableType】で使えそうな「アレ」備忘録 »

【EC-Cube】ダウンロード販売 無料商品購入時に自動で「入金済み」にする方法

EC-CUBE2.11.5でダウンロードサイトを構築した際に、無料でダウンロードできる商品や全額ポイントで購入した場合などに、対応状況を「新規受け付け」から「入金済み」にする方法です。

EC-CUBEでダウンロード販売サイトを構築した場合、管理ページより「入金済み」に変更しないとダウンロードができません。有料であれば問題ないのですが、お試し版などの「無料商品」や全額ポイント支払いのような場合でも、ダウンロードができるように、自動で「入金済み」になるようにしてみました。

EC-CUBE2.11.5の場合です。

/data/class/pages/shopping/内のLC_Page_Shopping_Confirm.phpを書き換えます。

160行目あたり

// 購入完了ページ
else {
$objPurchase->completeOrder(ORDER_NEW);
$objPurchase->sendOrderMail($this->arrForm["order_id"]);
SC_Response_Ex::sendRedirect(SHOPPING_COMPLETE_URLPATH);
}

これを

// 購入完了ページ
else {
if($this->arrForm['payment_total'] > 0){
$objPurchase->completeOrder(ORDER_NEW);
}else{
$objPurchase->completeOrder(ORDER_PRE_END);
}

$objPurchase->sendOrderMail($this->arrForm["order_id"]);
SC_Response_Ex::sendRedirect(SHOPPING_COMPLETE_URLPATH);
}

このように変更します。

 

EC-CUBE2.11.4は

// 購入完了ページ
else {
if($this->tpl_total_inctax[$this->cartKey] > 0){
$objPurchase->completeOrder(ORDER_NEW);
}else{
$objPurchase->completeOrder(ORDER_PRE_END);
}

$objPurchase->sendOrderMail($this->arrForm["order_id"]);
SC_Response_Ex::sendRedirect(SHOPPING_COMPLETE_URLPATH);
}

と書き換えます。

カスタマイズしやすいEC-CUBEですが、ダウンロードショップ用にはまだちょっと未完成な点が多いですね。

工事・障害情報 (1)
パソコン (13)
フレッツ光プレミアム (3)
ホームページ作成 (7)
ウイルス・スパム対策 (6)
EC-CUBE (12)
Movable Type (9)
接続 (4)
機能 (1)
料金 (1)

About

2012年05月21日 15:12に投稿されたエントリーのページです。

ひとつ前の投稿は「MTなどの圧縮ファイルをサーバー上で解凍する方法」です。

次の投稿は「【MovableType】で使えそうな「アレ」備忘録」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

Powered by
Take-net Service